É sempre bom compartilhar pequenas funções ou comandos que ajudam no cotidiano do desenvolvedor.

Situação: Criação de um paginador de forma super simples através do ClientDataSet.

Importante! Pesquisei esta implementação pela dificuldade encontrada ao manipular uma grande quantidade de registros, utilizando o mínimo de recursos de rede e pc.

Esta implementação vai trazer os dados sob demanda e evita trazer todos os dados para realizar qualquer outro tipo de manipulação dentro do Delphi.

No ClientDataSet que seja realizar a paginação, realize a configuração:
  - Na propriedade FetchOnDemand deixe em false
  - Na propriedade PacketRecords coloque o número de registros que deseja visualizar por vez.

Configure o evento AfterScroll, implementando o seguinte código:
  - If ClientDataSet.Eof Then 
    begin 
      ClientDataSet.GetNextPacket;
    end;

Nesta instrução, virá mais N quantidade de registros definido na propriedade PacketRecords.

 

Boa implementação a todos.