Bom dia a todos,
Quero saber como fazer uma contagem de dados para imprimir separadamente, exemplo:
contador = 1
enquanto 1 inicio
pegue os dados de uma tabela
contador = contador +1
fim
se contador < 50
para 1, contador, 1 inicio
imprima 50 dados da tabela
fim
se contador > 50 e <100
para 50, contador, 1 inicio
imprima mais 50 dados da tabela
fim
O intuito é mostrar apenas 50 itens por página em uma tabela html
e caso tenha mais de 50 mostrar um botão pra próxima página e assim por diante.
Bom dia, não sei se entendi bem sua pergunta.
Veja esse código:
funcao obt_itens_por_pagina(tab,num_itens)
local contador = 1;
local pagina = {}
local num_pagina = 1;
pagina[num_pagina]={};//cada indice dessa tabela terá mais N itens.
para i, v em ipares(tab) inicio
se contador > num_itens entao
num_pagina = num_pagina + 1;
pagina[num_pagina] = {};
contador = 1;
fim
pagina[num_pagina][contador] = v;
contador = contador + 1;
fim
retorne pagina;
fim
//================== teste:
t = {}; //criando tabela vazia
para i=1,500 inicio //enchendo a tabela com 500 itens
t[i] = 'item_' .. i;
fim
local pags = obt_itens_por_pagina(t, 50);//testando a função com 50 itens por pagina
//imprimindo os resultados de cada serie de 50 itens
para i=1, #pags inicio
para j = 1 , #pags[i] inicio
imprima(pags[i][j]);
fim
imprima('Página: ' .. i);
poe'Enter para continuar mais 50 resultados';
leia();
fim
Isso mesmo!
Valeu!!!