Escolar Documentos
Profissional Documentos
Cultura Documentos
Sumrio
VISO GERAL Apresentao Acessando o RM Reports CRIAR UM NOVO RELATRIO FORMATAR A ESTRUTURA DO RELATRIO Inserindo uma tabela Gerao do Relatrio Salvar a pr-visualizao de um relatrio FERRAMENTAS, CONTROLES E PADRES Totalizador Expresso Varivel CONTROLES AVANADOS Check box Texto Rico Tabela Matriz Grfico CRIAR UM RELATRIO MULTIBANDAS Cabealho de Pgina Detalhe Cabealho do Detalhe Rodap do Relatrio Rodap do Detalhe SubDetalhe INSERIR SUBRELATRIO USO DO SQL NO RELATRIO Passando parmetro de um Campo da base para a SQL Buscando parmetros do grupo PAI Buscando parmetros digitados pelo usurio (campo Parmetro) USAR FILTROS ALINHAMENTO DE CAMPOS FORMATAO CONDICIONAL USAR RELATRIO COMO ANEXO
3 3 3 4 5 5 6 6 7 7 8 8 9 9 11 12 13 14 18 18 18 18 18 19 18 19 20 20 20 21 23 24 24 26
RM Reports
VISO GERAL
Apresentao
Este material didtico foi desenvolvido seguindo uma ordem que facilita o aprendizado. Mostraremos a seqncia em que desenvolvemos um relatrio, iniciando da maneira mais simples e ao decorrer das lies incrementando recursos mais complexos. Antes de iniciar Antes de criar um relatrio temos que nos atentar para um detalhe muito importante: Nunca inicie o desenvolvimento de um relatrio se voc no estiver seguro de que sabe exatamente o que o relatrio deve conter e de que forma este deve mostrar as informaes. Esclarea todas as dvidas antes de iniciar o desenvolvimento do relatrio, desta forma podemos evitar retrabalhos. Aps ter conhecimento de todos os detalhes do relatrio, precisamos formatar a sua estrutura e identificar quais grupos far parte de seu contedo. Pense que cada bloco de informao provavelmente ser um grupo diferente.
Acessando o RM Reports
O RM Reports esta disponvel em todos os aplicativos no menu Relatrios opo Gerador.NET.
Porm, iremos acess-lo atravs da front-end.NET para tal, devemos acessar o diretrio RM.NET e executar o arquivo RM.exe Atravs deste executvel podemos acessar relatrios de todos os aplicativos.
RM Reports
Anotaes
RM Reports
Nota: Se a aba Lista de Campos no estiver visvel, basta acessar na barra de ferramentas a aba Exibio, boto Janelas, selecionar Lista de Campos . Para inserir um campo no relatrio basta clicar no treeview da tabela para expandir todos os campos. Selecionar o campo e arrast-lo at a banda desejada.
RM Reports
Gerao do Relatrio
Para gerar o relatrio basta selecionar a aba superior Exibio opo Pr-Visualizar
Podemos pr-visualiza-lo quantas vezes forem necessrias, para cada uma delas ser aberta uma aba. A vantagem deste recurso que podemos comparar os resultados de uma alterao feita no relatrio gerando varias abas, uma para cada alterao feita. Nota: A pr-visualizao no salva o layout do relatrio.
Anotaes
RM Reports
Totalizador
Este campo totaliza valores em um relatrio. Atravs dele podemos somar ou subtrair valores. Estes podem ser zerados aps a impresso ou a quebra de grupo. Podemos tambm armazenar o valor inicial de um campo, este valor o primeiro que o campo assumiu a ser impresso no relatrio.
RM Reports
Observao: Um totalizador pode somar ou subtrair mais de um campo do relatrio, mas permitido ter apenas um campo como Valor Inicial.
Expresso
Esta opo utilizada para criar expresses matemticas. Exemplo: Campo1 * Campo2. Podero ser utilizadas vrias funes para manipular dados numricos, texto e data. Podemos usar operadores lgicos como IF
Varivel
Atravs deste recurso podemos inserir no relatrio algumas variveis como: Cdigo do Relatrio, Descrio do Relatrio, Verso, Nome da coligada, etc. Para selecionar estas opes basta ir na Janela de propriedades opo Dados\Variveis.
RM Reports
CONTROLES AVANADOS
Check box
Esta opo nos permite inserir um Check Box relacionado a um campo da base. Para compreender melhor desenvolvemos um exerccio que mostra a sua utilizao. Vamos criar um novo relatrio, esta ser uma listagem de Usurios. Esta listagem ira conter os campos cdigo do usurio e nome do mesmo. Iremos inserir um check box para informar se o usurio esta ativo ou no. Procedimento: 1. Crie o relatrio listagem de Usurios . 2. Insira a tabela de Usurios. 3.Insira no Detalhe1 os campos Cdigo identificador do Usurio e Nome do Usurio . 4. Insira o campo Check Box.
6. Status da seleo define se o valor defaut do check box. Uncheked -> desmarcado Cheked -> marcado Ligao de Dados demonstra a que campo o componente ir tomar como referncia. No nosso caso iremos selecionar o campo Indicativo de Staus do Usurio Na base de dados este campo preenchido com 0 para Inativo e 1 para Ativo. Texto, define o nome que ser apresentado no check box, devemos alter-lo para Ativo Regras de Formatao Esta opo nos permite definir a regra de preenchimento do check box. Procedimento: 1. Devemos clicar em Editar Folha de Regras. 2. Clicar no smbolo + e adicionar uma nova regra. 3. Em Comportamento Clicar em Condio
RM Reports
4. Em Fields selecionar o campo [STATUS] , clicar duas vezes sobre o mesmo. 5. Depois clicar sobre o smbolo de = , e digitar o nmero 1 . 6. Clique em OK e Gere o Relatrio para verificar o resultado. Nota: Ao gerar o relatrio pelo formatador sero exibidas somente 10 linhas (defaut do report). Provavelmente na base exemplo os usurios ativos so sero mostrados na pgina 7, ento devemos alterar o nmero de registros para 100. Para tal devemos acessar a tela de propriedades, selecionar rptReport1 Relatrio aba desenho, linhas , para preview informar 100. ,
10
RM Reports
Texto Rico
Este componente tem como objetivo facilitar a construo de relatrio onde alinhamos informaes da base de dados com uma grande quantidade de texto. Exemplo disso so contratos e ofcios. Para exemplificar este recurso vamos criar um novo relatrio: Contrato da coligada Procedimento: 1. Primeiramente vamos adicionar a tabela de coligadas. 2. Em seguida inserir o campo Texto Rico . 3. Acessar a janela de propriedades , selecionar rptReport1 Relatrio . 4. Em Dados, Tabela , selecionar a tabela de coligadas para que ela seja a tabela mster do seu relatrio.
Selecione o campo de texto rico e acesse as suas propriedades (clicando na seta que se apresenta sobre o campo) clique em Editar Texto ou apenas de dois cliques sobre o campo. Na edio podemos digitar qualquer texto como, por exemplo, Dados referenciais a coligada de nome neste ponto gostaria de retornar o nome da coligada corrente. Para retornar um campo da base necessrio inserir o nome do mesmo entre colchetes, no nosso caso [GCOLIGADA.NOME]. O texto ficara ento: Dados referenciais a coligada de nome [GCOLIGADA.NOME] Podemos completar nosso texto como, por exemplo, Dados referenciais a coligada de nome [GCOLIGADA.NOME] situada na cidade [GCOLIGADA.CIDADE] e estado [GCOLIGADA.ESTADO]. Ao executar o relatrio os campos entre colchetes trazidos da base de dados sero substitudos pelo contedo dos mesmos no banco. Este recurso tambm pode buscar os dados em um arquivo j formatado do tipo texto(TXT), Rich text (RTF) ou HTML. Para testar este recurso basta abrir o bloco de notas do Windows digitar um texto e salvar o arquivo. Inserir um campo texto rico no relatrio , acessar suas propriedades e selecionar a opo carregar arquivo . Selecionar o arquivo texto previamente digitado.
Todos os direitos reservados. RM Reports
11
Painel Todo campo inserido dentro de um painel fica cria uma relao com o mesmo. Sempre que arrastamos este Painel levamos consigo todos os campos inseridos dentro do mesmo. CEP um componente que pode receber caracteres numricos retorna os mesmos em uma formatao que facilita a leitura por um componente ptico. Quebra de Pgina Este recurso quando inserido faz com que todos os campos que estejam abaixo do componente sejam impressos na prxima pgina
Tabela
Atravs deste recurso podemos inserir tabelas em nosso relatrio. Estas tabelas so uma boa maneira de organizar informaes sem a necessidade de alinhamento de campos. Para relacionar uma clula a um campo da base basta selecionar as propriedades da clula, em Ligao de Dados.
Para incluir ou excluir linhas/colunas basta clicar com o boto direto do mouse sobre uma das clulas da Tabela e selecionar a opo desejada.
12
RM Reports
Matriz
Matriz um componente que pode ser configurado e seu resultado final a viso de um cubo, ou seja podemos definir dimenses para a visualizao.
Exerccios
1. Crie um relatrio, inclua a tabela de Funcionrios. 2. Insira o componente de Matriz. 3. Acesse suas propriedades, em Membro de Dados selecione a tabela que ir Gerenciar a Matriz, no nosso caso Funcionrios
4. Ainda em propriedades selecione Executar Gerador para acessar o wizard de configurao do componente. 5. Ao acessar o Gerador ser visualizada uma lista com todos os campos da tabela selecionada. Para que um destes campos faa parte de nossa Matriz devemos clicar duas vezes sobre o mesmo. Devemos selecionar CHAPA, CODSECAO, NOME e SALARIO. Agora devemos clicar no cone Layout dentro de Principal.
13
Para aumentar a largura das colunas, deve-se selecionar a coluna, clicar com o boto direito do mouse, selecionar propriedades. Aumentar o valor em layout\Largura.
Nota: Se o relatrio no apresentar dados, verifique as propriedades do rptReport1\Dados\Tabela, verifique se est preenchido com o nome da tabela mster, ou seja Funcionrios .
Grfico
Este recurso disponibiliza a criao de grficos dentro de um relatrio. Podemos gerar grficos a partir dos dados de uma tabela ou uma SQL. Esta uma ferramenta muito poderosa, existem dezenas de parmetros que podem ser configurveis, podemos configurar as series, os eixos, legendas, etc. O objetivo desta apostila no descrever todas as propriedades e sim demonstrar como criar um grfico bsico. Cabe ao usurio estudar e aprofundar no contedo deste tpico. A Maneira mais fcil de explicar a criao de um grfico montando um grfico: 1. Primeiramente crie um relatrio com as tabelas Funcionrio e Histrico de Salrio.
14
RM Reports
Observao: Se vc ainda no aprendeu a trabalhar com relatrios com mais de uma tabela, por favor avance para a pgina 17. Aps aprender a usar mais de uma tabela no relatrio, retorne a este ponto e continue o exerccio. 2. Na banda Detalhe1, insira os campos chapa e nome do funcionrio. 3. Insira uma banda como sub-relatrio e selecione Histrico de Salrios .
4. Insira no detalhe2, os campos Data da Mudana e Valor Atual do Salrio da tabela de Histrico de Salrios. 5. Insira um Rodap do Detalhe2, nele vamos inserir nosso componente de Grfico. 6. Aps inserir o grfico, acesse suas propriedades. 7. Clique em Run Wizard .
O grfico j vem como duas sries como padro. No exemplo a seguir vamos usar somente uma srie. Portanto vamos apagar a Srie2 Para isso devemos acessar Sries no lado esquerdo da tela. . 1. Clique sobre a Srie2 e remova. 2. Segundo passo configurar a nossa srie.
3. Ao lado direito do Wizard na pasta Opes de Series Em tipo de escala vamos selecionar DateTime.
RM Reports
15
Nota: Atente-se para buscar o campo Data de Mudana da tabela de Histrico de Salrios disposta na raiz, pois a mesma tambm apresentada dentro da tabela de Funcionrios quando a expandimos clicando em [+]. 6. Em propriedades do Argumento selecione:
8. Para formatar as opes da srie , basta selecion-la e clicar no boto Prximo . 9. Vamos formatar o eixo, clique em Prximo at que seja selecionada a opo EIXOS. 10. Clique na aba Format e insira o formato MM/yyyy para que no eixo X seja mostrado apenas o ms e ano do aumento salarial.
11. Agora para melhor visualizao volte as opes da barra esquerda e selecione Tipo de Grfico
16
RM Reports
13. Finalize o formatador de Grfico e gere o relatrio. 14. Visualizao do Relatrio pronto.
Em um relatrio podemos retornar informaes de diversas tabelas ao mesmo tempo, podemos definir quebras e totalizadores, porem para isso necessrio que o relatrio tenha mais de uma banda. Cada Banda tem uma funcionalidade distinta para o relatrio
Anotaes
RM Reports
17
Detalhe
O Report utiliza a banda detalhe para retornar um bloco de informaes da base de dados. Este deve ser o principal grupo do relatrio.
Cabealho do Detalhe
Este grupo associado ao detalhe, com ele podemos formatar um cabealho ligado ao detalhe. A quebra do detalhe formatado neste grupo.
Rodap do Relatrio
Este grupo sempre impresso no final de cada pgina.
Rodap do Detalhe
Grupo associado ao detalhe, este grupo insere um rodap que ser impresso juntamente com o grupo detalhe.
SubDetalhe
Este grupo sempre estar ligado ao um detalhe, nele podemos inserir informaes (tabelas, SQLs, etc) que complementam as informaes do grupo de detalhe. Ao selecionar esta opo sero apresentadas as tabelas disponveis em Lista de Campos Esta opo . constri uma associao mestre detalhe entre duas tabelas. Exemplo:
Anotaes
18
RM Reports
INSERIR SUBRELATRIO
Coligadas -> Filiais Seo -> Funcionrio Cliente -> Lanamento Turma -> Aluno
Temos duas opes: A primeira: Sem ligamento Nesta opo o Report ir inserir um subdetalhe para o detalhe1 sem ligamento, ou seja sem relacionamento com algum tipo de tabela ou SQL. Neste caso o usurio pode optar por inserir posteriormente uma tabela, uma SQL, etc. A segunda: Tabela disponvel (em nosso exemplo Filiais) Sero apresentadas as tabelas que esto disponivieis na aba Tabelas . Exemplo:
Em nosso exemplo ser apresentada a tabela de Filiais neste caso o report j far um relacionamento , direto entre as tabelas de coligadas(mster) e filiais(child), inserindo um subdetalhe com a tabela selecionada.
Anotaes
RM Reports
19
20
RM Reports
Usamos o prefixo :P_ para que o parmetro busque a informao do grupo pai. Campo =:P_nome do campo A SQL do Detalhe2 esta desta forma : SELECT CODFILIAL,NOME,CGC,INSCRICAOESTADUAL FROM GFILIAL NOLOCK WHERE CODCOLIGADA=:P_CODCOLIGADA Observao: O campo que est sendo usado como parmetro pela SQL dever ter o mesmo nome que o Campo referencia no relatrio , devemos apenas acrescentar o prefixo P_
Por defaut ao criar o parmetro o nome fica como Parametro1 Para alterar este nome devemos acessar . a propriedades do campo modific-lo.
RM Reports
21
Para que a janela de parmetros seja apresentada necessrio salvar o relatrio e sair da tela de Formatao. Voltando a tela de treeview do Gerador, selecionar o relatrio, ir em Processos/Gerar Relatrio . Ser apresentada uma tela para que o usurio preencha o valor do parmetro.
Anotaes
22
RM Reports
USAR FILTROS
Para inserir um filtro em um relatrio basta selecionar o cone Filtros disponvel na barra de ferramentas. Por padro sero apresentados as tabelas mster de cada grupo existente no relatrio. Exemplo: Detalhe1 (coligada) SubDetalhe1(filiais) Ao selecionar o filtro ser apresentada a tela:
Nesta tela temos a opo de editar os filtros. na tela de edio que conseguimos format-lo.
Notem que podemos filtrar qualquer campo da tabela selecionada, independente se este campo est ou no disponvel para visualizao no relatrio.
RM Reports
23
ALINHAMENTO DE CAMPOS
Podemos alinhar os campos do relatrio a esquerda, centro, direita ou justificado. Selecione a aba superior Layout , barra de ttulos Alinhamento Para alinhar basta selecionar todos os . campos de uma so vez e clicar no cone de alinhamento. Organizar campos Na aba superior Layout barra de ttulos Organizar Temos diversas opes para organizar os campos , . dispostos no relatrio. Como exemplo, temos as opes de alinhar a esquerda, direita , centro, diminuir espaamentos, etc.
FORMATAO CONDICIONAL
No Gerador dispomos de um recurso para efetuar formataes condicionais. Ou seja podemos definir a fonte ou cor do fundo de um campo de acordo com o valor que este retornar. Para configurar este recurso basta acessar as propriedades de um campo e configurar as Regras de formatao .
Neste exemplo temos um relatrio que retorna dados dos funcionrios e seus respectivos salrios. Caso queira destacar o salrio dos funcionrios que recebem acima de R$5.000,00 com fonte vermelha. Ser exibida uma tela Editor de regras de formatao neste editor devemos selecionar o boto Editar , folha de regras . 1. Dentro deste Editor vamos selecionar o boto + para adicionar uma nova regra. 2. Em Comportamento\Condio devemos inserir a condio para formatao. 3. Clique em Fields e selecione com dois cliques o campo desejado, em nosso exemplo Salrio . 4. Clique no boto que representa a condio desejada, em nosso exemplo > . 5. Digite o valor da condio (5000).
24
RM Reports
6. Para confirmar a condio selecione OK. 7. Em Comportamento\Formatao selecionamos a opo cor da frente para mudar a cor da fonte do campo. Em fonte destacamos o Negrito. 8. Clicamos no boto Fechar.
9. Selecione fechar . Ainda no Editor de regras, perceba que o quadro esquerda tem as regras disponveis e o quadro a direita temos as regras aplicadas. Devemos ento passar a regra criada para o lado direito onde esto as regras aplicadas. Segue um exemplo de um relatrio gerado.
RM Reports
25
um Anexo da viso de Alunos. Para associar um relatrio a uma viso devemos primeiramente acessar a viso desejada, acessar o menu Anexos/ Relatrios / Inserir Relatrio. Ser aberto um Wizand onde devemos, primeiramente, selecionar o relatrio a ser inserido no anexo. Em seguida ser apresentada uma tela na qual, do lado esquerdo, ter todos os campos disponveis na viso escolhida. No lado direito sero exibidos os campos presentes no grupo principal do relatrio. Neste momento devemos efetuar uma associao entre os campos, ou seja relacionar os campos da viso com seu correspondente no Relatrio.
26
RM Reports
Desta foram toda vez que o usurio trocar o registro selecionado o relatrio ser gerado automaticamente para demonstrar as informaes do novo contexto.
Exerccios
1. Desenvolva um relatrio que ir conter os dados do funcionrio.
l Ttulo do relatrio ser Listagem de Funcionrios l Este relatrio deve conter um cabealho e os campos descritos no exemplo. l O relatrio dever ser ordenado por chapa.
Com a primeira fase concluda, inserir um condicional, verificando se o salrio do funcionrio for maior que R$5.000,00 colorir a fonte do campo salrio de vermelho. Faa um filtro para retornar todos os funcionrio ativos (CODSITUCAO=A). 2. Desenvolva o mesmo relatrio, porem, todo por sentena SQL. Insira um parmetro para filtrar somente os funcionrios admitidos em um determinado perodo.
RM Reports
27
3. Desenvolva um relatrio de Listagem de Funcionrios com quebra por seo composto por campo da base.
l O relatrio dever totalizar os salrios por seo. l Colorir as linhas mpares do funcionrio de cinza claro. l Somente imprimir as sees que tem funcionrio.
4. Desenvolver um relatrio que retorne a relao de dependentes por funcionrio. O relatrio ser feito todo por sentena SQL.
l Sero criadas duas SQLs, uma para retornar os funcionrios e outra para retornar os dependentes. A
segunda SQL vai receber parmetros da de cima. l Retornar chapa e nome do Funcionrio e nome do dependente . 5. Desenvolver um relatrio que busque o nmero do movimento, cdigo e nome do cliente/ fornecedor, data emisso. No grupo abaixo retornar os dados do item do movimento: l Cdigo e nome do produto l Quantidade l Preo unitrio l Insira uma Expresso para calcular o valor total do item (Qtd X preo unitrio) l Totalize o valor de cada movimento (soma dos valores da expresso) l Totalize o valor total do relatrio.
6. Desenvolva um relatrio que retorne a listagem de usurios do sistemas. Esta listagem ter os campos cdigo do usurio e nome do mesmo. l Iremos inserir um check box para informar se o usurio est ativo ou no. l Mostrar no final do relatrio a quantidade de usurios listados. 7. Desenvolver a Mala direta a seguir. Prezado Diretor da empresa (FCFO.NOME), cujo CNPJ registrado (FCFO.CNPJ). Venho por meio desta solicitar que seja feito o recadastramento de seu endereo. Constatamos que as correspondncias envidas para o endereo (FCFO.RUA), nmero (FCFO.NUMERO), bairro (FCFO.BAIRRO), cidade (FCFO.CIDADE), (FCFO.ESTADO) esto retornado ao correios. 8. Desenvolver o relatrio proposto nesta apostila. l Relatrio de evoluo Salarial. l O relatrio dever ter a chapa e nome do funcionrio no grupo principal. l Abaixo dever ser apresentado a evoluo salarial do funcionrio e um grfico baseado nesta evoluo.
28
RM Reports