Índice:
Objetivo:
O objetivo desta página é exemplificar como inserir um gráfico em um relatório.net. Existem dezenas de parâmetros que podem ser configurados tais como as series, eixos, legendas etc. Os exemplos abaixo abrangem as principais configurações necessárias para inclusão de um gráfico.
Introdução
Esta é uma ferramenta bastante eficiente para as organizações. Nos produtos da linha RM é possível criar e editar gráficos utilizando consultas SQL como fonte de dados. Utilizaremos as informações inclusas em um relatório.net para montagem dos exemplos.
Utilização
Para inclusão de gráficos no RM Reports, é necessário possuir informações no relatório organizadas de forma que existam argumentos e valores correspondentes para que as séries existentes possam ser configuradas, por exemplo:
Informações |
---|
|
Principais configurações; Deck of Cards |
---|
| Card |
---|
| Quando arrastamos um controle de gráfico para o corpo do relatório, um wizard de configuração iniciará, onde é definido o tipo do gráfico, quais as séries existentes, e o visual da apresentação do gráfico.
|
Card |
---|
| Uma vez definidos o tipo do gráfico e a sua aparência, as séries devem ser configuradas. Um gráfico pode possuir de 1 a N séries. Para cadastrar as séries deve-se acessar o wizard de configuração do gráfico e selecionar a opção “Séries” no menu à esquerda.
|
Card |
---|
| Na opção “Dados” na aba “Binding de Séries”, associamos os campos utilizados no Argumento e no Valor.
Aviso |
---|
| Após configurar as opções de “Construção” do gráfico, as demais opções são utilizadas apenas para ajustes visuais que não afetam a forma como as informações são manipuladas pelo componente. |
|
|
Exemplos; Deck of Cards |
---|
| Card |
---|
| Deck of Cards |
---|
| Card |
---|
| Vamos criar um gráfico de barras a partir da consulta SQL que retorna o código da seção e os seguintes totais por seção: funcionários e dependentes ativos, funcionários e dependentes inativos. Bloco de código |
---|
| SELECT SEC.CODIGO,
(SELECT COUNT(CHAPA)
FROM PFUNC
WHERE CODSITUACAO = 'A'
AND CODSECAO = SEC.CODIGO) 'FUNCIONARIOS ATIVOS',
(SELECT COUNT(NRODEPEND)
FROM PFDEPEND
JOIN PFUNC ON (PFDEPEND.CHAPA = PFUNC.CHAPA
AND PFUNC.CODSITUACAO = 'A')
WHERE PFUNC.CODSECAO = SEC.CODIGO) 'DEPENDENTES ATIVOS',
(SELECT COUNT(CHAPA)
FROM PFUNC
WHERE CODSITUACAO <> 'A'
AND CODSECAO = SEC.CODIGO) 'FUNCIONARIOS NÃO ATIVOS',
(SELECT COUNT(NRODEPEND)
FROM PFDEPEND
JOIN PFUNC ON (PFDEPEND.CHAPA = PFUNC.CHAPA
AND PFUNC.CODSITUACAO <> 'A')
WHERE PFUNC.CODSECAO = SEC.CODIGO) 'DEPENDENTES NÃO ATIVOS'
FROM PSECAO SEC
WHERE SEC.CODIGO IN ('01.02',
'01.03',
'03.01',
'01.14',
'01.10',
'02.02',
'01.01',
'01.04',
'01.08',
'01.09') |
|
Card |
---|
| Depois de criado a consulta SQL, criamos um novo relatório, adicionamos a consulta SQL criada como fonte de dados e adicionamos a banda Detalhe os campos que desejamos visualizar.
Neste exemplo utilizaremos um único gráfico que exibirá todas as informações provenientes da banda Detalhe1. Para isso deve-se adicionar um rodapé de detalhe a banda que contém os dados. Clique com o botão direito do mouse sobre a banda detalhe a qual os dados foram associados, selecione a opção “Inserir Seção”, “Rodapé do Detalhe”.
Arraste para esta banda um componente do tipo gráfico
|
Card |
---|
| Depois de arrastar o componente para o rodapé do detalhe será aberto o wizard de configuração do gráfico. Selecionamos o tipo “Barra”. Adicionamos uma série para cada uma das colunas de dados retornadas na nossa consulta SQL.
No Binding das Séries, para todos os itens o argumento será “Qualitativo” e o campo CODIGO será associado ao argumento, no valor de cada série o tipo retornado pela consulta SQL é numérico, a ligação é feita por valores e o valor é associado ao campo correspondente na consulta SQL.
Após a configuração das séries e dados, o gráfico gerado do rodapé do relatório foi o seguinte:
|
|
|
Card |
---|
| Deck of Cards |
---|
| Card |
---|
| Vamos criar um gráfico de torta a partir da consulta SQL que retorna a quantidade de relatórios existentes por cada aplicação do ERP. Bloco de código |
---|
| SELECT CODAPLICACAO,
COUNT(CODIGO) TOTAL
FROM RRPTREPORT
GROUP BY CODAPLICACAO |
|
Card |
---|
| Após a criação da consulta SQL, criamos um novo relatório, adicionamos a consulta SQL criada como fonte de dados e adicionamos a banda Detalhe os campos que desejamos visualizar.
Neste exemplo também utilizaremos um único gráfico que exibirá todas as informações provenientes da banda Detalhe1. Para isso deve-se adicionar um rodapé de detalhe a banda que contém os dados. Clique com o botão direito do mouse sobre a banda detalhe a qual os dados foram associados, selecione a opção “Inserir Seção”, “Rodapé do Detalhe”.
Arraste para esta banda um componente do tipo gráfico. Aba “Caixa de Ferramentas”, “Controles Avançados”, “Gráfico”. |
Card |
---|
| Após arrastar o componente para o rodapé do detalhe será aberto o wizard de configuração do gráfico. Selecionamos o tipo “Torta”. Adicionamos uma série para cada uma das colunas de dados retornadas na nossa consulta SQL, neste caso, apenas uma série e pode-se utilizar a série criada automaticamente pelo wizard. No Binding das Séries, o campo CODAPLICACAO deve ser o argumento, do tipo “Qualitativo”, já que distingue as informações e o campo TOTAL será associado ao valor da série.
Após a configuração da série e dos dados, o gráfico gerado do rodapé do relatório foi o seguinte:
|
|
|
Card |
---|
| Deck of Cards |
---|
| Card |
---|
| Vamos criar um gráfico de torta a partir da consulta SQL que retorna a quantidade de relatórios existentes por cada aplicação do ERP. Bloco de código |
---|
| SELECT DATALAN.DATAEMISSAO,
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00001') 'C00001',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00305') 'C00305',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00306') 'C00306',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00307') 'C00307',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00308') 'C00308',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00311') 'C00311',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00318') 'C00318',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00436') 'C00436',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00455') 'C00455',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00511') 'C00511',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C00521') 'C00521',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C01323') 'C01323',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C01338') 'C01338',
(SELECT COUNT(IDLAN)
FROM FLAN
WHERE DATALAN.DATAEMISSAO = FLAN.DATAEMISSAO
AND CODCFO = 'C01354') 'C01354'
FROM FLAN DATALAN
WHERE DATALAN.CODCFO IN('C00001',
'C00305',
'C00306',
'C00307',
'C00308',
'C00311',
'C00318',
'C00436',
'C00455',
'C00511',
'C00521',
'C01323',
'C01338',
'C01354')
GROUP BY CODCFO,
DATAEMISSAO
ORDER BY CODCFO |
|
Card |
---|
| Após a criação da consulta SQL, criamos um novo relatório, adicionamos a consulta SQL criada como fonte de dados e adicionamos a banda Detalhe os campos que desejamos visualizar.
Neste exemplo também utilizaremos um único gráfico que exibirá todas as informações provenientes da banda Detalhe1. Para isso deve-se adicionar um rodapé de detalhe a banda que contém os dados. Clique com o botão direito do mouse sobre a banda detalhe a qual os dados foram associados, selecione a opção “Inserir Seção”, “Rodapé do Detalhe”.
Arraste para esta banda um componente do tipo gráfico. Aba “Caixa de Ferramentas”, “Controles Avançados”, “Gráfico”. Após arrastar o componente para o rodapé do detalhe será aberto o wizard de configuração do gráfico. Selecionamos o tipo “Linhas”. |
Card |
---|
| Adicionamos uma série para cada uma das colunas de dados retornadas na nossa consulta SQL. No Binding das Séries, para todos os itens o argumento será “DateTime” e o campo DATAEMISSAO será associado ao mesmo, para cada uma das séries criadas associamos uma coluna em seu valor que é do tipo Numérico.
Após a configuração da série e dos dados, o gráfico gerado do rodapé do relatório foi o seguinte:
|
|
|
|
|
A Maneira mais fácil de explicar este procecedimento é montando um gráfico:
1. Primeiramente crie um relatório com as tabelas Funcionário e Histórico de Salário.
2. Na banda Detalhe1, insira os campos chapa e nome do funcionário.
3. Insira uma banda como sub-relatório e selecione "Histórico de Salários".
4. Insira no detalhe2, os campos "Data da Mudança" e "Valor Atual do Salário" da tabela de Histórico de
Salários.
5. Insira um Rodapé do Detalhe2, nele vamos inserir nosso componente de Gráfico.
6. Após inserir o gráfico, acesse suas propriedades.
7. Clique em "Iniciar Wizard".
O gráfico já vem como duas séries como padrão. No exemplo a seguir vamos usar somente uma série.
Portanto vamos apagar a "Série2". Para isso devemos acessar "Séries" no lado esquerdo da tela.
• Clique sobre a "Série2" e remova.
• Segundo passo é configurar a nossa série.
• Ao lado direito do Wizard na pasta "Opções de Series" Em tipo de escala vamos selecionar DateTime:
• Agora selecione Dados ao lado esquerdo do wizard.
• Na pasta "Binding de Séries", em propriedades do Argumento selecione:
Nota:
Atente-se para buscar o campo "Data de Mudança" da tabela de Histórico de Salários disposta na raiz, pois a mesma também é apresentada dentro da tabela de Funcionários quando a expandimos clicando em [+].
8. Na opção EIXOS Clique na aba "Formato" e insira o formato MM/yyyy para que no eixo X seja mostrado apenas o mês e ano do aumento salarial.
9. Agora para melhor visualização volte as opções da barra esquerda e selecione "Tipo de Gráfico"
10. Selecione o tipo de gráfico de Linhas
11. Finalize o formatador de Gráfico e gere o relatório.
12. Visualização do Relatório pronto.
Informações |
---|
title | Para maiores informações: |
---|
|
COMUNIDADE @FRAMEWORK
Canais de Atendimento:
Chamado: Através do Portal Totvs www.suporte.totvs.com.br Telefônico: 4003-0015 Escolhendo as opções 2 – (Software), 2 – (Suporte Técnico), 3 – (RM), 9 – (Demais Áreas), 4 – (BI) e 3 – (Gerador de Relatórios e Planilha); |
SELECT SEC.CODIGO, (SELECT COUNT(CHAPA) FROM PFUNC WHERE CODSITUACAO = 'A' AND CODSECAO = SEC.CODIGO) 'FUNCIONARIOS ATIVOS', (SELECT COUNT(NRODEPEND) FROM PFDEPEND JOIN PFUNC ON (PFDEPEND.CHAPA = PFUNC.CHAPA AND PFUNC.CODSITUACAO = 'A') WHERE PFUNC.CODSECAO = SEC.CODIGO) 'DEPENDENTES ATIVOS', (SELECT COUNT(CHAPA) FROM PFUNC WHERE CODSITUACAO <> 'A' AND CODSECAO = SEC.CODIGO) 'FUNCIONARIOS NÃO ATIVOS', (SELECT COUNT(NRODEPEND) FROM PFDEPEND JOIN PFUNC ON (PFDEPEND.CHAPA = PFUNC.CHAPA AND PFUNC.CODSITUACAO <> 'A') WHERE PFUNC.CODSECAO = SEC.CODIGO) 'DEPENDENTES NÃO ATIVOS'FROM PSECAO SECWHERE SEC.CODIGO IN ('01.02', '01.03', '03.01', '01.14', '01.10', '02.02', '01.01', '01.04', '01.08', '01.09')