Sie sind auf Seite 1von 11

Crystal Reports - Gerando seus relatrios.

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

Criando um novo relatrio.


Vamos gerar um relatrio baseado em uma de nome agenda que se encontra no banco de dados de nome Controle . Nosso relatrio dever obedecer os seguintes parmetros: 1- Campos a serem impressos : sobrenome , endereo e a data de nascimento. 2- O relatrio dever ser ordenado pelo campo sobrenome. 3- Deveremos permitir inicialmente a visualizao do relatrio para posterior impresso. 4- O nome do relatrio ser agenda.rpt. Selecionando a opo New do menu File teremos a tela da figura 1.0 abaixo:

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.

Agrupando e ordenando registros.


Para agrupar registros , ordenando-os por uma determinada coluna selecione a opo Group Section do menu Insert. Agrupando pelo campo sobrenome em ordem ascendente veremos na tela a figura 4.0:

figura 4.0

Inserindo ttulos e legendas.


Vamos inserir um ttulo em nosso relatrio e uma legenda para o campo sobrenome, para isso selecione a opo Text Field... do menu Insert. Na caixa de dilogo Enter Text digite o ttulo: Agenda Pessoal e clique no boto Accept. Ao lado do ponteiro do mouse acompanha um retngulo que voc dever posicionar no local desejado, ou seja, na seo Title. Para criar a legenda Nome para o campo sobrenome no cabealho de grupo, selecione Text Field... novamente e digite Nome, clicando em Accept e posicionando a legenda mesmo local da legenda sobrenome.

Formatao de campos, campos especiais e desenho de linhas.


Para formatar campos basta selecionar o campo desejado e clicar na opo Format do menu ou clicando com o boto direito do mouse sobre o campo teremos um menu pop-up como na figura 5.0 abaixo:

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

Trabalhando com frmulas.


Vamos montar uma frmula para imprimir o nmero da pgina no rodap do relatrio. Para isso usamos o editor de frmulas do Crystal Reports que pode ser disparado atravs do cone (x2) ou da opo Formula Field... do menu Insert. Aps isso voc deve informar o nome da frmula no campo Formula Name para o nosso caso informe "pagina" e clique no boto OK. O Editor mostrado na figura 7.0 :

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 ({}).

Determinando o estilo e inserindo uma figura em seu relatrio.


Voc pode utilizar a guia Style para escolher a forma de apresentao do relatrio.

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

Imprimindo o relatrio a partir de sua aplicao no Visual Basic.


Agora que nosso relatrio esta pronto vamos associ-lo a nossa aplicao de forma a poder imprimi-lo a partir do Visual Basic. Para isso devemos ativar o componente do Crystal Reports para a nossa aplicao na opo Components.. do menu Project e a seguir selecionar o controle Crystal Reports e copi-lo para nosso formulrio. A seguir vamos definir algumas propriedades para o controle CrystalReport1 1-CopiesToPrinter 2-Destination informe zero (0). 3-ReportFileName 4-WindowTitle 5-SortFields - Determina o nmero de cpias do relatrio.Informe um (1) - Direciona a impresso: 0-na tela 1-na impressora 2-em arquivo. - Indica a localizao do relatrio (arquivo .RPT) a ser impresso. - Ttulo a janela Preview , informe Agenda . - Configura a ordem de classificao.(Ver abaixo.)

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

Das könnte Ihnen auch gefallen