Histórico da Página
...
Esta configuração é feita através dos parâmetros globais do sistema.
Salva a configuração na estrutura do relatório onde deseja-se incluir o respectivo controle de página deve ser incluído um componente “Página” (). Este componente irá retornar o número atual da página gerada pelo relatório.
Inclua em seguida uma consulta SQL que irá retornar o total de páginas do relatório. A consulta SQL deverá ter o seguinte conteúdo;
SELECT TOP 1 PAGINAS
FROM RLOGEXEC
WHERE IDRELAT = ( SELECT ID
FROM RRELAT
WHERE CODRELATORIO = :ESPELHO#4_S
AND CODAPLIC = 'T' )
AND INICIO < ( SELECT Max ( INICIO )
FROM RLOGEXEC
WHERE IDRELAT = ( SELECT ID
FROM RRELAT
WHERE CODRELATORIO = :ESPELHO#4_S
AND CODAPLIC = 'T' )
AND CODCOLIGADA = :CODCOLIGADA_N )
AND CODCOLIGADA = :CODCOLIGADA_N
ORDER BY INICIO DESC
Obs.: Onde consta a condição “CODAPLIC = 'T'” deve-se alterar conforme o aplicativo que usará a consulta SQL. Neste exemplo estamos utilizando o RM Nucleus. |
O agrupamento de ambos os compoentes devem ficar da seguinte forma;
Lembrando que mesmo após ter feito todo este aparato o sistema não irá realizar a contagem das páginas corretamente quando impresso o relatório pela primeira ou única vez. Deve-se gerar o relatório uma primeira vez para que esta geração seja computada no banco de dados com informações deste relatório, inclusive com o número de páginas gerados. Somente após a segunda geração do relatório a contagem de páginas será realizada corretamente.
Friso que esta é uma saída paliativa para o cliente, pois dependendo do tempo gasto para gerar o primeiro relatório não vale a pena aguardar a primeira geração para iniciar a segunda somente para obter a contagem de páginas com total e página atual.
OBS: Este recurso já encontra-se disponibilizado em .NET