Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Carregamentos tendo como referência a data mais recente do carregamento anterior

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:

Screen Shot 02-07-17 at 09.17 AM.JPG

Bem é isso.

Labels (1)
20 Replies
mario_sergio_ti
Partner - Specialist
Partner - Specialist

Quando atinge 1500 o que acontece com o script que te passei?

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
Not applicable
Author

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.

mario_sergio_ti
Partner - Specialist
Partner - Specialist

Consegue reproduzir a lógica do Where <= 1500 em alguma parte? Para o While trabalhar.

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
mario_sergio_ti
Partner - Specialist
Partner - Specialist

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

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
mario_sergio_ti
Partner - Specialist
Partner - Specialist

Editei o script acima;

Corrigi um erro no Let vDataInicial, estava repetindo.

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
mario_sergio_ti
Partner - Specialist
Partner - Specialist

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.

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
Not applicable
Author

Muito obrigado pelo empenho nesse auxílio, Mario.

Tentarei por aqui.

Tendo o resultado, aviso você.

mario_sergio_ti
Partner - Specialist
Partner - Specialist

Amigo, conseguiu? abraço.

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
mario_sergio_ti
Partner - Specialist
Partner - Specialist

Novidades amigo?

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
Not applicable
Author

Olá, amigo.

Descontinuamos o contrato com a plataforma que possui essa a API em questão aqui.

Obrigado pela atenção!