Pessoal alguma dica de como fazer uma consulta executar a paginação automaticamente de tempo em tempo?
Espero que seja essa a solução?
Roberto acho que ele quer uma mudança de pagina a cada tempo.
@InfinitusWeb @robertobru é isso mesmo mudança a cada tempo, o refresh já estamos atualizando nessa página também. Tem alguma dica como mudar de tempo em tempo?
acho eu que com um macro sc_select_where(add) + uma global vc conseguiria.
mas só testando.
Estou simulando um exemplo aqui
De preferência de paginação total na grid.
evento onapplicationinit:
if (!isset([pagina]) || empty([pagina]))
{
[pagina] = 0;
}
;
onscriptinit:
//recarrega app CurvaAbc_Clientes a cada 5 segundos
echo <<<HTML
<script>
setTimeout(function(){ window.open("../CurvaAbc_Clientes/",'_self') }, 5000);
</script>
HTML;
//pega total de registros para calcular quantas páginas seriam no total
//calcula offset a cada recarga, chegando no limite de paginas reinicia a pagina em 1
//se tiver order by no sql principal adicionar o mesmo order by aqui também
// 10 é o total de registros por página, pode ser usado em uma variável.
sc_lookup(ds,"select count(*) from view_abc_clientes_forum where valor_nota > 0");
[pagina] = [pagina] >= round($ds[0][0] / 10)? 1 : [pagina] + 1;
$offset = [pagina] * 10 + 1;
echo 'pag atual = ',[pagina],' reg inicial = ', $offset , ' total de páginas = ',round($ds[0][0] / 10);
//pega o id dos 10 (10 é o numero de registros por página) registros da pagina corrente
sc_lookup(ds,"select razao from view_abc_clientes_forum where valor_nota > 0 limit $offset, 10");
$array = [];
foreach ($ds as $value) {
$array[] = $value[0];
}
$recs = "'".implode("','",$array)."'";
sc_select_where(add) = " where razao in ($recs)";
//ou se eu sql ja tem uma clásula where use and
//sc_select_where(add) = " and razao in ($recs)";
Nota: Configurar globais como saída.
Fiz ajustes.
Ideal é rodar com paginação total.