Gráfico de Tendência (Trendline) no Reporting Services 2008 R2

Fala galera, uma coisa um tanto quanto estranha aconteceu essa semana. Mais de uma pessoa me pediu ajuda para fazer a mesma coisa. Um gráfico de tendências no Reporting Services. Bom, eu estava a alguns dias sem fazer um post e então decidi ajudá-los montando esse exemplo aqui.

Um gráfico de tendências normalmente é feito por um grafico de barras que representa um montante, e uma linha de crescimento que mostra alguma outra informação pertinente, sobre as barras, neste mesmo gráfico. A idéia é que o gerente/diretor que é o usuário do gráfico, possa ver o total (barras) e também a informação específica (linha) que ele precisa.

Montei um script para gerar as tabelas e a massa de dados que precisei para realizar este exemplo. Você pode baixar esse script clicando aqui.

O relatório, baseado no scritp que criei, irá montar um gráfico de barras para mostrar a venda de todos os produtos da empresa divididos de 7 em 7 dias (chamado de Semana 1, Semana 2, …) pelo funcionário Diego Nogare, e também uma linha de tendência que mostrará como foi a venda de Árvores de Natal nesse total de vendas, visto que agora já é Dezembro e a tendência de vender Árvores de Natal é muito importante para o exemplo a empresa.

Para montar o gráfico, vamos abrir o BIDS (Business Intelligence Development Studio) e criar um Shared Data Source, e um Shared Dataset. O Shared Data Source é para apontar para o servidor e banco de dados que vc tem, e o Shared Dataset é para criar um apontamento para a Stored Procedure retornaGrafico que está no script.

image

Depois de criar o Data Source e o Dataset, é hora de criar o relatório. Garanta que a Solution Explorer tenha uma aparencia como essa abaixo.

image

Abra o relatório em branco e arraste o componente Chart da Toolbox para a área do relatório. O gráfico de barras simples já vem selecionado, se não vier, é o primeiro grafico que aparece na caixa. Selecione esse gráfico e clique em Ok. A tela para selecionar o Datasource é mostrada, selecione o Dataset criado anteriormente e clique em OK.

image

Quando você dá Ok nesta tela, o grafico é plotado no relatório, mas ainda não significa nada. Agora é a hora que será montado, de fato, o grafico de barras e em seguida o gráfico de tendência (linha).

A primeira coisa a se fazer, é clicar duas vezes na parte branca do gráfico, para abrir as configurações do Chart Data, que ficam a direita do gráfico.

image

 

Dentro do Chart Data existem três caixas para inserir informações, a primeira caixa Values é onde será adicionado os valores que serão plotados no gráfico. O que devemos fazer é clicar no image e adicionar o ítem QuantidadeBarra. Este ítem é a coluna lá da query criada no SQL Server. Nesta mesma sessão adicione também o ítem QuantidadeLinha. Na sessão abaixo, Category Groups, pode clicar no ítem “Details” e modificar para SemanaBarra. Essa sessão de Category Groups é o agrupador que ficará na base do eixo X, servindo como separador dos dados.

Neste momento o gráfico ainda não contém a linha de tendência, só as barras, para montar esta linha vá até a sessão Values do Chart Data, clique no ítem QuantidadeLinha com o botão direito e vá até a opção Change Chart Type… no menu suspenso que apareceu.

image

A tela para selecionar o tipo de gráfico aparece, e você deve selecionar algum gráfico da sessão de linhas. Eu selecionei o Linha com Marcador.

image

Depois de selecionar o tipo do gráfico é só confirmar e ver o gráfico alterado.

Esta visão que está aparecendo é só o modo Desing e não reflete os dados reais. Para visualizar o gráfico com os dados retornados do seu banco de dados, clique no ítem Preview no topo da área de design do relatório. Eu mudei o título do gráfico, a descrição dos eixos X e Y. Se você seguiu exatamente o que fiz, o seu gráfico ficará parecido com este abaixo.

image

As suas barras e a linha serão diferentes desta acima, visto que os dados foram gerados por um Rand() então será praticamente impossível seus dados serem iguais a este plotado.

Agora é com vocês, analisem suas necessidades e utilizem o Reporting Services para fazer seus gráficos de forma simples e direta.

Sobre Diego Nogare 350 Artigos
Diego Nogare é Gerente Técnico de Engenharia de Machine Learning no Itaú-Unibanco. Também é professor em programas de pós graduação no Mackenzie e na FIAP, em São Paulo. Foi nomeado como Microsoft MVP por 11 anos seguidos, e hoje faz parte do programa Microsoft Regional Director.