Beruflich Dokumente
Kultur Dokumente
O Crystal Reports o gerador de relatrios do Visual Basic e com ele desenhamos os relatrios de nossos aplicativos. Embora possua um objeto chamado Printer para imprimir dados, sua utilizao alm de complexa trabalhosa pois tudo deve ser codificado. Ao Contrrio, o Crystal Reports utiliza uma interface grfica a partir de onde podemos construir qualquer relatrio que necessitamos. Podemos iniciar o Crystal Reports atravs da opo Report Designer... do menu Add-Ins ou pelo cone correspondente na pasta de trabalho do Visual Basic no Windows. Junto com o Visual Basic 5.0 distribuda a verso 4.6 do Crystal Reports.
ndice
Criando um novo relatrio.............................................................................................2 Agrupando e ordenando registros................................................................................5 Inserindo ttulos e Legendas.........................................................................................6 Formatao de campos, campos especiais e desenho de linhas e caixas. ..............7 Trabalhando com frmulas............................................................................................8 Determinando o estilo e inserindo uma figura em seu relatrio.................................10 Imprimindo o relatrio a partir de sua aplicao no Visual Basic..............................11
figura 1.0 Aps selecionar o boto Standard , devemos selecionar a base de dados na opo Data File , para o nosso caso Controle.mdb. A seguir temos um lista de todas as tabelas e consultas gravadas na base de dados - exclua todos os elementos da lista , exceto a tabela Agenda e clique no boto Next para prosseguir. Como nosso relatrio esta baseado somente na tabela Agenda, o prximo passo Links, pode ser dispensado, portanto clique novamente no boto Next. Vamos selecionar os campos da tabela que sero impressos no relatrio - selecione cada campo e clique no boto Add. Ao final devemos ter algo parecido com a figura 2.0 abaixo:
figura 2.0 A esta altura o relatrio esta praticamente terminado , para visualiz-lo clique no boto Preview Report. mostrada a tela da figura 3.0 onde aps clicarmos na aba Design podemos notar cinco sees:
figura 3.0 1-Title - para o ttulo da aplicao. 2-Page Header - contm os elementos do cabealho da pgina.
3
3-Details - contm os campos de dados a serem impressos. 4-Page Footer - refere-se ao rodap da pgina. 5-Summary - impresso de resumos.
figura 4.0
figura 5.0 Pelo menu podemos acessar as opes pertinentes a um determinado campo do relatrio. Para o caso selecionamos o ttulo Agenda Pessoal , vamos alterara fonte (Change Font...) para 14 e o estilo para negrito. Para alterar mais de um campo selecione-os mantendo a tecla Shift pressionada. Aproveitando vamos inserir um campo referente a data no canto superior esquerdo. Selecione a opo Special Field... do menu Insert escolha a opo Print Date e posicione no local indicado. Clique com o boto direito do mouse sobre o campo nascimento e selecione a opo Change Format... escolhendo o formato DMY (dia-ms-ano) e clique OK. Finalmente vamos desenhar um retngulo ao redor do ttulo. Selecione a opo Box do Menu Insert , note que o ponteiro do mouse mudou para um lpis: Desenhe o retngulo ao redor do ttulo mantendo o boto esquerdo do mouse pressionado. Se quiser colorir o retngulo clique com o boto direito do mouse sobre o mesmo e preenchao com uma cor de sua escolha. Atravs do menu Insert podemos desenhar linhas, retngulos, quadrados , alm de inserir figuras e at grficos em nossos relatrios. Podemos tambm usar os cones correspondentes da barra de ferramentas como na figura 6.0 abaixo:
Figura 6
figura 7.0 Agora basta digitar a frmula na caixa Formula Text, vamos l, digite: "Pgina: " + e, a seguir selecione a funo TrimLeft na lista Functions;, ainda na lista Functions, selecione a funo ToText e finalmente selecione o item PageNumber no final da lista Functions. Ao final deveremos ter o seguinte na caixa Formula Text: "Pgina: " + TrimLeft (ToText (PageNumber, 0 ) ) A funo PageNumber retorna um valor nmerico do nmero da pgina por isso usamos a funo ToText para convert-la em uma string , e a seguir usamos a funo TrimLeft para removermos os espaos a direita. Vamos verificar a frmula clicando no boto Check , se tudo estiver correto o crystal informa com a mensagem No errors found indicando que a sintaxe est correta. Agora basta clicar no boto Accept e posicionar a frmula no canto esquerdo da seo Page Footer.
8
Encerrado o relatrio basta salv-lo atravs da opo Save do menu File e informar o nome para o relatrio.(Nosso caso informa agenda). Devemos ressaltar que a linguagem de frmulas do Crystal Reports diferente do Visual Basic , assim por exemplo , se usarmos a propriedade SelectionFormula do Crystal que permite definir condies para a impresso em nosso relatrio de forma a imprimir somente os nomes iniciados pela letra "J" teramos algo como: CrystalReport1.SelectionFormula = "{AGENDA.NOME} >= " & "''" & "J" & "''" Note que a referncia a campos da tabela feita entre chaves ({}).
figura 8.0 Para isto selecione um dos estilos na caixa de listagem style e veja direita o jeito do relatrio. Se quiser pode inserir uma figura no relatrio clicando no boto Add Picture... com o cone. A caixa de texto Title lhe permite inserir o ttulo para o relatrio.
10
Finalmente crie um boto de comando no formulrio que ir disparar a impresso do relatrio com o nome de Imprime e a seguir associe o seguinte cdigo ao boto de comando: Private Sub imprime_Click() CrystalReport1.Destination = 0 CrystalReport1.ReportFileName = "c:\Controle\agenda.rpt" CrystalReport1.SortFields(0) = "+{Agenda.Sobrenome}" CrystalReport1.Action = 1 End Sub A propriedade Action definida para 1 dispara a impresso do relatrio. Outra forma de ordenar os registros via cdigo utilizar a propriedade sortfields. Na propriedade Sortfields , "+{Agenda.Sobrenome}" , indica que a ordem de impresso ser por campo sobrenome (Agenda.sobrenome) e em ordem ascendente (+).
11