apostila crystal

58
INTRODUÇÃO.............................................. 4 CONSIDERAÇÕES ESPECIAIS..................................... 5 CRIAÇÃO DE UM RELATÓRIO SIMPLES E LINK COM O IFS APPLICATIONS.......6 O QUE É O SEAGATE CRYSTAL REPORTS......................12 CRIAÇÃO DE QUALQUER TIPO DE RELATÓRIO.......................12 A. INICIANDO UM RELATÓRIO..............................13 VISÃO GERAL............................................ 13 SEÇÕES................................................ 15 B. POSICIONANDO OBJETOS NO SEU RELATÓRIO...............16 VISÃO GERAL............................................ 16 LINHAS DE GRADE.........................................16 C. FORMATANDO O OBJETO.................................17 FORMATANDO UM CAMPO NUMÉRICO..............................17 D. USANDO O SELECT EXPERT..............................18 VISÃO GERAL............................................ 18 ATUALIZANDO OS DADOS DO RELATÓRIO..........................19 E. ORDENANDO, AGRUPANDO E SUMARIZANDO REGISTROS........20 VISÃO GERAL............................................ 20 ORDENANDO REGISTROS......................................20 AGRUPANDO REGISTROS......................................21 Opções de Ordenação.................................................................................... 22 SUMARIZANDO REGISTROS.................................... 23 F. TOTAIS GERAIS....................................... 24 VISÃO GERAL............................................ 24 Inserindo um Total Geral............................................................................... 24 G. RELACIONAMENTO ENTRE TABELAS........................26 VISÃO GERAL............................................ 26 USANDO O VISUAL LINKING EXPERT............................26 ADICIONANDO TABELAS NO RELATÓRIO...........................27 REMOVENDO TABELAS NO RELATÓRIO............................28 H. NOÇÕES BÁSICAS DE FÓRMULAS..........................29 VISÃO GERAL............................................ 29 ABRINDO O EDITOR DE FÓRMULAS..............................29 - 1 -

Upload: jallesrosa

Post on 24-Jun-2015

977 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Apostila Crystal

INTRODUÇÃO............................................................................................................4

CONSIDERAÇÕES ESPECIAIS...........................................................................................5CRIAÇÃO DE UM RELATÓRIO SIMPLES E LINK COM O IFS APPLICATIONS.......................6

O QUE É O SEAGATE CRYSTAL REPORTS.....................................................12

CRIAÇÃO DE QUALQUER TIPO DE RELATÓRIO...........................................................12

A. INICIANDO UM RELATÓRIO..........................................................................13

VISÃO GERAL...........................................................................................................13SEÇÕES.....................................................................................................................15

B. POSICIONANDO OBJETOS NO SEU RELATÓRIO.....................................16

VISÃO GERAL...........................................................................................................16LINHAS DE GRADE....................................................................................................16

C. FORMATANDO O OBJETO..............................................................................17

FORMATANDO UM CAMPO NUMÉRICO.....................................................................17

D. USANDO O SELECT EXPERT..........................................................................18

VISÃO GERAL...........................................................................................................18ATUALIZANDO OS DADOS DO RELATÓRIO...............................................................19

E. ORDENANDO, AGRUPANDO E SUMARIZANDO REGISTROS...............20

VISÃO GERAL...........................................................................................................20ORDENANDO REGISTROS..........................................................................................20AGRUPANDO REGISTROS..........................................................................................21

Opções de Ordenação..........................................................................................22SUMARIZANDO REGISTROS.......................................................................................23

F. TOTAIS GERAIS..................................................................................................24

VISÃO GERAL...........................................................................................................24Inserindo um Total Geral.....................................................................................24

G. RELACIONAMENTO ENTRE TABELAS.......................................................26

VISÃO GERAL...........................................................................................................26USANDO O VISUAL LINKING EXPERT.......................................................................26ADICIONANDO TABELAS NO RELATÓRIO.................................................................27REMOVENDO TABELAS NO RELATÓRIO....................................................................28

H. NOÇÕES BÁSICAS DE FÓRMULAS...............................................................29

VISÃO GERAL...........................................................................................................29ABRINDO O EDITOR DE FÓRMULAS..........................................................................29O EDITOR DE FÓRMULAS..........................................................................................30

Caixa de Campos..............................................................................................30Caixa de Funções.............................................................................................31Caixa de Operadores........................................................................................31

CÁLCULOS BÁSICOS.................................................................................................32

I.FORMATAÇÃO CONDICIONAL.......................................................................34

- 1 -

Page 2: Apostila Crystal

VISÃO GERAL...........................................................................................................34Propriedades Condicionais de Atributos.............................................................37

J. GRÁFICOS.............................................................................................................38

VISÃO GERAL...........................................................................................................38Criando um Gráfico Simples................................................................................38

L. CAMPOS PARÂMETRO.....................................................................................39

VISÃO GERAL...........................................................................................................39Usando Campos Parâmetros em Relatórios........................................................41

M. SUBRELATÓRIOS..............................................................................................41

VISÃO GERAL...........................................................................................................41Como funciona o Relacionamento de Subrelatório.............................................42

N. OBJETOS CROSS-TAB.......................................................................................43

VISÃO GERAL...........................................................................................................43Criando um Cross-Tab.........................................................................................43

- 2 -

Page 3: Apostila Crystal

Introdução

Para que seja possível o desenvolvimento de relatórios sofisticados de

maneira fácil, podemos usar a ferramenta Crystal Reports que ainda

permitem a facilidade de ser integrado ao IFS Applications, através de

menus de Quick Report ou inseridos no menu.

Os usuários não precisam fazer digitar as informações de logon no

banco em relatórios somente utilizam as tabelas do “banco

utilizado pelo IFS Applications”

E possível desenvolver relatórios que trabalham em bancos

diferentes sem ter que fazer nenhum tipo de alteração

Torna-se possível usar a funcionalidade das queries existentes no

IFS, inclusive com a possibilidade de salvar entradas (parâmetro de

relatório).

Os relatórios em Crystal podem ser executados e visualizados através

de uma aplicação client bem como utilizando a Web. Além disso ele

também pode ser impressos ou exportados para diversos formatos.

Os arquivos de runtime são necessários para a visualização dos

relatórios. Estes arquivos estão incluídos no Foundation1 e devem ser

instalados a partir do client. Para que seja possível o desenvolvimento de

relatórios uma licença deve ser adquirida.

Considerações Especiais

- 3 -

Page 4: Apostila Crystal

Para que possamos conseguir maximizar a utilização do Crystal

juntamente com o Foundation 1 é necessário que os seguintes itens sejam

seguidos:

1. Sempre use o tipo de servidor Oracle Server para o banco

utilizado pelo IFS Applications

O tipo de servidor "Oracle" deve ser utilizado para todas os relatórios que

estão conectados ao banco utilizado pela aplicação.

2. Adicione \ ou \\ ao final do alias das tabelas do relatório.

O alias de um relatório que está conectado a uma view cujo owner é

o APPOWNER deve utilizar uma barra invertida no final do alias desta view.

O alias de um relatório que está conectado a uma view cujo owner é o

IALOWNER deve utilizar uma barra invertida no final do alias desta view.

Esta convenção utilizada para a nomenclatura é importante pois são

utilizadas pelo Foundation 1 para identificar quais as tabelas do banco

que podem ter logon automático.

Exemplo de “alias names”: "Fnd_User\", "Sales_Statistics\\"

Nota! Devido a mudanças da versão 7 do para a versão 8 do Crystal

Reports o caracter utilizado no alias foi mudado. O alias utilizado nesta

versão do Crystal era o '*' ou '**' que ainda é suportado pelo Foundation

1 em versões anteriores a 2.2.3.b, contudo não é recomendado.

4. Use somente os tipos de dados String, Number, Date, Currency

e Boolean para criar parâmetros nos relatórios.

Somente os tipos de dados String, Number, Date, Currency e Boolean são

suportados pelas Queries do Foundations 1 e portanto devem ser os

unicos a serem usados para a criação de parâmetros de seleção ou filtro - 4 -

Page 5: Apostila Crystal

nos relatórios. Qualquer outro tipo de dado pode ser utilizado no relatório (

desde que não seja usado como parâmetro )

Criação de um relatório simples e link com o IFS Applications

Este exemplo mostra como criar um relatório simples através do

Crystal Reports além de detalhar como deve ser feito o link para que este

relatório possa ser executado como um Quick Report através do IFS

Applications. Abaixo está uma instrução passo-a-passo de como pode ser

criado um relatório contendo uma listagem de títulos de cliente.

1. Execute o ícone do Crystal Reports e inicie o wizard selecionando a

opção "Using the Report

Expert".

- 5 -

Page 6: Apostila Crystal

2. Escolha Database

3. Selecione Oracle Server passando o user ID, a senha e o Server

(database SID e não o database alias).

Nota. Esta informação é usada somente durante o desenvolvimento do

relatório. Quando este o relatório for executado através do client esta

informação não será necessária pois o sistema irá utilizar-se do nome do

usuário, senha e banco do usuário conectado.

- 6 -

Page 7: Apostila Crystal

4. Selecione a(s) view(s) definida para este relatório e clique em

“Add”. Para este exemplo, selecione IFS_SUGAR.ACCOUNT

- 7 -

Page 8: Apostila Crystal

5. Feche a caixa de diálogo Data Explorer e selecione Next >> no

Standard Report Expert. Neste passo você pode decidir adicionar

campos nas views selecionadas para serem mostrados no relatório.

Você poderá também definir o cabeçalho das colunas.

6. Escolha Finish no Standard Report Expert. Isto irá mostrar um

preview do relatório.

- 8 -

Page 9: Apostila Crystal

7. Inserir, no final do Alias da tabela, uma barra invertida ( Database/Set Alias ). Este

passo é necessário para que quando o relatório for rodado pelo IFS não exija que seja

informados usuário e senha para acesso a cada tabela do sistema.

8. Salvar o arquivo e tendo certeza que o parâmetro “Save data with report” está

desflegado. O arquivo de relatório ( .rpt ) deve estar no diretório Solutions ( local dos

executáveis )

9. Vincular o arquivo através do Admin. Entre em Foundation 1 Administration / Quick

Report / Quick Report. Com o botão direito do mouse, escolher a opção “import”

selecionando o arquivo .rpt desejado. De acordo com a categoria o relatório ficará

- 9 -

Page 10: Apostila Crystal

disponível, apenas para o usuário que o criou ( private ), ou para todos os usuários

( public ).

- 10 -

Page 11: Apostila Crystal

O que é o Seagate Crystal Reports

O Seagate Crystal Reports foi projetado para trabalhar com banco de dados, e ajudar a analisar e interpretar informações importantes. O Seagate Crystal Reports facilita a criação de relatórios simples, e também tem ferramentas abrangentes necessárias para criar relatórios complexos ou especializados.

Criação de qualquer tipo de relatório

O Seagate Crystal Reports foi projetado para criar qualquer tipo de relatório a partir de qualquer fonte de dados. Os Assistentes de Relatório integrados servem de guia na criação de relatórios e na conclusão das tarefas mais comuns em relatórios. Fórmulas, tabelas de referência cruzada, sub-relatórios e formatação condicional ajudam a esclarecer dados e relações importantes que poderiam ser omitidas.

Sobre esta apostila

Esta apostila inclui procedimentos de tarefas típicas de relatório, como: inserir campos, formatar relatórios e ordenar registros. O Help do Crystal Reports também contém informações sobre áreas de interesse mais específicas, como criação de fórmulas avançadas e acesso a diferentes tipos de dados. Use esta apostila como referência para relatórios básicos e como introdução a novos conceitos na criação de relatórios.

- 11 -

Page 12: Apostila Crystal

A. Iniciando um Relatório

Visão Geral

Para poder começar a trabalhar com Crystal Reports, você iniciará com uma orientação sobre a janela de Desenhos de Relatório. Esta é a primeira tela que você verá quando iniciar o Crystal Reports.

- 12 -

Barra de Título

Barra de Menu

Barra de Ferramentas

Barra de Formatação

Barra de Status

Page 13: Apostila Crystal

Existem oito assistentes fornecidos no

Report Gallery ( veja figura ao lado ). Cada um

conduzirá através de séries de tabs nos quais você

indicará as necessidades de seu relatório. Uma vez

respondidas todas as opções aplicáveis, seu

relatório está montado. Você pode, é claro,

modificar seu relatório após o Assistente tê-lo

criado para você.

Uma vez selecionado o tipo de relatório e o tipo de fonte de dados, você precisa

selecionar a própria fonte de dados.

Em nossos exemplos vamos utilizar o banco de dados Oracle em integração com o

IFS Applications. Para isso, selecione a opção Database – More Data Source – Oracle

Server.

Neste momento irá aparecer uma caixa de diálogo solicitando usuário, senha e

database. No nosso curso, utilizaremos o usuário: IFSAPP, senha: IFSAPP e database:

saoccpdc_race.

Uma vez conectado ao banco, selecionaremos a tabela IFSAPP.INVENTORY_PART

e em seguida um clique no ícone Add e Close.

- 13 -

Page 14: Apostila Crystal

Vamos selecionar agora os campos que gostaríamos que fossem visualizados no

nosso relatório. Clique na tab Fields ou no ícone Next.

- PART_NO;

- DESCRIPTION;

- UNIT_MEAS;

- ESTIMATED_MATERIAL_COST;

- PLANNER_BUYER;

Seções

Cada área da tela serve para uma finalidade diferente. É aqui que você define a

posição do objeto de como ele será exibido.

Report Header Itens posicionados no Cabeçalho do Relatório serão impressos

apenas na primeira pagino do relatório. Normalmente o nome do

relatório, data de impressão, logo da empresa são informações que

seriam incluídas nesta seção.

Page Header Objetos no Cabeçalho da Página serão impressos em todas as

páginas do relatório. Títulos de colunas, data de impressão e

número de páginas são inscrições comuns no Cabeçalho.

Details Posicione os campos a serem listados nesta área. Estas serão as

informações ( campos e textos no banco de dados ) que você irá

querer imprimir para cada documento selecionado para inclusão no

relatório.

Report Footer Itens posicionados aqui serão impressos apenas na última página do

relatório. Totais gerais, número total de páginas e outros

informativos são normalmente posicionados aqui.

Page Footer Objetos posicionados aqui serão impressos na parte inferior de cada

página. Os números de páginas são freqüentemente incluídos no

rodapé da página.

B. Posicionando Objetos no seu Relatório

- 14 -

Page 15: Apostila Crystal

Visão Geral

Campos de banco de dados, campos de fórmulas, linhas e caixas são exemplos de tipos de objetos que você pode posicionar no seu relatório. Esta seção trará dos princípios básicos de posicionamento, movimentação e regulagem do tamanho de objetos no seu relatório.

Diferentes necessidades de geração de relatórios necessitarão diferentes métodos de posicionamento no seu relatório. O padrão inicial em Crystal Reports é “agarrar” à Grade. Uma “Grade” é uma série imaginária de linhas verticais e horizontais cruzando a sua área de trabalho, parecido com papel para gráfico. O que aparecerá na sua tela é uma série de pontos, cada um marcando a interseção das linhas de grade verticais e horizontais.

Linhas de Grade

Para criar uma Linha de Grade, clique na régua vertical ou horizontal. Um pequeno triângulo aparecerá apontando para a janela de desenho com uma linha tracejada que vai dela até o lado oposto da área de trabalho. Objetos que são arrastados para esta linha de grade se grudarão a ela. Isto assegura que ela estará todas juntas e alinhadas. Uma vez grudados todos os objetos que você deseja manipular, você pode arrastar a linha de grade para mover todos os objetos juntos.

Você pode ter simultaneamente tantas Linhas de Grade verticais e horizontais conforme sua necessidade. As Linhas de Grade estão disponíveis em ambas as janelas Design e Preview.

C. Formatando o Objeto

Uma vez que você inseriu campos no seu relatório, você pode querer mudar as suas aparências. O Crystal Reports permite você mudar muito dos atributos, como fontes, tamanho de fontes, cor de fontes, bordas, sublinhado e muito mais.

- 15 -

Grade

Page 16: Apostila Crystal

Campos de banco de dados podem ser formatadas para imprimirem com cores, fontes, atributos e até o fundo que você preferir. Eles também podem ser formatados para modificar o modo como os dados aparecem no seu relatório.

Para isso, selecione o objeto e dê um clique com BDM ( Botão direito do mouse ) e escolha o tipo de formatação desejada. ( Format text, Border and Colors, Font e Paragraph Formatting ).

Formatando um Campo Numérico

Selecione o objeto e dê um clique com o BDM. Escolha a opção Format Field – Customize. A janela Custom Style abrirá com as possíveis formatações disponíveis para o tipo de campo que você selecionou.

Suppress if Zero Função similar à de uma planilha. Se o valor a ser impresso for

‘0’ ( zero ) então nada aparecerá.

Rounding Permite você determinar o número de casas decimais a serem

mostradas e usadas no arredondamento.

Negative Oferece três maneiras diferentes de exibir valores negativos

Decimal Separator Permite você especificar qual caracter será impresso como

separador decimal.

Thousands Separator A caixa de seleção permite você acionar ou não o separador de

milhares. A caixa de entrada de dados permite você especificar

qual deve ser este separador.

Leading Zero Acione ou desacione zeros à esquerda.

- 16 -

Page 17: Apostila Crystal

D. Usando o Select Expert

Visão Geral

O relatório que acabamos de criar imprimirá todos os registros no seu banco de

dados. Freqüentemente, você vai querer restringir os registros impressos para um conjunto

restrito. Por exemplo, você pode exigir que o Crystal Reports imprima somente os

produtos que possua como unidade de medida igual ‘cm’, ou somente aqueles produtos com

valor de venda maior igual a $100,00.

Para isto, você deve ajustar a seleção de registros do seu relatório para atingir os seus

objetivos. Existem três maneiras de ativar o Select Expert.

- Clique no ícone Select Expert na Barra de Ferramentas;

- Escolha Report – Select Expert a partir da Barra de Menu;

- Se o campo que você quer selecionar o registro estiver no seu relatório, dê

um clique com BDM naquele campo e escolha Select Expert a partir do

menu;

Uma vez que você indicou o campo o qual deve ser realizado o filtro, a seguinte

janela abrirá. Veja figura abaixo:

O primeiro passo é decidir o seu critério para a seleção. No nosso exemplo, vamos

concentrar todas as informações onde tenhamos como unidade de medida igual a ‘m’.

- 17 -

Page 18: Apostila Crystal

Mas nada impede de construir mais combinações para o relatório, fica a critério das

necessidades e objetivos a serem alcançados.

Atualizando os Dados do Relatório

Para forçar o Crystal Reports a atualizar os dados em seu relatório,

- clique no ícone Refresh ou,

- escolha Report – Refresh Report Data;

E. Ordenando, Agrupando e Sumarizando Registros

Visão Geral

Uma vez que você tenha selecionado os registros para imprimir e os posicionado no

seu relatório, você provavelmente vai querer ordena-los em uma seqüência lógica. Se

você não especificar uma ordenação, o Crystal Reports vai mostrar os registros em sua ordem

natural, isto é, a ordem na qual estão posicionados no banco de dados.

Ordenando Registros- 18 -

Page 19: Apostila Crystal

Até agora, você selecionou registros específicos para seu relatório e eles estão

listados na ordem em que aparecem no banco de dados. Utilizando Ordenação de Registros

você vai poder listar os registros em uma ordem ascendente ou descendente, como você

determinar.

- Clique no ícone Sort Order ou;

- Escolha na Barra de Menu a opção Report – Sort records;

A caixa de diálogo de Ordenação de Registros se abre.

Todos os campos do relatório estarão disponíveis na lista “ Report Fields “ à

esquerda. Conforme os campos vão sendo adicionados à lista de “ Sort Fields “ à

direita, a cada um pode ser atribuído individualmente um sentido Ascendente ou

Descendente. Portanto em uma ordenação de múltiplo nível, nem todas todas as ordenações

precisam ter o mesmo sentido.

Agrupando Registros

Mesmo que seus registros estejam ordenados, você pode querer “quebrar” os dados

em grupos significativos. Por exemplo, imagine que você quer uma lista de todos os

Part_no juntos, todos as unidades de medida igual a ‘m’ juntos, etc.

Você pode agrupar informações baseadas em campos do

relatório, em campo do banco de dados que não estiverem no

- 19 -

Page 20: Apostila Crystal

relatório, e até em campos fórmula. Quando é adicionado um grupo no relatório,

uma nova seção será criada. Esta nova seção estará visível no lado esquerdo do Design.

Uma vez criada, você verá um Cabeçalho do Grupo e um Rodapé do Grupo

envolvendo a área de Detalhes. Cada grupo terá seu próprio Cabeçalho e Rodapé.

Para criar um grupo no relatório, escolha a opção Insert – Group na Barra de Menus.

A caixa de diálogo inserir seção aparecerá.

Opções de Ordenação

Existem quatro opções para ordenar seus grupos. Elas são:

In ascending order A a Z, 1 a 9, do menor para o maior, etc.

In descending order Z a A, 9 a 1, do maior para o menor, etc.

In specified order Permite a você criar um grupo baseado em um valor que pertença

ao banco de dados.

In original order Mantém os registros na mesma ordem em que eles são encontrados

no banco de dados.

- Keep Group Together: Esta opção previne que um grupo seja separado em

diferentes páginas. Isto forçará grupos a ficarem juntos. Se existe espaço suficiente

para imprimir todos os registros de um grupo na página atual, Crystal Reports os imprimirá

nesta página. Se não, eles serão impressos na página seguinte.

- 20 -

Este combo lhe permite escolher por qual campo você quer agrupar os dados no relatório

Este combo lhe oferece as quatro opções de ordenação possíveis para seus grupos.

Page 21: Apostila Crystal

- Repeat Group Header On Each Page: Crystal Reports pode imprimir o nome de

um grupo no Cabeçalho de Grupo usando o campo Nome de Grupo. Se, por exemplo,

você tiver quebrado seu relatório por região, o nome da região seria impresso logo acima do

primeiro registro daquela região. Se o grupo possuir um número tão grande de

registros que de maneira que precise ocupar mais de uma página, esta opção forçará o Campo

Nome de Grupo a se repetir a cada nova página para este grupo em particular.

Nomes de grupo são normalmente encontrados no cabeçalho do grupo. Informações

de sumarização sobre os grupos são normalmente encontradas no rodapé do grupo.

Sumarizando Registros

Agora que você possui um relatório onde a informação desejada está agrupada e

ordenada de maneira lógica. Vamos assumir que você gostaria agora de adicionar algumas

informações de sumário para o seu relatório.

Muitas pessoas confundem Sumário com Subtotal. Ambos são cálculos

baseados na soma de grupos de valores numéricos e estão, portanto, somente disponíveis para

campos do tipo numérico ou moeda. Uma Sumarização, no entanto, nem sempre é um

subtotal, nem também são sempre baseados em valores numéricos. Uma sumarização

pode ser uma contagem total de entradas em um grupo ou uma média de valores numéricos.

No exemplo seguinte, mostra a sumarização ( contagem ) de quantos peças existem

no grupo e o subtotal do custo do material para o grupo.

- 21 -

Page 22: Apostila Crystal

As opções disponíveis quando você estiver inserindo um campo sumário varia,

dependendo do tipo de dados que você estiver sumarizando.

Para inserir uma sumarização ou subtotal no relatório, siga um desses três

procedimentos:

- Clique em Insert Summary na Barra de Ferramentas ou;

- Clique com o BDM no campo e escolha Insert – Summary ou Insert –

Subtotal a partir do menu ou;

- Escolha Insert – Summary a partir da Barra de Menus;

- 22 -

Page 23: Apostila Crystal

F. Totais Gerais

Visão Geral

Uma vez que você produziu informação de sumário para cada grupo, você pode

também querer ter um sumário para todo o relatório. Isto é conhecido no Crystal Reports

como Totais Gerais e será exibido no final do seu relatório na seção Rodapé do Relatório.

Como Totais Gerais são Sumários para um relatório inteiro ( ao contrário de um

grupo ) eles podem executar os mesmos tipos de cálculos que os campos de sumário.

Novamente, as opções disponíveis dependerão do tipo de dado no qual você está

baseando seu cálculo.

Inserindo um Total Geral

Para inserir um Total Geral, selecione um campo na seção de Detalhes na qual você

quer que o Total Geral seja baseado, então siga um dos seguintes passos:

- Dê um clique com o BDM no campo e escolha Insert – Grand Total a partir

do menu ou;

- Escolha Insert – Grand Total a partir da Barra de Menu.

O campo Total Geral irá alinhar-se automaticamente e grudar-se à mesma “guideline”

que o campo de dados foi baseado. Ele estará na área de rodapé do seu rodapé. Veja

figura abaixo:

- 23 -

Page 24: Apostila Crystal

Usando o Assistente de Grupo Top N / Sort Group Expert

Para mudar o seu relatório de agrupado e subtotalizado para um relatório Top N,

Bottom N, ou Ordenar todos:

- Escolha Report – Top N /Sort Group Expert na barra de Menu.

O Assistente de Grupo Top N / Sort Group Expert se abre:

G. Relacionamento entre Tabelas

- 24 -

Escolha qual dos campos de sumarização que você quer como base do ranking.Insira o número de grupos que você deseje visualizar no relatório.

Escolha se serão ou não incluídos os grupos que não se encaixam no critério de ranking.

Page 25: Apostila Crystal

Visão Geral

Se o seu relatório tem dados provenientes de uma ou mais tabelas de bancos de dados

você precisará linkar ambas ao criar seu relatório. Você linka tabelas de bancos de

dados para que os registros de uma tabela correspondam-se com registros associados de outra

tabela. Por exemplo, se você abre uma tabela de Fornecedores e outra de Produtos, você

linka a tabela para que então cada produto possa ser relacionado com o fornecedor que fez o

produto.

Relacionar requer que você use um campo que seja comum para ambas tabelas. Os

campos devem também ter algo em comum. Ex: mesmo ID de campo, tipo de campo e

comprimento. A maior parte de seus relatórios provavelmente irão necessitar dados de uma

ou mais tabelas, portanto o relacionamento será necessário. O processo de

relacionamento torna-se mais fácil no Crystal Reports como o Visual Linking Expert.

O Visual Linking Expert torna mais fácil criar, modificar e deletar relacionamentos.

Sempre que você adicionar um banco de dados ao seu relatório, o Visual Linking Expert se

abrirá. O Visual Linking Expert é basicamente um prompt para lembra-lo que se você precisa

que as informações de ambas tabelas sejam impressas no seu relatório, deve haver alguma

ligação em comum entre as duas.

Usando o Visual Linking Expert

Sempre que você adiciona um banco de dados ao seu relatório, o Visual Linking

Expert se abrirá automaticamente. Você verá uma representação gráfica de qualquer

tabela que existir no momento e que estiverem linkadas ao seu relatório, como também uma

série de botões no fim da tela para ajuda-lo a adicionar mais tabelas ou definir os links já

existentes.

Se você quiser abri-lo em algum momento, selecione na Barra de Menu a opção

Visual Linking Expert. Neste momento, o Crystal Reports exibirá todas as tabelas ativas no

seu relatório.

- 25 -

Page 26: Apostila Crystal

Adicionando Tabelas no Relatório

Normalmente você pode achar necessário adicionar um campo de dado ao seu

relatório para acessar as informações que o relatório pede. Outras vezes você pode

querer remover um banco de dados de um relatório por motivos de eficiência.

Existem duas maneiras de adicionar um campo de dados a um relatório. A primeira

é escolher na Barra de Menu a opção Database – Add Database do Report. A caixa de

diálogo se abrirá para você selecionar a(s) tabela(s) que deseje adicionar no relatório. A

cada tabela selecionada é necessário clicar em Add. Uma vez selecionado a(s) tabela(s)

clique no ícone Close. Veja figura abaixo:

O segundo modo está contido no Visual Linking Expert. Clique no ícone Tables e a

caixa de diálogo Choose Tables to Use in Visual Linking se abrirá. Clique em Add

Table e selecione as tabelas desejadas conforme procedimento descrito no parágrafo acima.

Qualquer tabela adicionado desta maneira será adicionado à lista de Tabelas Visíveis.

- 26 -

Page 27: Apostila Crystal

Removendo Tabelas no Relatório

Você não pode remover uma tabela de um relatório enquanto um de seus campos

estiver sendo usado. Para remover uma tabela de um relatório, escolha na Barra de Menu

a opção Database – Remove from Report. A caixa de diálogo Remove from Report abrirá.

Para remover uma tabela de um relatório, selecione o nome da tabela na lista de

rolagem de bancos de dados e clique em Remove. Clique em Done quando estiver

terminado.

H. Noções Básicas de Fórmulas

Visão Geral

Uma fórmula é uma representação simbólica das manipulações que você quer

executar em determinados dados antes que estes sejam impressos em seu relatório.

- 27 -

Page 28: Apostila Crystal

Geralmente é uma informação não contida nos campos do banco de dados mas que é

necessária para o relatório que você está criando. Uma utilização comum de fórmulas

seria para gerar um campo que apresente um determinado cálculo.

Além de cálculos também podem utilizar fórmulas para:

- extrair uma parte, ou partes, de um texto qualquer

- subtrair um campo data de outro

- extrair parte de um campo data

- converter um campo data armazenado como texto para um campo data

Fórmulas também podem ser utilizadas para cálculos de valores numéricos, por

exemplo comparar um valor com outro e então selecionar ações alternativas baseadas na

comparação. Alguns exemplos de cálculos numéricos usando fórmulas são:

- Fórmulas If-then-else ( se-então-senão )

- Sumarizações, subtotais e totais gerais

- Booleanos

Abrindo o Editor de Fórmulas

- Clique no ícone Insert Fields ou;

- Escolha na Barra de Menu a opção Insert - Field Object;

Qualquer um desses métodos abrirá a caixa de

diálogo Field Explorer. Selecione a opção Formula Fields

e clique em New.

- 28 -

Page 29: Apostila Crystal

Uma caixa de diálogo vai se abrir solicitando o nome da fórmula. Todas as fórmulas

precisam ter um nome. O nome da fórmula será utilizado como cabeçalho de coluna.

Clique em OK e o editor de fórmulas se abrirá.

O Editor de Fórmulas

O Editor de Fórmulas tem quatro seções:

Caixa de Campos

Todos os campos do banco de dados e demais fórmulas estão listados aqui. Os

campos e fórmulas que já estão colocados no relatório estão listados sob Report Fields. (Obs.:

o formato desses campos é sempre ‘tabela.campo’ para que você saiba de onde está vindo a

informação. ) Todas as fórmulas são precedidas por ‘@’. Campos de tabelas que não

estão sendo utilizados estão listados abaixo do nome das tabelas. O nome das tabelas

será mostrado como – Nome da Tabela --. Se você der um clique-duplo sobre o nome

de uma tabela ela vai abrir para mostrar os campos que contém. Dê um clique duplo

novamente e ela irá fechar.

Caixa de Funções

Todas as funções disponíveis estão listadas, mostrando seus argumentos e

organizadas por sua utilização. Estas funções são procedimentos pré-definidos fornecidos

com Crystal Reports que retornam valores. Se você criou qualquer Função Definida pelo

Usuário, estas serão listadas no final desta caixa.

Caixa de Operadores

Operadores são símbolos especiais que descrevem uma ação que deve ocorrer entre

dois ou mais valores dentro da fórmula. Crystal Reports lê os operadores em uma Fórmula e

realiza as ações especificadas. Muitos operadores estão listados para serem usados em

fórmulas. Os caracteres x e y indicam a sintaxe apropriada para o operador.

Caixa de Texto da Fórmula

- 29 -

Page 30: Apostila Crystal

Este é o lugar onde as fórmulas são montadas. Campos,funções e operadores vão

aparecer onde o cursor estiver piscando quando você der um duplo-clique nos componentes

listados acima. Quando você seleciona funções, o programa posiciona o cursor entre

os parênteses onde são esperados os parâmetros necessários.

Se você tiver familiarizado com a linguagem de Fórmulas você pode digita-las

manualmente.

Quando terminar de escrever a fórmula, clique no ícone Check conferir

a sintaxe. Se nenhum erro for encontrado, clique em OK e em Aceitar e

coloque a fórmula no lugar desejado dentro do relatório.

Porém se apresentar erro de sintaxe na fórmula após pressionar o ícone Check, o

cursor vai ser alocado na área da Fórmula onde o erro ocorreu ou o mais próximo do mesmo,

de acordo com a sintaxe.

Cálculos Básicos

Cálculos básicos são freqüentemente utilizados em relatórios para ajudar você a

conseguir as informações de que precisa. Um banco de dados normalmente vai conter

dados que precisam ser manipuladas de alguma forma para gerar as informações desejadas.

Exemplo #1

Nome da Fórmula: @Preço Real

Funções: * (multiplicar)

Propósito: Calcular o preço real, a uma taxa de 7% como imposto a ser aplicado nesta

situação fictícia.

Fórmula: {INVENTORY_PART.ESTIMATED_MATERIAL_COST} * 1.07

Exemplo #2

Nome da Fórmula: @Subtotal

Funções: SUM(fld,condfld)

Propósito: Você pode usar fórmulas dentro de outras fórmulas simplesmente inserindo-as da

mesma forma que se insere um campo da base de dados na sintaxe da fórmula. O primeiro

argumento da função soma diz o que está sendo sumarizado, enquanto que o segundo

- 30 -

Page 31: Apostila Crystal

argumento diz com qual freqüência está ocorrendo a sumarização. Esta fórmula seria

colocada na seção de rodapé do grupo no seu relatório.

Fórmula: Sum ({@Preço Real},{INVENTORY_PART.DESCRIPTION} )

Exemplo #3

Nome da Fórmula: @Percentual do total

Funções/Operador: Operador %

Propósito: Esta fórmula usa as outras que você criou para achar o Preço Real e o Subtotal por

número de pedido para calcular um percentual.

Fórmula: {@Preço Real} % {@Subtotal}

Exemplo #4

Nome da Fórmula: @Total Geral

Funções/Operador: Sum( )

Propósito: Um total geral pode ser uma contagem geral de produtos pedidos ou um total dos

Preços Reais.

Fórmula: Sum ({@Preço Real})

Exemplo #5

Nome da Fórmula: @Dia da semana

Funções/Operador: dayofweek ( )

Propósito: Descobrir em qual dia da semana cai uma determinada data. Uma matriz faz a

correspondência entre as suas posições. Onde a partir dessa fórmula o Crystal Reports

retornará um valor numérico de 1 a 7, sendo 1 equivalente a Domingo.

Fórmula: DayOfWeek ({INVENTORY_PART.CREATE_DATE})

Obs.: Uma vez criado a fórmula @Dia da semana, vamos incluí-la dentro de uma nova

fórmula nomeada de @Dia da semana extenso. Utilize a seguinte sintaxe:

Fórmula: ['Domingo','Segunda','Terça','Quarta','Quinta','Sexta','Sabado'][{@Dia da semana}]

- 31 -

Page 32: Apostila Crystal

Exemplo #6

Nome da Fórmula: @Comentário de preço

Funções/Operador: Operador If then Else

Propósito: Criar um comentário para determinados preços do produto. Você pode ajustar os

limites da condição e adicionar comentários diferentes dependendo de cada intervalo de

valores delimitado.

Fórmula: if {@course} > 100 then "Preço Alto"

else if {@course} > 50 then "Preço Bom"

else "Aumentar o preço !!!"

I.Formatação Condicional

Visão Geral

A formatação condicional, como próprio nome já deixa entender, é a formatação de

elementos que se aplica somente no caso de serem atendidas uma ou mais condições.

Veja alguns rápidos exemplos:

- Contas a pagar devem ser impressas em vermelho se estiverem atrasadas;

- As datas devem aparecer no formato AAAA/MM/DD, se for um cliente

norte-americano;

- A cor de fundo deve aparecer se o valor valor da conta for muito alto.

Com a utilização dos recursos normais de formatação, utiliza-se um procedimento

conhecido por Select&Apply, ou seja, seleciona-se o que se deseja formatar e aplica-se o

formato, a formatação, ao(s) elemento(s) selecionado(s). A formatação aplica-se através do

ajuste e das alterações das propriedades dos elementos.

- 32 -

Page 33: Apostila Crystal

A formatação condicionada, estará sendo feita, em linhas gerais, da mesma forma que

a formatação tradicional, no que se refere ao procedimento de selecionar e aplicar, no entanto

você estará indo um passo além pois irá impor condições que determinarão quando devem ser

formatados ou não os elementos. A imposição destas condições é feita através da

utilização de fórmulas bastante simples.

Quando você faz uma fórmula de condicionamento de formatação, esta sobrepõe

quaisquer opções de formatação ambiental que deveria ser fixa para o relatório. Por

exemplo, se você acionar o modo suppress e estipular uma fórmula condicional para esta

propriedade, esta só entrará em vigor quando a fórmula de formatação for atendida.

Exemplo, vamos supor que você precise imprimir uma mensagem de rodapé em um

relatório, no entanto esta mensagem não deverá sair na primeira página. Primeiramente

coloque no rodapé da página o que pode ser feito através do ícone. Coloque a

mensagem da seguinte maneira:

Existem duas maneira de se fazer com que esta mensagem não apareça na primeira

página do relatório: pode se formatar a seção Rodapé de página inteira, ou ainda apenas o

campo texto. Vejamos primeiramente a opção de se omitir a seção se a página for a primeira

do relatório:

1. Clique no ícone Section Expert;

2. Quando aparecer a listagem de seções, selecione a seção Rodapé de página,

marque a caixa em frente à propriedade Suppress e pressione o botão de

fórmula, indicado pela seta na figura abaixo:

- 33 -

Page 34: Apostila Crystal

3. Após ter clicado no botão de fórmula, insira o seguinte texto, que será a fórmula de

condição para que se suprima a seção Rodapé de página inteira:

PageNumber=1

Com esta fórmula, a seção será suprimia na página cujo número for 1, e não mais em

todas as outras páginas do relatório, o que valerá também para a mensagem incluída na

referida seção.

Existe no entanto, outro método para se chegar ao resultado esperado por este tipo de

formatação. No caso, iremos impor a mesma condição, através da mesma fórmula, com a

diferença que esta será utilizada apenas para o campo texto, e não parra seção como um todo.

1. Selecione o campo texto com o BDM;

2. Clique em Format Text;

3. Com o Format Editor na tela, selecione a opção Suppress e clique no botão de

fórmula, da mesma forma como foi feito no exemplo anterior, inclusive inserindo a

mesma fórmula.

- 34 -

Page 35: Apostila Crystal

- 35 -

Page 36: Apostila Crystal

Propriedades Condicionais de Atributos

Propriedades Condicionais de Atributos são aquelas que especificam um atributo

dentro de várias alternativas possíveis para o resultado de uma formatação.

Suponhamos que seja necessário gerarmos um relatório em que os valores dos

campos referidos acima apareçam em vermelho se estiverem abaixo de 10 e em verde se

estiverem acima 100. Os valores que estiverem dentro do intervalo referido serão

impressos na cor padrão, ou seja preto. Veja os procedimentos:

1. Selecione o referido campo numérico e clique com o BDM;

2. Clique na opção Format Field;

3. Com a tela Format Editor aberto, selecione a tab Font;

4. Escolha a opção Color e clique no ícone de fórmula;

5. Ao entrar na tela de fórmula, será possível constatar a existência do grupo de funções

COLOR, e portanto, a resolução do exemplo proposto seria uma fórmula de if-then-else

encadeados. Verifique como ficará a fórmula.

- 36 -

Page 37: Apostila Crystal

J. Gráficos

Visão Geral

Muitas pessoas acham mais fácil compreender informações se elas forem

apresentadas graficamente. O Assistente de Gráfico do Crystal Reports o guiará

passo a passo através do processo de como inserir um gráfico no seu relatório.

Cada gráfico se tornará um objeto no seu relatório, e portanto poderá ser movido. O

local onde você posiciona o seu gráfico determina qual dado será exibido e onde será

impresso. Por exemplo, se você posiciona um gráfico na seção Cabeçalho do Relatório,

o gráfico incluirá dados de todo o relatório . Se você o colocar na seção Cabeçalho de

Grupo ou rodapé de grupo, ele mostra dados específicos do grupo.

Criando um Gráfico Simples

- Clique no ícone Insert Chart na Barra de Ferramentas ou;

- Escolha Insert – Chart a partir da Barra de Menu;

Quando você executa uma dessas seleções, o Assistente de Gráfico se abre.

O Assistente de Gráfico é uma caixa de diálogo com tab. Ao trabalhar com

cada um dos tabs, perceba que nem todas as opções podem ser necessariamente aplicadas,

dependendo do tipo de gráfico que você escolheu.

- 37 -

Page 38: Apostila Crystal

Estas tabs sempre apresentará todas as opções, apesar de alguns dos gráficos não usa-

las. Por exemplo, um gráfico de torta não teria os eixo x ou y.

Uma vez que você tenha respondido todas as tabs no Assistente de Gráfico, clique em

OK. O gráfico será criado para você e automaticamente inserido no seu relatório.

L. Campos Parâmetro

Visão Geral

Com qual freqüência você cria relatórios que sempre serão executados sem nenhuma

modificação?? Talvez você precise modificar levemente o critério de seleção a cada vez em

que o relatório é executado. Talvez você precise modificar uma fórmula ou a ordenação

dos registros. Nestas situações e em muitas outras, Campo Parâmetro adicionarão

flexibilidade ao seu relatório.

Campos Parâmetro são campos que abrem um prompt para você especificar um novo

valor a cada vez que você atualizar dados em seu relatório. Quando você inserir um

valor, o programa dinamicamente executa o relatório usando o valor inserido. Agora ao

invés de criar várias versões do mesmo relatório, você pode utilizar os campos parâmetro em

seleções de registros e grupos, campos fórmula e no próprio relatório.

Com os Campos Parâmetro, um relatório vale por muitos já que, quando você for

fazer a prévia do mesmo, será pedida a informação necessária que deverá ser vista.

Campos Parâmetros são fáceis de serem criados, mas você precisará saber as

seguintes informações antes de criar os seus:

- onde em seus relatórios você irá utiliza-los;

- que tipo de dados utilizar e;

- um valor inicial;

- 38 -

Page 39: Apostila Crystal

Clique na Barra de Menu a opção Insert

– Field Object – Parameter Fields e clique no

ícone New.

Insira o nome do parâmetro em Name para que possamos identificar o campo

parâmetro. Quando você posteriormente utilizar o campo parâmetro ele será mostrado

como {?Nome do Parâmetro}

Insira o tipo de dado em Value type. Se o campo parâmetro utilizado for um campo

string você precisará definir o campo parâmetro como string também. Existem seis tipo de

dados permitidos: string, numérico, moeda, Booleano, data e hora.

- 39 -

Page 40: Apostila Crystal

Usando Campos Parâmetros em Relatórios

Para permitir que este relatório seja facilmente modificado para vários critérios, você

simplesmente utiliza o campo parâmetro no lugar do valor especificado para o critério em

questão:

{INVENTORY_PART.DESCRIPTION} like {?Descrição}

Onde {?Descrição} é um campo parâmetro que você acabou de criar. Qualquer

valor que você entre para o campo parâmetro de região será utilizado para a seleção de

registros naquela atualização de seu relatório.

M. Subrelatórios

Visão Geral

Subrelatórios são relatórios internos a outros, que apresentam exatamente as mesmas

características de um relatório normal. Você pode criar um subrelatório como se estivesse

criando normalmente um novo relatório, ou então importar um relatório já feito para ser

utilizado como subrelatório de outro. Existe a possibilidade de serem inseridos múltiplos

subrelatórios no relatório principal, se assim for desejado. Você pode relacionar e

coordenar os dados de um subrelatório com os dados do relatório principal, ou ainda criar um

subrelatório independente, cujos dados sejam totalmente desvinculados do relatório principal.

Um subrelatório pode ter seus próprios critérios de seleção, sua própria formatação e

suas próprias fórmulas. As únicas diferenças entre um subrelatório e um relatório comum

seriam:

- o subrelatório é inserido como se fosse um objeto no relatório principal; ele

não pode existir sozinho;

- o subrelatório pode ser inserido em qualquer seção do relatório principal,

sendo impresso inteiramente na mesma seção e;

- um subrelatório não pode conter um subrelatório;

Existem quatro situações típicas nas quais poderia ser utilizado um subrelatório:

- 40 -

Page 41: Apostila Crystal

1. Quando for de seu interesse combinar relatórios que não tenham relações

lógicas em um mesmo relatório;

2. Quando for necessário coordenar dados e informações que não podem ser

linkadas de qualquer outra forma;

3. Quando você quiser apresentar diferentes pontos de vista, ou diferentes

resultados, para o mesmo conjunto de dados em um mesmo relatório e;

4. Quando você precisar realizar pesquisas 1->N a partir de um campo não

indexado;

Como funciona o Relacionamento de Subrelatório

Quando você relaciona um subrelatório a um relatório principal, o programa cria o

relacionamento através do mecanismo de campo-parâmetro. Quando você seleciona um

campo de subrelatório para fazer um relacionamento:

- O Crystal cria um campo parâmetro no subrelatório que é utilizado para obter

valores que lhe foram passados pelo relatório principal.

- O Crystal também cria uma fórmula de seleção de registros para o

subrelatório utilizando o campo parâmetro.

- A supracitada fórmula de seleção limita o subrelatório àqueles registros nos

quais os valores do campo de relacionamento são iguais ao campo-parâmetro.

N. Objetos Cross-Tab

- 41 -

Page 42: Apostila Crystal

Visão Geral

Um Cross-Tab, é um tipo de relatório que sumariza as informações em um formato

compacto de linhas e colunas, o que facilita a análise e compreensão dos resultados obtidos.

No Crystal Reports, um Cross-Tab passa a ser um objeto, além de seu tradicional

conceito de forma de relatório. O objeto Cross-Tab pode ser inserido em outros tipos de

relatório, tantas vezes quanto for necessário. Você até pode inserir um Cross-Tab como

um subrelatório. Além disto, você pode utilizar Cross-Tab para mostrar dados

resumidos em um relatório que apresenta os detalhes em outro formato.

Criando um Cross-Tab

Imagine uma situação em que se precisa apresentar um histórico de pedidos por

região, seguido de um quadro informativo da posição de cada produto dentro da mesma

região, com seus pedidos agrupados em colunas de região e cidades. Para a montagem

deste relatório, teremos que:

- montar o histórico na linha Details e agrupa-los por região;

- criar um Cross-Tab que gere as informações desejadas e coloca-los no rodapé

da quebra por região;

Para criarmos um Cross-Tab, basta selecionarmos na Barra de Menu a opção Insert –

Cross-Tab, que abrirá a tela para que possamos inserir as respectivas informações nos campos

apropriados.

Você pode arrastar e colar campos às caixas de linhas, colunas e campos sumarizados

ou usar os ícones quando os campos estiverem selecionados. Você pode ter múltiplos

campos em cada caixa e também acessar o editor de fórmulas diretamente deste ponto.

- 42 -

Page 43: Apostila Crystal

O relatório com o Cross-Tab deve parecer com esta imagem:

- 43 -