Saiba que este documento não poderá ser reproduzido, seja...

62

Transcript of Saiba que este documento não poderá ser reproduzido, seja...

Page 1: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de
Page 2: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de
Page 3: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Saiba que este documento não poderá ser reproduzido, seja por meio eletrônico ou

mecânico, sem a permissão expressa por escrito da Domínio Sistemas Ltda. Nesse caso,

somente a Domínio Sistemas poderá ter patentes ou pedidos de patentes, marcas comerciais,

direitos autorais ou outros de propriedade intelectual, relacionados aos assuntos tratados nesse

documento. Além disso, o fornecimento desse documento não lhe concede licença sobre tais

patentes, marcas comerciais, direitos autorais ou outros de propriedade intelectual; exceto nos

termos expressamente estipulados em contrato de licença da Domínio Sistemas.

É importante lembrar que as empresas, os nomes de pessoas e os dados aqui

mencionados são fictícios; salvo indicação contrária.

© 1998 - 2004 Domínio Sistemas Ltda. Todos os direitos reservados.

Page 4: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de
Page 5: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Sugestões

A Domínio Sistemas busca aumentar a qualidade dos seus produtos continuamente.Um exemplo disso é esse material, que tem como objetivo aumentar a produtividade e odesempenho dos usuários de nossos sistemas.

O processo de elaboração desse material passou por freqüentes correções e testes dequalidade, mas isso não exime o material de erros e possíveis melhorias. Para que hajamelhoras, nós contamos com o seu apoio. Caso você tenha alguma sugestão, reclamação ouaté mesmo encontre algum tipo de erro nesse material, solicitamos que você entre em contatoconosco. Dessa forma, poderemos analisar suas sugestões e reclamações para corrigireventuais erros.

Para entrar em contato com o nosso Centro de Treinamento, escreva [email protected]. Relate, pois, a sua sugestão, reclamação ou o erroencontrado e sua localização para que possamos fazer as devidas correções.

Você também dispõe do seguinte formulário para enviar-nos suas notações. Bastadestacar essa folha, relatar sua sugestão e/ou reclamação e remeter ao seguinte endereço:

Centro de Treinamento DomínioRua Santo Antônio, 1416º Andar – CentroCriciúma – SC – CEP: 88801-440

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

Page 6: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de
Page 7: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Índice

Convenção de cursores, ícones e tipografia................................................................................9

Lista de Abreviaturas e Siglas...................................................................................................10

Visão Geral do Curso................................................................................................................11

Descrição..............................................................................................................................11

Público Alvo.........................................................................................................................11

Pré-requisitos........................................................................................................................11

Objetivos..............................................................................................................................11

1. Criando Relatórios de Forma Simples e Eficiente................................................................12

1.1. Introdução......................................................................................................................12

1.2. Objetivo.........................................................................................................................12

2. Classificação do Relatório.....................................................................................................13

2.1. Criando Classificação ...................................................................................................13

3. Criando um Novo Relatório..................................................................................................15

3.1. Criando um Relatório no Modo de Edição Gráfica.......................................................16

3.2. Criando um Relatório no Modo de Edição Texto.........................................................16

4. Definindo Fontes de Dados...................................................................................................18

4.1. Identificando Tabelas e Colunas....................................................................................18

4.2. Adicionando Colunas ao Relatório ...............................................................................18

4.3. Removendo Colunas da Fonte de Dados.......................................................................19

4.4. Definindo a Ordem do Relatório ..................................................................................20

4.4.1.Guia Seleção...........................................................................................................20

4.4.2. Guia Computado....................................................................................................21

4.5. Propriedades do Relatório.............................................................................................22

4.6. Visualizando SQL Gerada ............................................................................................22

4.7. Propriedades dos Objetos no Relatório.........................................................................23

4.7.1. Guia Geral..............................................................................................................24

4.7.2. Guia Fonte.............................................................................................................24

4.7.3. Guia Posição..........................................................................................................25

4.7.4. Guia Formato.........................................................................................................25

5. Visualizando Relatório..........................................................................................................27

5.1. Barra de Ferramentas na Edição de Relatórios..............................................................27

5.2. Identificando as Bandas de um Relatório......................................................................29

Page 8: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

5.3. Identificando Objetos....................................................................................................30

5.4. Tipos de Objetos............................................................................................................31

5.5. Propriedades dos Objetos .............................................................................................33

5.6. Executando o Relatório ................................................................................................33

5.7. Definição de Argumentos..............................................................................................33

6. Quebras de Relatório & União..............................................................................................36

6.1. Identificando Quebra.....................................................................................................36

6.2. Inserindo Quebras..........................................................................................................36

6.3. Removendo Quebra.......................................................................................................38

6.4. Construindo uma Expressão..........................................................................................38

6.5. União.............................................................................................................................40

7. Utilitários do Gerador de Relatório.......................................................................................42

7.1. Introdução......................................................................................................................42

7.2. Objetivo.........................................................................................................................42

7.3. Exportação.....................................................................................................................42

7.4. Importação.....................................................................................................................43

7.5. Configurando Área de Edição.......................................................................................44

8. Exercícios..............................................................................................................................46

9. Funções Importantes do Gerador de Relatórios....................................................................62

Page 9: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Convenção de cursores, ícones e tipografia

A fonte Arial é utilizada para se referir a títulos de janelas, guias e quadros, porexemplo:

Abra a pasta Domínio Utilitários e dê duplo clique no ícone Gerador de Relatórios, para abrira janela Conectando...

A fonte Arial em Negrito é utilizada para definir botões, ícones, menus e opções, emque você deverá clicar, por exemplo:

Clique no menu Relatórios, opção Gerenciador de Relatórios.

A fonte Arial em Itálico é utilizada para definir os nomes dos sistemas da Domínio,bem como marcas registradas citadas nesse material, por exemplo:

Este curso é direcionado a usuários e técnicos que participaram do treinamento de Introduçãoa SQL para o Domínio Gerador de Relatórios.

A fonte Arial Sublinhado é utilizada para definir os nomes dos campos de cadastros ejanelas do Gerenciador de Relatórios, por exemplo:

No campo Descrição, digite um nome para a nova classificação.

A fonte Times New Roman em Itálico junto com o ícone abaixo são utilizados emobservações importantes, que estarão dispostas nesse material. Por exemplo:

O modo de edição Gráfico é para relatórios que serão impressos em impressoras jato

de tinta e laser, já o modo de edição Texto é para relatórios que serão impressos em

impressoras matriciais.

9

Page 10: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Lista de Abreviaturas e Siglas

BGR – Arquivo Domínio Gerador;

CTRL – Control;

ISQL – Interactive Structured Query Language;

SQL – Structured Query Language.

10

Page 11: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Visão Geral do Curso

Descrição

A finalidade do curso de Introdução ao Domínio Gerador de Relatórios é apresentaraos nossos usuários e técnicos, os seguintes tópicos:

• Criar classificações (divisões) para a separação dos relatórios de uma mesma espécie;• Como classificar os relatórios;• Como selecionar dados para a emissão de relatórios (fonte de dados);• Como organizar o relatório;• Definir a ordem em que as informações serão impressas;• Filtrar os dados a serem impressos em um relatório;• Importar e exportar relatórios;• Identificação das bandas e objetos em um relatório;• Alterar expressões nos relatórios;• Como inserir e remover quebras;• Como fazer união de tabelas distintas, etc.

Público Alvo

Esse curso é direcionado a usuários e técnicos que participaram do treinamento deIntrodução a SQL para o DomínioGerador de Relatórios. O conhecimento a ser adquirido éinteiramente voltado a gerar relatórios nos vários sistemas da Domínio.

Pré-requisitos

Para o estudante ter um bom desempenho durante o treinamento, é necessário queatenda aos seguintes requisitos:

• Completado o curso Introdução a SQL para o Domínio Gerador de Relatórios;• Ter familiaridade com qualquer sistema da Domínio.

Objetivos

Ao término desse treinamento, o aluno estará apto a realizar a seguinte função:

• Gerar seus próprios relatórios com base nos bancos de dados dos aplicativos Domínio.

11

Page 12: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

1. Criando Relatórios de Forma Simples e Eficiente

1.1. Introdução

Neste módulo, o aluno estudará a classificação e a elaboração de um relatório de formasimples e eficiente, sem a utilização da SQL.

1.2. Objetivo

Ao final desse módulo, o participante estará apto a:

• Definir classificações de modo a organizar seus relatórios;• Elaborar um relatório de maneira simples e objetiva;• Identificar tabelas, colunas, objetos e bandas em um relatório;• Ordenar um relatório;• Executar um relatório.

12

Page 13: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

2. Classificação do Relatório

A classificação serve para identificar vários relatórios da mesma espécie. Sempre quevocê criar um novo relatório, deve indicar a que classificação pertence para se unir a possíveisrelatórios que possuem as informações semelhantes a esse que está sendo criado. Porexemplo: suponha que você precise criar um novo relatório para a impressão de recibos depagamento. Então, deverá ter uma classificação que identifique os recibos de pagamento.

O objetivo da classificação é a organização dos seus relatórios para que, quando sejanecessário alterar ou executar, se possa ir ao local certo, sem ter de realizar cansativasprocuras.

2.1. Criando Classificação

Para criar uma nova classificação, proceda da seguinte maneira:

1. Acesse um dos aplicativos da Domínio Sistemas, onde você quer criar a classificação.

2. Clique no menu Relatórios, opção Gerenciador de Relatórios, para abrir a janela

Gerenciador de Relatórios, conforme a figura a seguir.

Na janela Gerenciador de Relatórios, são mostrados todos os relatórios criados

nessa aplicação, permitindo executá-los, excluí-los, cadastrá-los, excluir

classificações, etc. Você também pode criar argumentos, que serão enviados para o

relatório.

3. Clique no botão Classificações, para abrir a janela Classificações dos Relatórios,

conforme a figura a seguir.

13

Page 14: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

4. No campo Descrição, digite um nome para a nova classificação.

5. Clique no botão Gravar, para salvar a nova classificação.

A nova classificação criada somente será exibida na janela Gerenciador deRelatórios, quando você criar um novo relatório e salvar dentro da mesma.

14

Page 15: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

3. Criando um Novo Relatório

O Gerador de Relatórios é um aplicativo desenvolvido para que qualquer pessoacom pequena noção de SQL possa criar seus próprios relatórios.

Para acessar o Gerador de Relatórios, proceda da seguinte maneira:

1. Na janela Gerenciador de Relatórios, clique no botão Gerador....

Caso você tenha instalado o Domínio Utilitários, você poderá acessar o Gerador deRelatórios. Para isso, proceda da seguinte maneira:

1. Abra a pasta Domínio Utilitários e dê duplo clique no ícone Gerador de Relatórios,

para abrir a janela Conectando..., conforme a figura a seguir.

2. Nessa janela, digite o Nome do Usuário e a Senha para acessar o sistema. Em seguida

clique no botão Ok, para abrir a janela Domínio Gerador de Relatórios, conforme a

figura a seguir.

15

Page 16: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

3.1. Criando um Relatório no Modo de Edição Gráfica

Para criar um novo relatório em modo de edição gráfica, através do Gerador deRelatórios, proceda da seguinte maneira:

1. Clique no menu Arquivo, opção Novo, ou pressione as teclas de atalho CTRL+N, ou

ainda, clique diretamente no botão , na barra de ferramenta do sistema, para abrir a

janela Novo Relatório, conforme a figura a seguir.

2. No campo Título, digite o título de seu relatório.

3. No campo Classificação, selecione a Classificação onde será salvo esse relatório (ver item

2.).

4. No campo Tipo, selecione a opção Relatório.

5. No campo Modo edição, selecione a opção Gráfico.

O modo de edição Gráfico é para relatórios que serão impressos em impressoras jato

de tinta e laser, já o modo de edição Texto é para relatórios que serão impressos em

impressoras matriciais.

6. Clique no botão Ok, para confirmar os dados do relatório, para abrir a janela Definição da

Fonte de Dados.

3.2. Criando um Relatório no Modo de Edição Texto

Para criar um novo relatório em modo de edição texto, através do Gerador deRelatórios, proceda da seguinte maneira:

1. Clique no menu Arquivo, opção Novo, ou pressione as teclas de atalho CTRL+N, ou

ainda, clique diretamente no botão , na barra de ferramenta do sistema, para abrir a

janela Novo Relatório, conforme a figura a seguir.

16

Page 17: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

2. No campo Título, digite o título de seu relatório.

3. No campo Classificação, selecione a Classificação onde será salvo esse relatório (ver item

2.).

4. No campo Tipo, selecione a opção Relatório.

5. No campo Modo edição, selecione a opção Texto.

O modo de edição Gráfico é para relatórios que serão impressos em impressoras jato

de tinta e laser, já o modo de edição Texto é para relatórios que serão impressos em

impressoras matriciais.

6. Clique no botão Ok, para confirmar os dados do relatório, para abrir a janela Definição da

Fonte de Dados.

17

Page 18: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

4. Definindo Fontes de Dados

Após clicar no botão Ok, na janela Novo Relatório, se abrirá a janela Definição da

Fonte de Dados, conforme a figura a seguir.

4.1. Identificando Tabelas e Colunas

Na janela Definição da Fonte de Dados, cada pasta diz respeito a uma tabela. Sevocê clicar duas vezes sobre uma tabela, é apresentada uma relação de nomes em que cada umrepresenta uma determinada coluna da tabela.

Exemplo: - Tabela- (descrição + nome da coluna)

4.2. Adicionando Colunas ao Relatório

Suponha que o usuário tenha necessidade de imprimir um relatório dos funcionários daempresa com os seguintes dados: data de nascimento, nome, código e sexo. Para adicionaresses campos ao relatório, proceda da seguinte forma:

Dê dois cliques na pasta (amarela) para abri-la e, em seguida, mais dois cliques nacoluna desejada ou arraste-a para a área à direita, com o mouse. Observe a figura a seguir.

18

Page 19: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Observe que, em ambos os casos, a coluna passa automaticamente para o lado direitoda janela. Repita esse processo em todas as colunas que deseja adicionar ao seu relatório.

4.3. Removendo Colunas da Fonte de Dados

Caso o usuário tenha inserido uma coluna errada ou deseja que determinada colunanão apareça mais no relatório, será necessário removê-la. Para isto, basta dar dois cliques nacoluna desejada, que está localizada na parte direita da janela. Observe a figura a seguir.

19

�Dê duplo clique sobre a coluna desejada ou clique e arraste até o lado direito desta janela.

�Dê duplo clique sobre a coluna que você deseja remover.

Page 20: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

4.4. Definindo a Ordem do Relatório

Trata-se da ordem em que as informações serão exibidas na tela. Pode ser numérica oualfanumérica, ascendente ou descendente. Trata-se da cláusula ORDER BY da SQL.

Da mesma forma como você seleciona as colunas a serem impressas no relatório, iráescolher as colunas que irão compor a ordenação do relatório, porém, na guia Ordem dajanela de Definição da Fonte de Dados.

Quando você estabelece que um determinado campo irá fazer parte da ordem dorelatório, deve também definir se irá compor uma ordenação ascendente ou descendente. Aolado do campo existe um check que está setado automaticamente como ascendente, já que é otipo de ordenação mais freqüente. Basta desmarcar aquela opção para que a coluna determineuma ordem descendente. Veja a guia Ordem na figura a seguir.

4.4.1.Guia Seleção

A guia Seleção serve para filtrar as informações que serão impressas em um relatório.Como vimos até agora, sempre que se inclui uma coluna no relatório ou coloca-se umaordenação, é gerada a instrução SQL, que pode ser vista na guia SQL da janela de Definiçãoda Fonte de Dados.

Se queremos efetuar seleções, o processo é o mesmo. Vamos à guia Seleção edefinimos as mesmas. Quando escolhemos uma seleção, é gerada uma cláusula where na SQLdesse relatório, e podemos verificar isto na guia SQL. Se observarmos, funciona exatamentecomo vimos no curso de Introdução a SQL para o Domínio Gerador de Relatórios, pois lá,quando queríamos fazer seleções das informações, utilizávamos a cláusula where. Notetambém que nessa guia fazemos uso dos operadores lógicos e de condição, contudo, osmesmos estão escritos em português. Mas, se observarmos na guia SQL, iremos ver que elesestão escritos no formato que a SQL aceita, ou seja, no formato que foi explicado no curso de

20

Page 21: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Introdução a SQL para o Domínio Gerador de Relatórios. Veja a guia Seleção na figura aseguir.

4.4.2. Guia Computado

No curso Introdução a SQL para o Domínio Gerador de Relatórios, constatamosque poderíamos atribuir apelidos às colunas que seriam exibidas na tela através da cláusulaAS ou do sinal de atribuição (=). Também aprendemos como criar sub-consultas (subqueries).Agora vamos ver como utilizar esses recursos no Gerador de Relatórios, sendo que isto seráfeito pela guia Computados. Veja a guia Computado na figura a seguir.

A guia Computados é composta de duas colunas: Nome e Definição. Na colunaNome, você decidirá o possível apelido que dará a uma coluna que será exibida. Na coluna

21

Page 22: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Definição, indique o valor que será atribuído ao nome que acabou de criar. Você podesimplesmente conferir a esse nome uma coluna existente ou então considerar uma expressãomatemática, por exemplo. Em ambas as formas será criada uma coluna com o nome que vocêdefiniu dentro da SQL.

Se você atribuir uma SQL, estará criando uma sub-consulta. Basta observar comoficou a SQL na guia SQL e verá que é exatamente como foi estudado no curso de Introduçãoa SQL para o Domínio Gerador de Relatórios.

4.5. Propriedades do Relatório

Para verificar as propriedades de um relatório, proceda da seguinte maneira:

1. Clique no menu Relatório, opção Propriedades, ou clique diretamente no botão ,

na barra de ferramentas do Gerador de Relatórios, ou ainda clique em qualquer lugar na

área de edição do relatório com o botão auxiliar do mouse, opção Propriedades..., para

abrir a janela Propriedades do Relatório, conforme a figura a seguir.

2. Observe que as informações são as mesmas repassadas de quando se criou o relatório, com

exceção das alturas de cada banda e o campo S ub-relatório , que não será tratada nesse

curso.

4.6. Visualizando SQL Gerada

Nesse ponto, vamos observar o principal objetivo do curso de Introdução a SQL para oDomínio Gerador de Relatórios.

Se você analisar, tudo que estamos estabelecendo interativamente, utilizamos em SQL.Definimos até agora a tabela que iremos usar para extrair informações, quais as informações(colunas) e sua ordem de exibição. Não foi exatamente isto que fizemos no curso deIntrodução a SQL? Informávamos ao comando SQL, quais colunas, de que tabela e em queordem queríamos os dados. Para comprovar as afirmações anteriores, basta você acessar a

22

Page 23: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

guia SQL da janela de Definição da Fonte de Dados e observar que para cada ação nossafoi gerada uma instrução em SQL. Veja a figura a seguir.

Daqui para a frente, você pode fazer seus relatórios tanto de forma interativa, como

executamos até agora, quanto manualmente (o que não torna menos eficiente),

digitando os comandos SQL dentro da guia SQL vista acima. Contudo, observe que

se você fez alterações manuais na guia SQL, não poderá mais efetuar mudanças de

forma interativa nesse relatório. Enquanto adicionamos colunas em nosso relatório,

comandos de SQL estão sendo desenvolvidos sem que você perceba.

4.7. Propriedades dos Objetos no Relatório

Depois que você definiu todas as opções desejadas dentro da janela de Definição de

Fonte de Dados, basta dar um clique no botão Ok.

Dessa maneira você terá uma visualização de seu relatório com todas as disposiçõesdas colunas que você escolheu dentro do mesmo. Na banda do cabeçalho, você verá os títulosdas colunas e na banda de detalhe você verá as próprias colunas, ao dar um clique duplo sobrequalquer uma das colunas você terá acesso as propriedades dessa coluna, na janela ObjetoColuna, conforme a figura a seguir.

23

Page 24: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

A janela que aparece é divida em guias, que serão detalhadas a seguir.

4.7.1. Guia Geral

Nome: Nesse campo é exibido o nome do objeto.

Borda: Caso a borda esteja sólida, esse campo será impresso com borda;

se estiver no transparente, será impresso sem borda.

Alinhamento: Esse alinhamento é o do texto do objeto.

4.7.2. Guia Fonte

Fonte: Muda o tipo da letra (fonte) do texto no objeto selecionado.

Estilo: Altera o estilo da fonte.

Tamanho: Altera o tamanho da fonte.

24

Page 25: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Efeitos: Quando selecionado, coloca um efeito de sublinhado ou tachado

na fonte.

Exemplo : Apresenta uma pré-visulização das alterações feitas nas fontes.

Cor do texto : Altera a cor da fonte.

Cor do fundo: Altera a cor do fundo do objeto.

4.7.3. Guia Posição

X: Altera a posição horizontal do objeto selecionado.

Y: Altera a posição vertical do objeto selecionado.

Largura: Altera a largura horizontal do objeto.

Altura: Altera a altura do objeto.

4.7.4. Guia Formato

25

Page 26: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Tipo de dado: Tipo da informação (numérico, data, caracter, hora).

Formato: O formato como texto ou número será impresso.

Valor teste: Testa o formato escolhido acima.

Exemplos de formato: São os tipos de formato que podem ser escolhidos.

26

Page 27: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

5. Visualizando Relatório

5.1. Barra de Ferramentas na Edição de Relatórios

As barras de ferramentas permitem que você organize os comandos no Gerador deRelatório da maneira que desejar, para localizá-los e usá-los com rapidez.

O Gerador de Relatórios, possui 02 (duas) barras de ferramentas, conforme a figuraa seguir.

Veja a função de cada um dos botões dessas barras de ferramentas.

1. Inicia um novo relatório.

2. Abre um relatório existente.

3. Salva o relatório.

4. Fecha o relatório.

5. Desfaz a última ação realizada.

6. Recorta o objeto selecionado e o envia para a área de transferência.

7. Copia o objeto selecionado e envia a cópia para a área de transferência.

8. Insere no relatório o objeto que está na área de transferência.

9. Apaga (exclui) o objeto selecionado.

10. Insere um novo objeto no relatório.

11. Altera a cor da fonte (letra).

12. Altera a cor do fundo do objeto selecionado.

13. Alinha ou redimensiona objetos em proporção de um para outro. É necessário que

mais de um objeto esteja selecionado.

14. Abre a janela de Definição da Fonte de Dados.

15. Mostra a janela com as propriedades do relatório.

16. Visualiza o relatório.

17. Fecha o Gerador de Relatórios.

18. Altera o tipo de fonte (letra).

27

Page 28: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

19. Altera o tamanho da fonte (letra).

20. Coloca a fonte (letra) em negrito.

21. Coloca a fonte (letra) em itálico.

22. Sublinha a fonte (letra).

23. Coloca um risco sobre a fonte (letra).

24. Alinha o texto à esquerda.

25. Centraliza o texto.

26. Alinha o texto à direita.

27. Justifica o texto (deixando-o alinhado tanto na esquerda quanto na direta).

Detalharemos agora o uso do item de número 13 da barra de ferramentas.

13.1. Alinha os objetos pela esquerda, quando selecionados. Esse alinhamento é sempre

relativo ao primeiro objeto selecionado.

13.2. Alinha os objetos pela direita, quando selecionados. Esse alinhamento é sempre

relativo ao primeiro objeto selecionado.

13.3. Alinha os objetos horizontalmente pelo centro, quando selecionados. Esse

alinhamento é sempre relativo ao primeiro objeto selecionado.

13.4. Alinha os objetos verticalmente pelo centro, quando selecionados. Esse

alinhamento é sempre relativo ao primeiro objeto selecionado.

13.5. Alinha os objetos pelo topo, quando selecionados. Esse alinhamento é sempre

relativo ao primeiro objeto selecionado.

13.6. Alinha os objetos pela base, quando selecionados. Esse alinhamento é sempre

relativo ao primeiro objeto selecionado.

28

Page 29: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

13.7. Esse item reajusta o espaçamento horizontalmente entre os objetos.

13.8. Esse item reajusta o espaçamento verticalmente entre os objetos.

13.9. Nesse item será realizado um redimensionamento horizontal do tamanho do

objeto. Esse redimensionamento será sempre feito em relação ao primeiro objeto

selecionado, ou seja, se o primeiro objeto selecionado for maior, automaticamente

o objeto menor ficará maior, caso contrário será o inverso.

13.10. Nesse item será realizado um redimensionamento vertical do tamanho do objeto.

Esse redimensionamento será sempre feito em relação ao primeiro objeto

selecionado, ou seja, se o primeiro objeto selecionado for maior, automaticamente

o objeto menor ficará maior, caso contrário será o inverso.

5.2. Identificando as Bandas de um Relatório

Qualquer tipo de relatório possui, geralmente, uma subdivisão que identifica o seuobjetivo, quando foi feito, etc. Em nosso Gerador de Relatórios não é diferente. Essassubdivisões são chamadas de bandas. As bandas reconhecem as áreas em que certos tipos deinformações serão exibidas.

O que determina onde cada informação deve ser exibida é o grau de variação dessetipo de informação, ou seja, dados que serão sempre os mesmos (como datas de emissão derelatórios), em geral, são dispostos no cabeçalho ou rodapé da página do relatório.Evidentemente, existem informações que podem variar a cada página, como a numeração,mas também são exibidas no cabeçalho ou rodapé.

As informações que possuem alto grau de variação são exibidas no corpo do relatório;ele dispõe de diversas linhas para isto. Também existem informações que devem aparecersomente uma vez no relatório. Essas podem ser impressas na seção que totaliza o relatório eque exibe informações que são um resumo do que foi exibido anteriormente.

No Gerador de Relatórios dispomos das seguintes bandas:

Cabeçalho: onde geralmente são exibidas informações que não mudarão durante orelatório. Essa banda também é utilizada para exibir dados que dizem respeito ao objetivo dorelatório, que tipos de informações se quer exibir abaixo, a quem pertence essas informações,título do relatório, data de emissão, etc. A numeração também se usa nessa banda, já que é porpágina impressa.

29

Page 30: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Detalhe: onde geralmente são exibidas as informações que sofrem variação durante orelatório. Esta é a seção que possuirá mais linhas e ocupará maior parte de uma folhaimpressa. Nessa banda serão mostradas as informações referentes às colunas que vocêselecionou.

Sumário: essa banda aparece apenas uma vez, no final do relatório. É utilizada paraimprimir informações resumidas, geralmente totais, baseados nos valores listados na bandadetalhe.

Rodapé: essa banda aparece no rodapé de cada folha impressa. Assim como a bandacabeçalho, aparece apenas uma vez em cada folha e serve para exibir informações que nãoirão mudar durante o relatório, tais como data, hora, e até mesmo numeração de página.Contudo, também podemos utilizar o rodapé para exibir informações resumidas referentes aoque foi mostrado na banda detalhe, na página atual, semelhante ao funcionamento da bandasumário.

As informações contidas em cada banda só serão exibidas se a altura da sua banda

for suficiente para que a informação apareça por inteiro. Caso contrário, poderá

haver truncamento de informações ou até mesmo nada será exibido.

5.3. Identificando Objetos

Como vimos, em nosso relatório existem vários objetos dispostos dentro das bandas.Temos que, inicialmente, aprender a identificar cada um para, mais tarde, sabermos qualutilizar.

30

Veja aqui as bandas disponíveis.

Page 31: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Para identificar esses objetos, observe primeiramente a parte inferior do Gerador deRelatórios. Nela há uma barra de status contendo as informações referente ao objetoselecionado. Observe a seguir, a figura da barra de status.

Esse é o objeto selecionado

Barra de StatusNessa barra mostra algumas propriedades do objeto selecionado.

5.4. Tipos de Objetos

Os tipos de objetos que podem ser inseridos dentro de um relatório constam na barrade ferramentas, conforme mostra a figura a seguir. Dentre eles, todos merecem atenção, masnão iremos utilizar todos durante este curso.

Veja a função de cada um dos botões dessa barra de ferramenta.

31

Nom

e do

objeto

Posição

horizon

tal d

o ob

jeto

Posição

vertica

l do ob

jeto

Largu

ra do ob

jeto

Altura do

objeto

Page 32: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

10.1. Texto – Objeto utilizado para inserir palavras, frases e títulos. Enfim, todos os tipos

de caracteres alfanuméricos que durante o relatório ficam iguais.

10.2. Figura – Objeto utilizado para inserir figuras, imagens e fotos dentro dos

relatórios.

10.3. Coluna – Objeto que representa as colunas selecionadas interativamente na

Definição da Fonte de Dados ou escritas manualmente na guia SQL dessa

mesma janela. Sempre que for necessário mostrar uma coluna existente em minha

SQL, escolho esse tipo de objeto e, depois, indico em qual local quero que a

informação seja exibida. Em seguida, será aberta uma lista de todas as colunas

existentes (ver a figura a seguir) em minha SQL para que eu possa referenciar esse

objeto a uma delas.

10.4. Computado – Através dele é possível executar várias ações. Por exemplo: inserir o

valor de uma coluna existente na SQL, sem utilizar o objeto coluna. Basta informar

o nome dessa coluna no objeto computado. Também pode-se montar vários tipos de

expressões com a utilização das funções disponíveis para o objeto computado. E,

ainda, exibir um simples texto, eliminando o uso do objeto texto. Esse tipo de

objeto realiza tudo que os objetos texto e coluna fazem e um pouco mais.

10.5. Linha – Serve para inserir uma linha vertical ou horizontal no relatório.

10.6. Círculo – Serve para inserir um círculo no relatório.

10.7. Retângulo – Serve para inserir um retângulo no relatório.

10.8. Retângulo redondo – Serve para inserir um retângulo com cantos arredondados no

relatório.

Existem algumas combinações dos tipos de objetos anteriores que servem para

agilizar na criação de relatórios.

32

Page 33: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

10.9. Página – Serve para inserir a numeração de página no relatório. Note que nada

mais é do que um objeto computado com uma expressão dentro.

10.10. Data atual – Serve para inserir a data atual (data do computador) no relatório.

Note que nada mais é do que um objeto computado com uma expressão dentro.

10.11. Hora atual – Serve para inserir a hora atual (hora do computador) no relatório.

Note que nada mais é do que um objeto computado com uma expressão dentro.

10.12. Sub-relatório – Serve para inserir sub-relatórios dentro do relatório atual. Ele tem

grande importância, porém não será enfocado nesse curso.

5.5. Propriedades dos Objetos

Durante esse item estudaremos dois tipos de objetos: o objeto computado e o objetotexto.

Objeto computado: dispõe de várias funções. Você pode efetuar cálculos, adicionarcolunas, utilizar expressões e funções do Gerador de Relatórios.

Objeto texto: este tem a finalidade de adicionar títulos, mensagens e textos. Porémnão se permite a utilização de funções ou expressões.

5.6. Executando o Relatório

Para executar o relatório, clique no botão , na barra de ferramentas do Geradorde Relatórios.

5.7. Definição de Argumentos

Até agora falamos sobre a janela Definição da Fonte de Dados, onde podemosconstruir nossos relatórios de forma interativa. No entanto, deixamos de comentar sobre umadas guias dessa janela, que é a guia Argumentos.

Os argumentos são, na verdade, seleções, valores que irão filtrar dados. Por exemplo:vamos supor que eu queira selecionar todos os funcionários admitidos dentro de umdeterminado período; uma das maneiras seria colocar esse determinado período dentro dorelatório; contudo, se assim eu fizer, sempre, ao utilizar esse relatório para um períododiferente, terei que alterar o mesmo.

33

Page 34: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Para facilitar o manuseio, os argumentos foram introduzidos para se informar os dadosque irão filtrar as informações enquanto se executa um relatório. Para o exemplo citado,sempre que se for exibir o relatório por período, é necessário informar a data inicial e finalreferentes ao período de seleção dos funcionários.

Para informarmos a data inicial e final, teremos que informar dois argumentos do tipodata. Para criar argumentos, vamos à janela Definição da Fonte de Dados, na guiaArgumentos, conforme a figura a seguir.

Vamos descrever, então, cada coluna dessa guia:

Classif.: trata-se da classificação do argumento. Pode ser um argumento comum,quando um único valor será informado ou Seleção, onde se pode informar váriosargumentos, intervalo de códigos e outros; assim como funciona nos relatórios existentes nasaplicações da Domínio Sistemas. Se você escolher a classificação Seleção, o valor a serinformado na coluna “nome” deverá ser uma coluna existente dentro da SQL.

Nome do argumento/Nome do banco: é o nome do argumento que será utilizadopara a comparação dentro da SQL. Deve ser, geralmente, um nome descritivo, que identifiqueo seu conteúdo.

Tipo: identifica o tipo do argumento, se o que você vai passar para o relatório comoparâmetro será um número, data, string, etc.

Texto: texto descritivo para informar qual tipo de informação conterá esse argumento.Esse texto será mostrado também no Gerenciador de Relatórios.

Obrig.: identifica se o valor desse argumento é obrigatório. Se o tipo da classificaçãofor argumento, será sempre obrigatório.

34

Page 35: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Mensagem de erro: uma mensagem que você quer que apareça, no caso de ocorreralgum erro com esse argumento.

Valor inicial: um valor inicial (default) que você quer que apareça nesse argumento,sempre que for executar o relatório. Lembre-se de que o valor será apenas sugerido e pode seralterado.

Digitar: identifica se você irá ou não digitar o argumento criado. Por exemplo: vocêpode definir um argumento, colocar o valor inicial e dizer que não vai digitar. Quandoexecutar esse relatório, não será pedida a informação referente a esse argumento, pois vocêdisse que não quer digitá-lo. O argumento irá considerar o valor inicial setado.

Para esse caso, onde teríamos um período (datas inicial e final) para selecionar osfuncionários, considerando a data de admissão. Teríamos que criar dois argumentos deClassificação Argumento, Nome dtInicial e dtFinal por exemplo, do Tipo data, o Textopoderia ser “Data Inicial” e “Data Final”, Obrig. seria “Sim”, Mensagem de erro poderiaser “Data inválida!”, Valor Inicial não teria nada e Digitar seria “Sim”.

Os argumentos criados serão bastante utilizados na guia Seleção, mas também naguia Computados. Podem, ainda, ser manualmente referenciados dentro da sintaxe da SQL,na guia SQL.

35

Page 36: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

6. Quebras de Relatório & União

6.1. Identificando Quebra

Existem informações em alguns relatórios que devem ser dispostas de forma agrupada,a fim de auxiliar sua análise. Imagine um relatório de funcionários classificado por cargo,exibidos em forma de lista. Seria, com certeza, desgastante de se fazer uma análise econseguir agrupar todos os funcionários pertencentes ao mesmo cargo. Mesmo que essalistagem fosse exibida por ordem de nome ou código do cargo, seria cansativa a análise, poisseu leiaute ficaria pouco amigável.

Para resolver esse tipo de problema, vamos estudar mais duas bandas que, até então,não tinham sido comentadas: Cabeçalho de Grupo e Rodapé de Grupo.

Posso desejar que um relatório quebre por um determinado valor. Para isso,precisamos que todas as linhas impressas no relatório, que possuem esse valor, sejamimpressas em seqüência. Voltando ao exemplo, se eu desejar que o meu relatório defuncionários quebre por cargo, então todos pertencentes ao mesmo cargo devem ser impressosem seqüência.

Sempre que se iniciar uma nova seqüência de funcionários a serem exibidos, ao mudaro cargo, serão impressos os objetos que estiverem na banda Cabeçalho do Grupo.

Ao terminar todos os funcionários de um determinado cargo, e antes de iniciar umanova seqüência, serão impressos os objetos que estiverem na banda Rodapé do Grupo.

Se, em alguma dessas duas bandas, não existirem objetos a serem exibidos, e a suaaltura for superior a zero, esse espaço será impresso na tela e na impressora.

Geralmente é impresso na banda Cabeçalho do Grupo o valor pelo qual está sequebrando o relatório. No exemplo acima seriam impressos o código do cargo e, com certeza,o nome, já que o código é uma informação pouco descritiva.

Já na banda Rodapé do Grupo, geralmente são impressas as informações resumidasreferentes às linhas que foram impressas na banda detalhe para o último valor que foiquebrado o relatório, isto é, baseado no exemplo acima poderíamos imprimir o total do saláriode todos os funcionários pertencentes ao grupo que foi listado.

Um mesmo relatório pode ter mais de uma quebra, pois às vezes queremos agrupar asinformações dentro de um grupo existente. Cada quebra criada terá uma banda Cabeçalhodo Grupo e uma banda Rodapé do Grupo.

6.2. Inserindo Quebras

Para inserir uma quebra no Gerador de Relatórios, proceda da seguintes maneira:

36

Page 37: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

1. Clique no menu Relatórios, opção Quebras, para abrir a janela Quebras, conforme a

figura a seguir.

2. Observe que essa janela possui três quadros: Quebras, Itens disponíveis e Itens para

quebrar.

3. No quadro Quebras, deve-se clicar no botão direito para inserir uma nova quebra. Ao

inserir, você poderá selecionar qual coluna (item) irá quebrar, com um duplo clique em

cima da coluna que está listada no quadro Itens disponíveis. Perceba que,

automaticamente, o item selecionado aparece no quadro Itens para quebrar. Você pode

também utilizar os recursos de arrastar e soltar.

4. Observe que, para uma mesma quebra, você pode selecionar mais de um valor, o que

depende da sua necessidade.

5. Existem dois campos úteis dentro dessa mesma janela:

• Nova página na quebra : cada vez que quebrar o relatório, irá começar a imprimir em

uma nova página.

• Zerar página na quebra : cada vez que quebrar o relatório, irá iniciar novamente a

numeração de página.

6. Para utilizar um desses campos, basta selecioná-los.

7. Para concluir, clique no botão Ok, e observe como novas bandas são automaticamente

inseridas dentro da área de edição do relatório.

37

Page 38: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

6.3. Removendo Quebra

Para excluir uma quebra, basta voltar na mesma janela, mostrada anteriormente,selecionar qual quebra deseja excluir e eliminar todas as colunas presentes no quadro Itenspara quebrar.

6.4. Construindo uma Expressão

As expressões, assim como na matemática, são formadas por mais de um membro, emque cada um é separado por um operador aritmético.

Existem várias formas e locais onde podemos definir expressões dentro do Geradorde Relatórios. Para isto, podemos utilizar funções do Gerador de Relatórios.

As funções do Gerador de Relatórios funcionam exatamente como as que foramvistas no curso de Introdução a SQL para o Domínio Gerador de Relatórios. Apesar dealgumas funções do Gerador de Relatórios possuírem o mesmo nome das funções da SQL eaté executarem a mesma ação, elas não fazem parte da SQL e vice-versa, ou seja, não serápossível utilizar uma função do Gerador de Relatórios dentro da SQL, assim como não serápossível o inverso.

Até agora vimos que na área de edição do relatório podemos ter objetos Computados,que será o nosso enfoque para explicar a construção de expressões, pois, na maioria das vezes,utilizamos objetos computados para isto.

Note que, quando entramos nas propriedades dos objetos computados, na guia Geral,existe um campo chamado Expressão. É nesse campo que digitaremos as nossas expressõese utilizaremos as funções do Gerador de Relatórios. Observe a figura a seguir.

Para montar minha expressão, posso utilizar o valor de uma coluna que está presentena SQL e, como foi comentado, usar funções. Porém, na maioria das vezes, não lembro osnomes de todas as colunas presentes na SQL e a sintaxe das funções disponíveis peloGerador de Relatórios. Para nos auxiliar, existe o botão Expandir na janela mostrada

38

Page 39: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

anteriormente. Quando você clicar nele, será aberta a janela Edite a Expressão, conforme afigura a seguir.

Ficou fácil, então, identificar que existe uma área com todas as funções do Geradorde Relatórios, outra com todas as colunas utilizadas dentro da SQL do relatório em questão.Você pode clicar em qualquer uma das duas e o item será selecionado para a área de edição daexpressão.

Na área de edição, você pode efetuar concatenação de strings, mandar imprimir umacoluna e utilizar funções das mais variadas formas. Observe que, quando você cria um novorelatório, e são automaticamente inclusos os computados para a numeração de página e datada impressão, esses computados utilizam uma expressão cada um.

O computado da data de impressão possui a seguinte expressão:

“Data: ” + string ( today(), "dd/mm/yyyy" ) – Está concatenando (somando) a string

“Data: ” a data atual no formato dia/mês/ano com quatro dígitos. Essa expressão utiliza afunção Today() que retorna à data atual (note que não utiliza parâmetros) e a função string,para converter para string o resultado da primeira função, pois como vimos no curso de SQL,só poderemos somar a uma string outra string.

Existem várias funções no Gerador de Relatórios, mas vamos explicar apenas as maisutilizadas, que estão listadas a seguir:

sum (#x for group x): serve para sub totalizar grupos, ou seja, quando o seu relatóriopossuir quebras e você deseja que um determinado valor seja sub totalizado, no lugar de x#coloque o nome da coluna que você deseja sub totalizar e no lugar do “x” coloque o númerodo grupo. Geralmente é utilizado na banda Rodapé do Grupo ou Cabeçalho do Grupo.

sum (#x for all ) : serve para totalizar algum valor do relatório. No lugar do x# coloqueo nome da coluna que deseja sub totalizar.

sum (#x for page ) : serve para totalizar algum valor do relatório, por página. No lugardo x# coloque o nome da coluna que deseja sub totalizar.

string(x,s): converte um valor que não seja string para uma string. No lugar do “x”coloque o valor que deseja converter e no lugar do “s” uma possível máscara.

39

Page 40: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

len (s) : retorna o total de caracteres de uma string.

left(s,n): extrai um número “n” de caracteres de uma string “s” a partir da esquerda.

mid (s,inicio,tamanho) : extrai alguns caracteres de uma string “s”, a partir da posição“inicio”. Extrairá tantos caracteres quanto estiver definido no parâmetro “tamanho”.

page( ): retorna o número da página atual.

pagecount ( ) : retorna o total de páginas do relatório.

Today( ): retorna a data atual do computador.

Trim (s) : elimina os brancos à esquerda e à direta de uma string “s”.

Sempre que você quiser saber se sua expressão está escrita da forma correta, clique

no botão Verificar, que retornará uma mensagem indicando se está tudo certo (OK)

ou não, conforme as figuras a seguir.

6.5. União

Como vimos no curso de Introdução a SQL para o Domínio Gerador de Relatórios,existem situações em que apenas uma SQL não basta para que possamos ter impressas todasas informações e da forma que desejamos. Sendo assim, um recurso que podemos utilizar emSQL é a criação de Uniões (UNION). No Gerador de Relatórios também temos o mesmorecurso, ainda agradável de se usar.

Até agora aprendemos a fazer um relatório, com a utilização dos recursos gráficos dajanela Definição da Fonte de Dados e manualmente através da simples digitação da SQL,na guia SQL da mesma janela anterior.

Se você observar, na janela Definição da Fonte de Dados, existe o botão União...,

clique nele, para abrir a janela Uniões, conforme a figura a seguir.

40

Page 41: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Nessa janela, clique no botão Nova, e uma nova janela Definição da Fonte deDados se abrirá. Ela será apresentada para definirmos uma nova SQL. Assim, futuramente, osdados serão impressos juntamente com os dados das demais SQL’s.

Todas as regras de utilização de Uniões são iguais às utilizadas na SQL, isto é, todas asuniões devem ter o mesmo número de colunas na estrutura das suas SQL’s e a cláusulaORDER BY deve aparecer sempre na última SQL.

41

Page 42: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

7. Utilitários do Gerador de Relatório

7.1. Introdução

Neste módulo estudaremos os comandos de importação e exportação de relatórios.

7.2. Objetivo

Ao final desse módulo, você estará apto a:

• Exportar relatórios de outras bases de dados;• Importar um relatório de uma base de dados para outra.

7.3. Exportação

Essa opção é útil quando você possui um relatório pronto e precisa do mesmo emoutro local (banco).

Para selecionar a opção de exportação do Gerador de Relatórios, proceda daseguinte maneira:

1. Clique no menu Utilitários, opção Exportar..., para abrir a janela Exportação,

conforme a figura a seguir.

2. Serão apresentadas, nessa janela, as classificações de relatórios; juntamente com todos os

relatórios ligados a elas. Para você exportar o relatório, basta clicar sobre o mesmo, que os

campos Salvar e Arquivo serão habilitados.

3. Você pode exportar de três maneiras: em Arquivo Domínio Gerador, em Arquivo

Texto e em PBL. Para o nosso curso, é interessante apenas o primeiro modo (em

Arquivo Domínio Gerador).42

Page 43: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

4. O arquivo a ser gravado em disco possuirá a extensão .bgr e poderá ser importado para

outro banco através da opção Importar.

7.4. Importação

Vamos supor que você precise de um relatório feito por outra pessoa no Gerador deRelatórios, mas esse relatório foi efetuado em um banco, que não é o que você estátrabalhando agora. Sabendo de que os bancos de dados possuem a mesma versão, você podeeconomizar tempo não fazendo um novo relatório e sim importando o relatório.

Para isso, proceda da seguinte maneira:

1. Clique no menu Utilitários, opção Importar, para abrir a janela Importação, conforme a

figura a seguir.

2. Você pode importar de três maneiras: de Arquivo Domínio Gerador, de Arquivo

Texto e de PBL. Para o nosso curso, apenas nos interessa a primeira alternativa (de

Arquivo Domínio Gerador).

3. Quando escolhemos essa opção, significa que iremos importar um relatório que foi feito no

Gerador de Relatórios. Você, então, deve informar o nome do arquivo a ser importado,

sendo que os arquivos do Domínio Gerador de Relatórios, possuem a extensão .bgr.

4. Quando você seleciona o arquivo, são mostradas algumas informações sobre o relatório

que está sendo importado nos campos: Classificação, Título e Tipo.

43

Page 44: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Daqui em diante, você pode utilizar todo o conhecimento adquirido para darmanutenção a esse relatório.

7.5. Configurando Área de Edição

Ao clicar no menu Utilitários, e em Opções, abrirá a janela Opções do Relatório,conforme a figura a seguir. Essa opção pode contribuir na construção de relatórios. Trata-sebasicamente de uma série de configurações que serão utilizadas dentro da área de edição dorelatório, de modo a automatizar certos tipos de operações que você faria manualmente.

Iremos explicar cada campo dessa janela, de forma que você possa fazer melhor usoconfigurações.

• Gerar cabeçalho em relatórios novos : você deve ter percebido que, quando criamos

um relatório novo, o mesmo vem com título do relatório, página, data, etc. Isto acontece

porque esse campo está selecionado, pois, do contrário, tais informações não seriam

setadas automaticamente. As informações que são setadas automaticamente seguem o

mesmo padrão dos relatórios da Domínio Sistemas.

• Gerar título do relatório : quando este campo está selecionado, será colocado

automaticamente um computado com o título do relatório.

• Gerar computado com página : se este campo for selecionado, será colocado

automaticamente um computado com a numeração de página.

• Gerar computado com a data : ao selecionar este campo, será colocado

automaticamente um computado com a data atual (data do computador).

• Gerar título das colunas : quando esse campo está selecionado, será colocado

automaticamente um objeto texto que identifica cada coluna no relatório impresso.

44

Page 45: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

Os itens anteriores só serão impressos se o campo Gerar cabeçalho em relatóriosnovos estiver selecionado.

• Gerar detalhe : quando esse campo está selecionado e criamos um relatório novo, os

campos são automaticamente colocados na banda detalhe. Se não estiver selecionado,

não será colocado, porém a SQL vai ser gerada normalmente e você terá que incluir os

campos manualmente.

• Gerar só na primeira vez : com esse campo selecionado, as colunas só serão inclusas

automaticamente na área de edição do relatório na primeira vez, na sua criação.

• Gerar colunas toda vez que mudar a SQL : com esse campo selecionado, as colunas

serão inclusas automaticamente na área de edição do relatório toda vez que for inclusa

uma coluna nova na SQL.

• Gerar sumário : quando esse campo está selecionado, será gerada a banda sumário

automaticamente, com o total de registros do relatório.

• Gerar Rodapé : quando esse campo está selecionado, será gerada a banda rodapé

automaticamente.

• Gerar computado com a hora : quando esse campo estiver selecionado, será colocado

automaticamente um computado com a hora na banda rodapé.

45

Page 46: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

8. Exercícios

1. Criar um relatório de contas, com modo de edição texto, conforme a figura a seguir,utilizando a tabela Contas Contabeis (ctcontas) para as colunas codi_cta, nome_cta,clas_cta e tipo_cta. Também deverá ser criado um argumento para informar o código daempresa desejada e esse relatório deverá ser ordenado pela classificação da conta.

46

Page 47: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

2. Nesse exercício, será repetido o relatório anterior (modo de edição gráfico), porém comalgumas alterações, conforme a figura a seguir. Será necessário utilizar as seguintestabelas:

• Parametros da Contabilidade (ctparmto) para a coluna masc_par.• Empresa (geempre) para a coluna nome_emp.

• Será necessário incluir o nome da empresa no cabeçalho do relatório.• Será utilizada a função IdentaConta( ), para identar a coluna nome_cta.• Será utilizada a função MontaMascara( ) para a coluna clas_cta.• Será utilizada a tabela de valores para retornar a descrição da coluna tipo_cta.• Será feito uma seleção para indicar que a coluna codi_emp da tabela ctcontas seja igual

a coluna codi_emp da tabela ctparmto.

47

Page 48: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

3. Criar um relatório de históricos padrões, com modo de edição gráfico, conforme a figura aseguir, utilizando as tabelas:

• Historicos Padroes (cthispad) para as colunas codi_his e desc_his.• Empresa (geempre) para a coluna nome_emp.• Também deverá ser criado um argumento para informar o código da empresa desejada e

esse relatório deverá ser ordenado pelo código do histórico.

48

Page 49: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

4. Criar um relatório de lançamentos, com modo de edição gráfico, conforme a figura aseguir, utilizando a tabela Lancamentos Contabeis (ctlancto) para as colunas nume_lan,data_lan, vlor_lan, cdeb_lan, ccre_lan, codi_his e fili_lan.

• Também deverá ser criado três argumentos para informar o código da empresa, a datainicial dos lançamentos e a data final dos lançamentos.

• Esse relatório deverá ser ordenado pela data do lançamento.

49

Page 50: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

5. Criar um relatório de lançamentos, com modo de edição texto, conforme a figura a seguir,utilizando a tabela Lancamentos Contabeis (ctlancto) para as colunas nume_lan, data_lan,vlor_lan, cdeb_lan, ccre_lan e codi_his.

• Também deverá ser criado um argumento para informar o código da empresa.• Esse relatório deverá ser ordenado primeiramente pela data do lançamento e após pelo

número do lançamento.• Deverá ser feito uma quebra pela data do lançamento.• Deverá ser incluído um computado no rodapé da quebra, que mostre o total de

lançamentos naquela data.• A data do lançamento deverá ser colocada no cabeçalho da quebra.

50

Page 51: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

6. Criar um relatório de fornecedores, com modo de edição texto, conforme a figura a seguir,utilizando as tabelas:

• Fornecedores (effornece) para as colunas sigl_est, nomr_for e nome_for.• Estados (efestados) para a coluna nome_est.

• Também deverá ser criado um argumento para informar o código da empresa.• Esse relatório deverá ser ordenado primeiramente pela sigla do estado e após pelo nome

do fornecedor.• Deverá ser feito uma quebra pela sigla do estado.• A sigla e o nome do estado deverão ser colocados no cabeçalho da quebra.• Será feito uma seleção para indicar que a coluna sigl_est da tabela efestados seja igual a

coluna sigl_est da tabela effornece.

51

Page 52: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

7. Criar um contrato de experiência, com modo de edição gráfico, conforme a figura a seguir,utilizando as tabelas:

• Empresa (geempre) para as colunas nome_emp, ende_emp, cida_emp, esta_emp,no.endereco (nume_emp) e bair_emp.

• Cadastro de Empregados (foempregados) para as colunas nome, categoria, cart_prof,serie_cart_prof, salario e i_cargos.

• Cadastro de Cargos (focargos) para a coluna nome.

• Também deverá ser criado três argumentos para informar o código da empresa, o códigodo funcionário e a data de emissão do contrato.

• Deverá ser criado um computado com nome tot_dias para trazer o número de dias para avigência do contrato. Definição para esse computado:isnull(days(bethadba.foempregados.ini_praz_det,bethadba.foempregados.fim_praz_det), 0)

52

Page 53: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

8. Criar um relatório de fornecedores e clientes (união), com modo de edição texto, conformea figura a seguir, utilizando a tabela:

• Fornecedores (effornece) para as colunas codi_for, sigl_est, nomr_for e nome_for.• Deverá ser criado também, na guia computado, um computado com nome Tipo e

Definição 'F'.

Na união utilize a tabela:

• Clientes (efclientes) para as colunas codi_cli, sigl_est, nomr_cli e nome_cli.• Deverá ser criado também, na guia computado, um computado com nome Tipo e

Definição 'C'.

• Também deverá ser criado um argumento para informar o código da empresa.• Esse relatório deverá ser ordenado primeiramente pelo tipo e após pela sigla do estado.• Deverá ser feito uma quebra pelo tipo e outra pela sigla do estado.• O tipo deverá ser colocado no cabeçalho da 1ª quebra.• A sigla do estado deverá ser colocada no cabeçalho da 2ª quebra.• Deverá ser incluído um computado no rodapé da 1ª quebra, que mostre o total de

clientes e o total de fornecedores.

53

Page 54: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

9. Criar um relatório de notas, com modo de edição texto, conforme a figura a seguir,utilizando as tabelas:

• Notas de Entradas (efentradas) para as colunas codi_ent, codi_for, codi_esp, codi_acu,codi_nat, nume_ent, seri_ent, dent_ent, ddoc_ent, vcon_ent e codi_usu.

• Empresa para a coluna nome_emp.

• Também deverá ser criado três argumentos para informar o código da empresa, a data deentrada inicial das notas e a data de entrada final das notas.

• Esse relatório deverá ser ordenado pelo número da entrada.• O nome da empresa deverá ser colocado no cabeçalho do relatório.• Deverá ser incluído um computado no rodapé sumário do relatório que mostre a soma

da coluna valor.

54

Page 55: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

10.Criar um relatório empregados, com modo de edição texto, conforme a figura a seguir,utilizando a tabela:

• Cadastro de Empregados (foempregados) para as colunas i_empregados, nome,admissao, salario, sexo e cpf.

• Empresa para a coluna nome_emp.

• Também deverá ser criado um argumento para informar o código da empresa.• Esse relatório deverá ser ordenado pelo nome do empregado.• O nome da empresa deverá ser colocado no cabeçalho do relatório.• Deverá ser incluído um computado no sumário do relatório que mostre a soma da

coluna salário.

55

Page 56: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

56

Page 57: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

57

Page 58: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

58

Page 59: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

59

Page 60: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

60

Page 61: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

61

Page 62: Saiba que este documento não poderá ser reproduzido, seja ...pcsolucoes.net.br/arquivos/XGeral/Diversos%20-%20Gerador%20de%20... · Para entrar em contato com o nosso Centro de

Centro de Treinamento Domínio Construindo uma marca forte.

9. Funções Importantes do Gerador de Relatórios

avg(#x for all) - Média

case(x when a then b when c then d... else e) - Caso x então a caso b então c.. senão e

count() - Contador

cumulativeSum(#x for all) - Soma cumulativa

currentRow() - Retorna a linha atual

day() - Retorno o dia da data especificada

fill(s,x) - Preencher com o caracter s, x vezes

if(b, t, f) - Se (b, verdadeiro, falso)

len(s) - Conta os caracteres de s

lower(s) - Muda para minúscula os caracteres de s

page() - Retorna o número da página atual

pageCount() - Retorna o total de páginas

round(x,x) - Arredonda o número x para x casas decimais

string(x,s) - Converte x em string

today() - Retorna a data do micro

truncate(x,y) - Corta de x, y casas decimais

upper(s) - Muda para maiúscula os caracteres de s

wordcap(s) - Muda para maiúscula o 1º caracter de s

62