Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal,
Tenho uma aplicação que extrai dados a partir de uma API (JSON Rest). Cada chamada permite um máximo de 1.500 registros compreendidos em um intervalo de tempo discriminado nos parâmetros.
Se, por exemplo, coloco nos parâmetros o intervalo 01/02/2016 00:00:00|05/02/2016 23:59:00 (DataInicial|DataFinal), ele me traz os 1.500 primeiros registros, com a última data sendo 02/02/2016 09:35:24. Gostaria de saber se existe uma forma do sistema identificar sempre essa última data e horário, fazendo com que ela conste como data inicial nos parâmetros da próxima chamada e assim por diante. E tudo isso em um único carregamento, de forma que o processo termine quando não houver mais resultados a serem extraídos.
Abaixo, a versão "desenhada" do que pretendo obter:
Bem é isso.
Quando atinge 1500 o que acontece com o script que te passei?
O script, naquele trecho, não aceita o Where. Simplesmente dá erro. Não é um simples LOAD. É uma conexão REST com uma determinada API.
Consegue reproduzir a lógica do Where <= 1500 em alguma parte? Para o While trabalhar.
Ou como termina o fluxo sem o Where?
O API apenas para como tivesse terminado de carregar os dados? Se sim, o While continuará com a última data carregado
Editei o script acima;
Corrigi um erro no Let vDataInicial, estava repetindo.
Amigo, acho que retirando o Where RowNo() <=1500, já deve funcionar; imagino o REST simplesmente terminando a carga como tivesse pegado todas aos dados quando chega em 1500, então quando o While seguir para a próxima fase, continuará a partir da nova data.
Muito obrigado pelo empenho nesse auxílio, Mario.
Tentarei por aqui.
Tendo o resultado, aviso você.
Amigo, conseguiu? abraço.
Novidades amigo?
Olá, amigo.
Descontinuamos o contrato com a plataforma que possui essa a API em questão aqui.
Obrigado pela atenção!