PARTE III - Relatórios 
Comando: 
REPORT DISTINCT / UNIQUE
[atributo(s)]
REPORTTOP
PAGETOP
TOP
DETAIL
NONE
BOTTOM
PAGEBOTTOM
REPORTBOTTOM
FROM [tabelas]
[WHERE clausula-where]
[GROUP BY clausula-grupo]
[ORDER BY clausula-order by]; 
Como exemplo converteremos um simples Select em um Report, temos: 
SELECT EMPNOME
FROM EMP
WHERE DEPNUME = 1000;
REPORT
DETAIL EMPNOME
WHERE DEPNUME = 1000; 
Podemos direcionar a saída de um relatório tanto para um arquivo como para uma impressora. 
Para um arquivo: REPORT ON “RELAT.DAT” ... 
Para uma impressora:
REPORT ON LP:” ... 
Agora incrementando um report temos: 
REPORT
REPORTTOP COL 10, “*** RELATORIO DE FUNCIONARIOS *** “, TODAY %Q”DD/MM/YY”, SKIP, 
COL 10, “=================================“, SKIP 2
DETAIL COL 10, NOME %C22, SALARIO %FS, ADMISSAO %Q”DD/MM/YY” EPORTBOTTOM COL 10, “=================================“, SKIP, COL 20, “TOTAL:”, TOTAL(SALARIO)
FROM EMP
ORDER BY NOME; 
Onde: 
REPORTTOP 
- O que sera impresso no topo do relatório. 
PAGETOP 
- Impresso em cada topo de pagina. 
TOP
- Impresso em cada Topo do Sort-Grupo do relatório. 
DETAIL 
- O que sera impresso em cada linha. 
NONE 
- Se não tiver resultado o select, não sera impresso o relatório. 
BOTTOM 
- Impresso em cada Bottom do Sort-Grupo do relatório 
PAGEBOTTOM 
- O que sera impresso no rodapé de cada pagina. 
REPORTBOTTOM 
- O que sera impresso no rodape do relatório. 
Formatos: 
%C - caracter
%
D - data 
y - ano, 
n - mes numérico, 
a - mes alfanumérico, 
d - dia, 
j - dia e ano juliano 
Exemplo: 
%D”dd/mm/yy” %
I - inteiro 
%FSZ onde: 
%F - ponto flutuante 
S - separador de 3 digitos e decimal point 
Z - zeros serão suprimidos 
%Q - data
%
J - Hora 
h - hora, 
m - minutos, 
s - segundos 
%T - hora 
E temos as funções: TOTAL, AVERAGE, MAXIMUM, MINIMUM
 
Nenhum comentário:
Postar um comentário