Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Carregamento via JSON - Modelo Dinâmico de Paginação

Olá, pessoal

Eu tenho feito carregamentos a partir de conexões JSON. Todas elas possuem parâmetros que limitam o número de linhas que são carregadas a cada chamada. Paralelo a isso, é possível trabalhar também com determinação de página nos parâmetros. Ou seja, se o limite por carregamento for de 100 linhas e eu quiser 350 resultados, precisarei carregar 4 páginas na sequência.

Até aí tudo bem. Mas eu nunca sei o volume de resultados com o qual estarei lidando a cada novo carregamento. Em um pode ser 200 (2 páginas) e em outro 1230 (13 páginas), por exemplo. Eu gostaria de saber como eu poderia deixar que o script determinasse automaticamente o número de páginas necessárias a cada carregamento. Ou seja, que parasse com o processo após carregar o último resultado da última página, evitando carregamentos de páginas "em branco".

Atualmente, deixo como padrão o carregamento de 30 páginas. Mas é um número aleatório, para garantir que eu consiga obter todos os dados. Nesse sentido, meu script atual segue o modelo que criei para essa minha dúvida:

For vPagina= 1 to 30

LOAD

Campo A,

Campo B,

Campo C

FROM

FROM

[Endereço JSON&Posts=100&$(vPagina)];next;

Alguém poderia me sugerir algo mais eficiente, com base no que eu expliquei acima?

Agradeço desde já

Labels (1)
1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

Pensei algo do tipo, sempre recarregar até que a ultima carga não traga nenhum registro

Faça suas adaptações

SET ultimacarga=0;

SET cargaatual=1;

SET vPagina=0;

do While ultimacarga <> cargaatual

  LET ultimacarga = cargaatual;

  LET vPagina = vPagina + 1;

  tabela:

  LOAD

  [Campo A],

  [Campo B],

  [Campo C]

  FROM [Endereço JSON&Posts=100&$(vPagina)];

  LET cargaatual = NoOfRows('tabela');

loop

View solution in original post

2 Replies
Clever_Anjos
Employee
Employee

Pensei algo do tipo, sempre recarregar até que a ultima carga não traga nenhum registro

Faça suas adaptações

SET ultimacarga=0;

SET cargaatual=1;

SET vPagina=0;

do While ultimacarga <> cargaatual

  LET ultimacarga = cargaatual;

  LET vPagina = vPagina + 1;

  tabela:

  LOAD

  [Campo A],

  [Campo B],

  [Campo C]

  FROM [Endereço JSON&Posts=100&$(vPagina)];

  LET cargaatual = NoOfRows('tabela');

loop

Not applicable
Author

Olá, Clever

Adaptei e deu certo aqui.

Obrigado mais uma vez!

Abs