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 primeira 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. Entretanto, desejamos acrescentar antes 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".
Como não conseguimos alterar a estrutura de um arquivo sem apagar os registros, iremos copiar a estrutura de fulltab para uma nova tabela, adicionar os novos campos e finalmente copiar os registros da tabela antiga para a nova.
. 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 calcular a média e substituir os valores deste campo.
. 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 é calcular 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 finalizada a tabela com os novos campos, podemos 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:
No caso dos cabeçalhos, o sinal de menor "<" antes do texto do título força o alinhamento à esquerda, enquanto que o sinal de maior ">" força o alinhamento à direita. Sem nada, o alinhamento padrão é centralizado.
O próximo passo do relatório é indicar quais serão os campos utilizados, bem como um cabeçalho (título) 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 .
<< Anterior | dBASE II | Próxima >> |