Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Utilizar navegação entre páginas a partir de uma consulta manual Boa noite! Eu tenho uma consulta e consigo exibi-la na Datagrid sem problemas, porém, a paginação da consulta não obedece aos resultados (a pageNavigation possui vários itens que precisam ser setados, e com a query manual não sei como setar). Essa minha consulta manual envolve pesquisa por mês em uma data (creio que o framework ainda não possua essa questão, mesmo que possua, eu gost...
CG
Utilizar navegação entre páginas a partir de uma consulta manual  
Boa noite!

Eu tenho uma consulta e consigo exibi-la na Datagrid sem problemas, porém, a paginação da consulta não obedece aos resultados (a pageNavigation possui vários itens que precisam ser setados, e com a query manual não sei como setar).
Essa minha consulta manual envolve pesquisa por mês em uma data (creio que o framework ainda não possua essa questão, mesmo que possua, eu gostaria de saber como funciona, nunca se sabe quando terei que usar esse recurso futuramente), ela se encontra abaixo:

  1. <?php 
  2.  $conn TTransaction::get();            
  3.  $result $conn->query('SELECT * from clientes order by id;')
  4. ?>


Eu já utilizo várias views para várias questões, mas neste caso como proceder?

Agradeço a atenção!

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (3)


NR

A pageNavigation é tranquila de configurar:
  1. <?php
  2. $this->pageNavigation->setCount($count); // total de registros, vai ter que executar um count no banco de dados
  3. $this->pageNavigation->setProperties($param); // pode passar $param diretamente  = onReload($param)
  4. $this->pageNavigation->setLimit($limit); // número máximo de itens por página
  5. ?>

O detalhe é que você precisa paginar o sql, senão sempre vai retornar as mesmas informações. Adicione limit e offset também no sql. Estas informações estão na variável $param.
CG

Obrigado pela resposta Nataniel!

Eu passei analisando as configurações da paginação para compreender ela, e creio que entendi como funciona.
Já tinha entendido que ele passava por parâmetros alguns itens mas não tinha associado a minha consulta, mas agora já consegui resolver e está funcionando direitinho!

Muito obrigado mais uma vez!

OBS: minha solução foi a seguinte: o limite e o offset da consulta são enviados por parâmetro em cada um dos botões da paginação, o que eu fiz foi primeiramente foi contar quantos itens da minha consulta existiam e setar na navegação, depois fiz a consulta com o limit = 10. Se o total de registros for 20 por exemplo, a paginação vai habilitar o número '1' e o número '2' para pesquisa. Quando clicar no número 2, ele irá passar por parâmetro o limite e o offset, então peguei esses dois parâmetros e fiz uma nova consulta, que exibiu certinho o restante que faltava. Tive que fazer várias verificações já que tinha campos de busca nessa datagrid, mas fiz os ajustes e está tudo funcionando!

A disposição!
LG

Quanto mais eu utilizo o framework, mais estou vendo que provavelmente não vou precisar de sql manual. Até agora só utilizei em uma parte do sistema, em uma consulta BEM cabulosa, e ainda assim, foi bem no começo, então quando eu voltar la, pode ser que eu a substitua.