Curso de dBASE II
Relatórios
Você está em: MarMSX >> Cursos >> dBASE II
O dBASE II é capaz de emitir relatórios, através do comando "report". A sintaxe desse comando é:
report [form <tabela>] [escopo] [for <condição>] [to print]
Quando executado pela primerira vez, o comando "report" irá perguntar ao usuário informações sobre o layout do relatório. Em seguida, ele grava as configurações em um arquivo no formato ".frm".
Vamos utilizar a tabela gerada no capítulo anterior, com os nomes e notas dos alunos. Como exercício, acrescente dois novos campos a esta tabela: um chamado "MEDIA", contendo as médias dos alunos nos quatro bimestres e outro chamado "SITUACAO", classificando a situação em "Aprovado" ou "Reprovado".
. use fulltab
. copy structure to fulltab2
. use fulltab2
. modify structure
Campo 11 :MEDIA N 004 001 :
Campo 12 :SITUACAO C 009 :
(ctrl + w)
. append from fulltab
Obviamente, o campo de média estará com os valores zerados. Vamos preenchê-los:
. replace all media with (bim1+bim2+bim3+bim4)/4
Obs: o campo "MEDIA" é um atributo do tipo derivado, ou seja, seu valor é obtido a partir do cálculo de outros valores da tabela.
O próximo passo é preencher o campo da situação:
. replace all situacao with "Aprovado" for media>=7.0
. replace all situacao with "Reprovado" for media<7.0
Uma vez ajustada a tabela, vamos gerar o relatório:
. report form fulltab2
Entre opções, M=margem esq. , L=linhas/pag. , W=tamanho pag.
Cabeçalho (Y/N) ? Y
Entre com o cabeçalho da página :Relação de Notas
Relatório com espaço duplo (Y/N) ?N
Totais requeridos(Y/N) ?N
Ao teclar return para as opções de margem e linhas, prevalecerão os padrões de fábrica:
- Margem esquerda: 8 colunas
- Linhas por página: 57.
- Largura da página: 80 colunas.
No caso dos cabeçalhos, o sinal de menor "<" antes do texto força o alinhamento à esquerda, enquanto que o sinal de maior ">" força o alinhamento à direita. Sem nada, o alinhamento é centralizado.
O próximo passo do relatório é indicar quais serão os campos utilizados, bem como um cabeçalho para cada um deles. Ex:
Coluna, Tamanho, Conteúdo
001 4,matricula
Entre com o cabeçalho :Mat.
002 30,nome
Entre com o cabeçalho :Aluno
003 5,media
Entre com o cabeçalho :Media
004 9,situacao
Entre com o cabeçalho :Situacao
005
Resultado na tela:
Página No 00001
13/10/17
Relação de Notas
Mat. Aluno Media Situacao
8361 Pablo Goncalves 7.7 Aprovado
4321 Ana Maria Silva 6.6 Reprovado
5543 Waldir Moraes 6.9 Reprovado
8437 Alvaro Schwarz 9.0 Aprovado
7193 Beatriz Saraiva 9.9 Aprovado
3398 Mauro Pontes 7.8 Aprovado
9001 Pedro Tavares 5.8 Reprovado
6567 Suely Albuquerque 7.8 Aprovado
6201 Pedro Borges 7.2 Aprovado
7766 Paula Tavares 7.6 Aprovado
.