Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: 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!