0% acharam este documento útil (0 voto)
5 visualizações13 páginas

Tutorial Completo de Oracle Reports

O documento fornece uma introdução ao software Oracle Reports, que permite criar relatórios a partir de dados armazenados. Explica que o Oracle Reports permite definir consultas a bancos de dados, realizar cálculos e somas de dados, e projetar a apresentação visual dos relatórios. Também mostra um exemplo prático de como criar um relatório que mostre as notas dos estudantes em diferentes disciplinas.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
5 visualizações13 páginas

Tutorial Completo de Oracle Reports

O documento fornece uma introdução ao software Oracle Reports, que permite criar relatórios a partir de dados armazenados. Explica que o Oracle Reports permite definir consultas a bancos de dados, realizar cálculos e somas de dados, e projetar a apresentação visual dos relatórios. Também mostra um exemplo prático de como criar um relatório que mostre as notas dos estudantes em diferentes disciplinas.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Tutorial de relatórios Oracle:

Arturo T.

Oracle Reports é uma ferramenta poderosa que tem como objetivo o design e a geração de relatórios.
Permite a criação de relatórios em arquivos jsp (Java Server pages), rdf, xml, rtf entre outros, mas sendo
os mais usados os anteriormente citados. Da mesma forma, permite enviar o resultado dos relatórios a
arquivos de texto, pdf, html, xml, rtf, de texto delimitados, entre outros, o que permite sua leitura e
publicação em diversos formatos.

Vamos a entrar em matéria sobre este tema.

Assim como o oracle forms, esta ferramenta contém um navegador de objetos a partir do qual se pode
acessar a cada um dos elementos que compõem a definição de um relatório.

Na figura 1, podem ser vistos os elementos que compõem um relatório. O modelo de dados é uma área
onde se define principalmente o conteúdo do relatório; ou seja, a definição de consultas, cálculos,
funções que retornarão os dados para o respectivo relatório.

Disposição de papel, é uma área onde se define principalmente a parte visual do relatório; ou seja, se
definem os tipos de letra, tamanhos, localização das colunas, cores, espaços, cabeçalhos, e em
geral, tudo aquilo que tem a ver com a apresentação do relatório.

A tela de parâmetros é uma área onde se pode personalizar a entrada dos parâmetros para
relatório. Por exemplo, se houver um relatório sobre os itens vendidos por uma empresa, poderiam
ser parâmetros a data inicial e a data final para os quais se deseja conhecer esta informação.

Disparadores de informes, é um bloco onde se definem ações que são disparadas principalmente antes
de que o relatório seja gerado ou após a execução do mesmo, dependendo das políticas do
negócio.

Unidades de programa e bibliotecas conectadas, assim como o oracle forms, é uma área onde se podem
definir na primeira, procedimentos, funções, pacotes que podem ser utilizados a partir dos modelos de
dados, e no segundo, links para bibliotecas ou bibliotecas pll, onde se encontrem as funções,
procedimentos ou pacotes.

Fig 1. Elementos de um relatório

A seguir, vamos ver essas áreas em detalhe.


Modelo de dados:

Como mencionado anteriormente, esta área é responsável pela definição dos dados que serão mostrados em
o relatório. Para isso, é necessário definir as consultas às diferentes fontes (tabelas, visões,
procedimentos armazenados, arquivos xml, módulos olap), definir as sumarizações e programar as
funções adicionais que possam ser necessárias no relatório.

A figura 2 mostra as ferramentas do modelo de dados.

Fig 2. Ferramentas do modelo de objetos

A ferramenta coluna de resumo

Permite definir operação de sumarização tais como conteo, soma, promedio, valor máximo, valor
mínimo, variância, desvio padrão, entre outros, cuja coluna resultante poderá ser incorporada no
informe. Para o mesmo exemplo do relatório de vendas, pode ser necessário incluir no final de cada dia o
valor total vendido, e no final do intervalo selecionado, o valor total vendido e o valor médio; para o qual
poderia ser utilizada esta ferramenta.

A ferramenta coluna de fórmula

Permite a incorporação de blocos PL/SQL para a definição de procedimentos e funções adicionais,


que podem ser necessárias para o cálculo de operações específicas. O valor retornado por esta
a coluna também pode ser mostrada no relatório. Voltando ao exemplo das vendas, suponhamos que
é necessário comparar se o total vendido por dia supera um valor X, caso em que a empresa não deveria
preocupar-se; mas se as vendas não superarem esse valor X, então, oh, o que acontece?!

Para isso, o relatório pode incluir uma coluna que compare o valor total com o valor X e se valortotal
>=X então retorne "não há problemas", mas se valortotal < X então retorne "neste dia não nos foi"
muito bem”. Claro, este é um exemplo de brinquedo que mostra um alcance mínimo do que poderia
fazer-se com colunas de fórmula.

Se você deseja aprofundar-se em plsql, pode recorrer aomanual de plsql

A ferramenta consulta sql


Permite a edição de consultas SQL, seja por meio do construtor de consultas ou editando diretamente o
código sql (esta última opção me agrada mais porque permite apropriar-se diretamente da linguagem de
consulta, para mais detalhes sobre sql vermanual de sql)

Vamos a fazer um exemplo na ferramenta para mostrar as três ferramentas anteriores:

1. Definamos a estrutura das fontes de dados

2. Suponha que se tenha a estrutura de tabelas:[Link]

3. Agora, deseja-se gerar um relatório que mostre para cada aluno, as disciplinas cursadas com seu
respectiva classificação

4. Executamos a ferramenta oracle reports e procedemos a criar um novo relatório.

Estando na janela do modelo de dados, selecionamos a opção consulta sql e a colocamos sobre a
folha de edição (para isso basta clicar na ferramenta e depois clicar no fundo da folha)

Aparece uma janela solicitando a consulta que desejamos executar. É aqui que dispomos das
duas opções: usar o construtor de consultas ou nos arriscarmos a escrever a consulta SQL pessoalmente. Para o exemplo
usaremos o construtor de consultas.

Para poder acessar o construtor de consultas é necessário se validar como usuário do banco de dados Oracle, portanto se
deve registrar o nome de usuário, senha e string de conexão.

Uma vez validada a conexão, é exibida uma lista dos objetos que o usuário dispõe (tabelas,
vistas, sinônimos, instantâneas), da qual devem ser selecionados os objetos a serem usados na consulta. Em
nosso caso serão selecionadas as tabelas aluno, matéria e inscrição.

Depois disso, clique na opção incluir.

Com o anterior, são incluídas na tela do construtor de consultas as definições das tabelas selecionadas.
Para o nosso exemplo, vamos selecionar os campos conforme mostrado na figura a seguir, que são
basicamente, os campos que queremos mostrar no relatório: da tabela aluno os campos id, nome e
sobrenome; de inscrição, os campos id_materia e calificação, e da tabela matéria desejamos mostrar o
nome da matéria.
Não se preocupe com os relacionamentos, a ferramenta os constrói automaticamente com base nas chaves.
foráneas definidas para cada tabela.

Em seguida, clique em aceitar, agora temos a consulta SQL pronta! (Claro, se conhecemos os detalhes da linguagem
sql podemos escrever diretamente a sentença sem necessidade de chamar o dono do construtor de consultas)

E novamente aceitar para ver o modelo de dados gerado. A próxima figura mostra o grupo de
dados gerados através da consulta que acaba de ser definida. O conceito de grupo é importante pois
defina a maneira como os dados serão exibidos posteriormente. Neste caso, nós temos apenas um
grupo formado pelo id do aluno, o nome e o sobrenome do aluno, o id da matéria e o nome
da matéria cursada e a nota. Se o aluno cursou 10 matérias, alguns desses dados como id, nome
e sobrenome do aluno se repetirão 10 vezes.
Aqui seria necessário implementar uma forma de ver o relatório de maneira mestre - detalhe.

Para dividir este grupo em dois grupos, basta selecionar os campos que fazem parte do detalhe e
levá-los para fora do grupo (ou tirá-los do grupo), com o que ficaríamos algo assim:

Agora vamos adicionar uma coluna de resumo que nos mostre a média das notas
obtidas por cada aluno. Para isso, selecionamos a ferramenta coluna resumo e a colocamos
dentro do primeiro grupo (o grupo do aluno), e colocamos outra coluna resumo fora dos grupos
(CS_2), com o que nos fica algo assim:
Vamos a explicar o que queremos ao incluir duas colunas de resumo CS_1 e CS_2, pode-se ver que
CS_1 é um resumo a nível do grupo G_Nome e o que queremos com CS_2 é ter um resumo a
nível de todo o relatório. Ou seja, queremos um resumo da média das notas por aluno e um
resumo da média geral.

Agora, selecionamos o campo CS_1 e abrimos a janela de propriedades (botão direito do


mouse – opção inspetor de propriedades) e definimos os valores como indica a seguinte figura:

Como pode ser visto, para a propriedade função permite selecionar de uma lista de operações (contagem,
soma, valor máximo, …).

A propriedade origem indica o campo que intervém no resumo

A propriedade Redefinir em indica, neste caso, que para cada aluno fará a operação definida.

Em conclusão, será encontrado o valor médio do campo nota por cada aluno.

Agora, selecionamos o campo CS_2, novamente abrimos a paleta de propriedades e fixamos os


próximos valores
Nesta configuração, estamos indicando que o resumo deve ser feito ao nível de todo o relatório, e
vamos a promediar as médias dos estudantes.

Listo. Agora, apenas nos falta gerar a parte visual do nosso relatório. Para isso, selecionamos a
opção programa/executar disposição de papel. Este assistente ajuda a configurar a parte visual do
relatório e o que diz respeito aos dados.

Um dos passos dentro deste assistente é a definição do estilo de relatório a ser criado. Para neutro
exemplo, sinalizaremos a opção agrupar acima. Ao clicar em seguinte, edita-se a origem dos dados (o
qual já definimos), depois a aba dados onde selecionar os campos que se deseja mostrar
no relatório. Nem sempre queremos que todos os campos na cláusula select sejam mostrados. O
os grupos já estão definidos. Finalmente, se você deseja gerar o relatório com algum modelo, este pode ser
selecionada, ou se, pelo contrário, não se deseja usar a plantilla, também existe a possibilidade de selecionar
esta decisão.

Pronto, uma vez terminado o assistente, nosso relatório se parecerá:


Muito bem, agora o trabalho é apenas embelezar nosso relatório. A partir do navegador de objetos,
entrar na área de disposição de papel e lá personalizar o relatório em relação à fonte, cores, localização
(esta primeira entrega não se estende à explicação da área disposição do papel. Esta será feita mais
adelante em outra entrega)

A ferramenta Link de dados

Permite vincular campos entre diferentes consultas. Se tiver 3 consultas a, b e c, e de a para b existe um
enlace, e entre a e c existe outro enlace, executa-se primeiro a consulta a, depois a consulta b e depois a
consulta c, conectando pelo campo definido. Um exemplo que ilustra esta ideia seria: tem-se várias
tabelas que modelam o currículum de uma pessoa, uma tabela PESSOA armazena os dados pessoais
(idPersona, nome, sobrenome, data_nascimento,..), outra tabela ESTUDIOS guarda os estudos que tem
realizado cada persona (cuyos campos podrían ser idPessoa, tipoEstudo, TituloObtido, Duracao,.)
outra tabela EXPERIENCIA guarda a história dos empregos de cada pessoa (os campos para esta tabela
podem ser idPessoa, empresaTrabalhou, duração, cargo, .), outra tabela PRODUÇÃO guarda os escritos,
trabalhos, pesquisas realizadas por cada pessoa.

Supondo que seja necessário imprimir o currículo de cada pessoa, podem ser definidas 4 consultas para
cada uma das tabelas anteriores e depois fazer enlaces pelo campo idPessoa a fim de que as consultas
filtren os dados para cada um dos registros da tabela pessoa. Para este exemplo, a estrutura do
reporte seria:

Dados pessoais:


Estudos realizados:

Experiencia laboral

….

Produção:

Na prática, o exemplo anterior seria desenvolvido com os seguintes passos:

1. Tendo em conta issoestrutura de tabelas.

2. Executar a ferramenta Oracle Reports, criar um novo relatório.

3. No modelo de dados, criar as seguintes 3 consultas sql

a. selecione * de persona

b. selecione * do estudos

c. selecionar * de empregos

Com as quais, que daria o modelo de atos assim:

Agora, usando a ferramenta de link, vamos unir os campos das 3 consultas pelo campo idpersona.
O procedimento é muito simples; basta apenas usar a ferramenta de link de dados (fazendo
clique sobre esta), em seguida una os campos das consultas, arrastando o mouse a partir do campo da
consulta origem até o campo da consulta destino sobre o qual queremos fazer o link. Para este
caso desde o campo idPessoa até o campo IdPessoa1, e outro desde o campo IdPessoa até o
campo IdPersona2. O modelo de dados ficaria agora:
Listo, agora executando a disposição do papel (estilo: agrupar cima, grupos: grupo de pessoa
transversal/desc
selecioná-los todos, template: nenhum), e adicionando algumas etiquetas, teríamos finalmente o
próximo relatório:

Como pode ser visto, esta funcionalidade de ligação de dados permite ligar o resultado de várias
consultas por um ou vários campos, mostrando em cada bloco de resultados, os respectivos registros
associados ao campo vinculado. Supondo que para uma pessoa X não existem registros na tabela
empregos, o bloco de empregos não seria exibido para esta pessoa X.

A ferramenta de consulta jdbc

Permite a definição de consultas SQL, a fim de serem executadas sobre fontes de dados usando o driver
jdbc; portanto, essas fontes podem ser tanto oracle, quanto db2, access, mysql, sql server, etc.
mais importante é esta opção é definir a cadeia de conexão para a fonte de dados a ser utilizada. Em
síntese, esta opção é muito recomendável quando se deseja incorporar dados que não se têm dentro de
nossa bd oracle, mas que igualmente são importantes para o nosso negócio.

Realizemos a seguinte prática para ver o funcionamento de consultas jdbc:

Vamos criar um banco de dados no Microsoft Access chamado [Link]

Criamos uma tabela chamada tarifa com os seguintes campos cod_tarifa (tipo de dado numérico), valor (tipo
de dado numérico)

Procedemos a povoar essa tabela com alguns valores

2. Em seguida, criamos uma fonte de dados ODBC (para os sistemas Windows, entre no painel de controle)
chamada miodbc_tarifa que tenha como fonte o arquivo [Link] que acabamos de criar no ponto
anterior.

3. Executamos a ferramenta oracle reports, criamos um novo relatório, e a partir do modelo de objetos,
tomamos a ferramenta de consulta jdbc e a colocamos na folha de edição. Uma vez feito isso, aparece
uma caixa de diálogo solicitando a consulta sql a executar e a conexão a usar. Na caixa para
consulta escreveremos

selecione * da tarifa

Para definir a conexão, clicamos no botão conectar, o que exibe outra caixa de diálogo.
para especificar os parâmetros de conexão ao nosso ODBC.
selecionamos como tipo de controlador jdbc-odbc e no quadro base de dados escrevemos o nome
assignado ao ODBC miodbc_tarifa

Pronto, agora clique em conectar, e depois em aceitar. Se não houver problemas de sintaxe na consulta SQL e se
definido adequadamente o tipo de controlador e o nome do banco de dados, deveria aparecer no
modelo de dados o seguinte modelo:

4. Somente nos falta agora, criar a parte visual ou disposição do papel. Para isso, dirija-se à opção
programa/executar disposição de papel, que o guiará neste processo.

A ferramenta Consulta Texto

Permite ler um arquivo de dados em formato txt, log, separado por vírgulas ou com campos de comprimento fixo, e
mostrá-los no relatório. É importante notar que essa opção é utilizada apenas em casos muito
particulares, uma vez que o acesso a arquivos é uma tarefa computacionalmente dispendiosa, o que resulta em
tempo de resposta, e está diretamente relacionado com o tamanho do arquivo de dados.

Vamos ver o exemplo respectivo:

1. suponhamos que se tem o seguinte arquivo de [Link](pode baixá-lo e gravá-lo em uma


pasta do seu pc)

2. Execute a ferramenta Oracle Reports e proceda para criar um novo relatório. No modelo de dados,
selecione a ferramenta consulta de texto e coloque-a em seguida na folha de edição do modelo. O seguinte
uma caixa de diálogo aparecerá para definir o nome do arquivo que vamos carregar e o tipo de arquivo
(log de servidor apache, arquivo txt separado por comas ou arquivo txt separado por tabulações)

Para este caso selecionamos arquivo txt separado por tabulações e indicamos a rota completa do
arquivo de dados. Al finalizar, aplicamos aceitar para continuar.

Depois, pode-se ver no modelo de dados algo assim:

Somente falta agora criar a disposição do papel. Para isso, proceder da mesma forma que no exemplo anterior.

Você também pode gostar