Tutorial: Criando um relatório de matriz (Report Builder 3.0)

Este tutorial ensina a criar um relatório de matriz básico com base em dados de vendas de exemplo. A matriz tem grupos de linhas e de colunas aninhados e um grupo de colunas adjacente. Você também aprenderá a formatar colunas e a girar texto. A ilustração a seguir mostra um relatório semelhante ao que você criará.

Relatório que exibe dados em uma matriz

Uma versão aprimorada do relatório que você criará neste tutorial está disponível como um relatório de exemplo do Report Builder 3.0 do SQL Server 2008 R2. Para obter mais informações sobre como baixar esse relatório de exemplo e outros, consulte Relatórios de exemplo do Report Builder 3.0.

O que você aprenderá

Neste tutorial, você aprenderá a:

  1. Criar um relatório de matriz e um conjunto de dados no Assistente de Nova Tabela ou Matriz

  2. Organizar dados e escolher layout e estilo no Assistente de Nova Tabela ou Matriz

  3. Formatar dados

  4. Adicionar grupo de colunas adjacente

  5. Alterar larguras da coluna

  6. Mesclar células na matriz

  7. Adicionar um cabeçalho e um título de relatório

  8. Salvar o relatório

Outra etapa opcional

  1. Girar caixa de texto em 270 graus

Tempo estimado para concluir este tutorial: 20 minutos.

Requisitos

Para obter mais informações sobre os requisitos, consulte Pré-requisitos para tutoriais (Construtor de Relatórios 3.0).

1. Criar um relatório de matriz e um conjunto de dados no Assistente de Nova Tabela ou Matriz

Na caixa de diálogo Guia de Introdução do Criador de Relatórios 3.0, escolha uma fonte de dados compartilhada, crie um conjunto de dados inserido e, em seguida, exiba os dados em uma matriz.

ObservaçãoObservação

Neste tutorial, como já contém os valores de dados, a consulta não precisa de uma fonte de dados externa. Isso torna a consulta bastante longa. Em um ambiente empresarial, uma consulta não conteria os dados. Isso é apenas para fins de aprendizado.

Para criar uma nova matriz

  1. Clique em Iniciar, aponte para Programas, para Report Builder 3.0 do Microsoft SQL Server 2008 R2 e, em seguida, clique em Report Builder 3.0.

    ObservaçãoObservação

    A caixa de diálogo Guia de Introdução deve ser exibida. Se ela não for exibida, usando o botão do Report Builder, clique em Novo.

  2. No painel esquerdo, verifique se Novo Relatório está selecionado.

  3. No painel direito, clique em Assistente de Tabela ou Matriz.

  4. Na página Escolha um conjunto de dados, clique em Criar um conjunto de dados.

  5. Clique em Avançar.

  6. Na página Escolha uma conexão com uma fonte de dados, selecione uma fonte de dados existente ou navegue até o servidor de relatório e, em seguida, selecione uma fonte de dados. Se não houver nenhuma fonte de dados disponível ou você não tiver acesso a um servidor de relatório, em vez disso, será possível usar uma fonte de dados inserida. Para obter mais informações sobre como criar uma fonte de dados inserida, consulte Tutorial: Criando um relatório de tabela básico (Construtor de Relatórios 3.0).

  7. Clique em Avançar.

  8. Na página Crie uma consulta, clique em Editar como Texto.

  9. Copie e cole a seguinte consulta no painel de consulta:

    SELECT CAST('2009-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(16996.60 AS money) AS Sales, 68 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13747.25 AS money) AS Sales, 55 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(9248.15 AS money) As Sales, 37 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1800.00 AS money) AS Sales, 24 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1125.00 AS money) AS Sales, 15 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,  'Lens Adapter' as Product, CAST(742.50 AS money) AS Sales, 11 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1417.50 AS money) AS Sales, 21 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13497.30 AS money) AS Sales, 54 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(11997.60 AS money) AS Sales, 48 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(10247.95 AS money) As Sales, 41 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory, 'Tripod' as Product, CAST(1200.00 AS money) AS Sales, 16 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(2025.00 AS money) AS Sales, 27 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1425.00 AS money) AS Sales, 19 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(887.50 AS money) AS Sales, 13 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Lens Adapter' as Product, CAST(607.50 AS money) AS Sales, 9 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1215.00 AS money) AS Sales, 18 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(10191.00 AS money) AS Sales, 79 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'North' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8772.00 AS money) AS Sales, 68 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(10578.00 AS money) AS Sales, 82 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Central' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(7218.10 AS money) AS Sales, 38 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'North' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'South' as Territory,'Digital' as Subcategory,'Slim Digital' as Product, CAST(9307.55 AS money) AS Sales, 49 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(3870.00 AS money) AS Sales, 30 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'North' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(5805.00 AS money) AS Sales, 45 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8643.00 AS money) AS Sales, 67 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Central' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(9877.40 AS money) AS Sales, 52 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'North' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(12536.70 AS money) AS Sales, 66 as Quantity
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'South' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(6648.25 AS money) AS Sales, 35 as Quantity
    
  10. Clique em Avançar.

2. Organizar dados e escolher layout e estilo no Assistente de Nova Tabela ou Matriz

Use o assistente para fornecer um design inicial no qual exibir dados. O painel de visualização no assistente ajuda a visualizar o resultado dos dados de agrupamento antes de concluir o design da matriz.

Para organizar dados em grupos e escolher um layout e um estilo

  1. Na página Organizar campos, arraste Territory de Campos disponíveis para Grupos de linhas.

  2. Arraste SalesDate para Grupos de linhas e coloque-o abaixo de Territory.

    A ordem na qual os campos são listados em Grupos de linhas define a hierarquia do grupo. As etapas 1 e 2 organizam os valores dos campos primeiro por território e, em seguida, por data das vendas.

  3. Arraste Subcategory para Grupos de colunas.

  4. Arraste Product para Grupos de colunas, e coloque-o abaixo de Subcategory.

    A ordem na qual os campos são listados em Grupos de colunas define a hierarquia do grupo.

    As etapas 3 e 4 organizam os valores dos campos primeiro por subcategoria e, em seguida, por produto.

  5. Arraste Sales para Valores.

    Sales é resumido com a função Soma, a função padrão para resumir campos numéricos.

  6. Arraste Quantity para Valores.

    Quantity é resumida com a função Soma.

    As etapas 5 e 6 especificam os dados a serem exibidos nas células de dados da matriz.

  7. Clique em Avançar.

  8. Na página Escolha o Layout, em Opções, verifique se Mostrar subtotais e totais gerais está selecionado.

  9. Verifique se a opção Em bloco, subtotal abaixo está selecionada.

  10. Verifique se a opção Expandir/recolher grupos está selecionada.

  11. Clique em Avançar.

  12. Na página Escolha um estilo, no painel Estilos, selecione Ardósia.

  13. Clique em Concluir.

    A matriz é adicionada à superfície de design. O painel Grupos de Linhas exibe dois grupos de linhas: Territory e SalesDate. O painel Grupos de Colunas exibe dois grupos de colunas: Subcategory e Product. Os dados detalhados são todos os dados recuperados pela consulta do conjunto de dados.

  14. Clique em Executar para visualizar o relatório.

Para cada produto vendido em uma data específica, a matriz mostra a subcategoria a que o produto pertence e o território das vendas.

3. Formatar dados

Por padrão, os dados resumidos do campo Sales exibem um número geral e o campo SalesDate exibe as informações de data e hora. Formate o campo Sales para exibir o número como moeda e o campo SalesDate para exibir somente a data. Alterne Estilos de Espaço Reservado para exibir caixas de texto formatadas e textos de espaço reservado como valores de exemplo.

Para formatar campos

  1. Clique em Design a fim de alternar para a exibição de design.

  2. Pressione a tecla Ctrl e, em seguida, selecione as nove células que contenham [Sum(Sales)].

  3. Na guia Página Inicial, no grupo Número, clique no botão Moeda. As células são alteradas para mostrar a moeda formatada.

    Se a sua configuração regional for inglês (Estados Unidos), o texto de exemplo padrão será [$12,345.00]. Se você não vir um valor de moeda de exemplo, clique em Estilos de Espaço Reservado, no grupo Números, e em Valores de exemplo.

  4. Clique na célula que contenha [SalesDate].

  5. No grupo Número, na lista suspensa, selecione Data.

    A célula exibe a data de exemplo [31/1/2000]. Se você não vir uma data de exemplo, clique em Estilos de Espaço Reservado, no grupo Números, e em Valores de exemplo.

  6. Clique em Executar para visualizar o relatório.

Os valores de data só exibem datas e os valores de vendas são exibidos como moeda.

4. Adicionar grupo de colunas adjacente

É possível aninhar grupos de linhas e de colunas em relações de pai e filho ou adjacentes em relações de irmão.

Adicione um grupo de colunas adjacente ao grupo de colunas Subcategory, copie células para popular o novo grupo de colunas e, em seguida, use uma expressão para criar o valor do cabeçalho do grupo de colunas.

Para adicionar um grupo de colunas adjacente

  1. Clique em Design para retornar à exibição de design.

  2. Clique com o botão direito do mouse na célula que contenha [Subcategory], aponte para Adicionar Grupo e, em seguida, clique em Adjacente à Direita.

    A caixa de diálogo Grupo Tablix é aberta.

  3. Na lista Agrupar por, selecione SalesDate, e depois clique em OK.

    Um novo grupo de colunas é adicionado à direita do grupo de colunas Subcategory.

  4. Clique com o botão direito do mouse na célula no novo grupo de colunas que contenha [SalesDate], e depois clique em Expressão.

  5. Copie a expressão a seguir para a caixa Expressão.

    =WeekdayName(DatePart("w",Fields!SalesDate.Value))
    

    Clique em OK.

    Essa expressão extrai o nome do dia da semana da data das vendas. Para obter mais informações, consulte Expressões (Construtor de Relatórios 3.0 e SSRS).

  6. Clique com o botão direito do mouse na célula no grupo de colunas Subcategory que contenha Total e, em seguida, clique em Copiar.

  7. Clique com o botão direito do mouse na célula logo abaixo da célula que contenha a expressão criada na etapa 5 e clique em Colar.

  8. Pressione a tecla Ctrl.

  9. No grupo Subcategory, clique no título da coluna Sales e nas três células abaixo dela, clique com o botão direito do mouse nela e, em seguida, clique em Copiar.

  10. Cole as quatro células nas quatro células vazias do novo grupo de colunas.

  11. Clique em Executar para visualizar o relatório.

O relatório inclui colunas nomeadas Monday e Tuesday. O conjunto de dados contém apenas dados referentes a esses dois dias.

ObservaçãoObservação

Se os dados incluíssem outros dias, o relatório também incluiria colunas para eles. Cada coluna tem o cabeçalho da coluna, Vendas, e os totais de vendas por território.

5. Alterar larguras da coluna

Um relatório que inclua uma matriz normalmente se expande horizontalmente, bem como verticalmente, quando executado. O controle da expansão horizontal será especialmente importante se você planejar exportar o relatório para formatos como Microsoft Word ou Adobe PDF, usados em relatórios impressos. Se o relatório se expandir horizontalmente em várias páginas, será difícil compreender o relatório impresso. Para minimizar a expansão horizontal, é possível redimensionar colunas seguindo exclusivamente a largura necessária para exibir os dados sem quebra de texto. Também é possível renomear colunas para que os títulos se ajustem à largura necessária para exibir os dados.

Para renomear e redimensionar as colunas

  1. Clique em Design para retornar à exibição de design.

  2. Selecione o texto na coluna Quantity mais à esquerda e, em seguida, digite QTY.

    O título da coluna agora é QTY.

  3. Repita a etapa 2 para as outras colunas nomeadas Quantity. Há duas delas.

  4. Clique na matriz para que os identificadores de coluna e de linha sejam exibidos acima e ao lado da matriz.

    As barras em cinza ao longo da parte superior e ao lado da tabela são os identificadores de coluna e de linha.

  5. Para redimensionar a coluna QTY mais à esquerda, aponte para a linha entre os identificadores de coluna de forma que o cursor seja alterado para uma seta dupla. Arraste a coluna para a esquerda até que ela tenha 1,27 centímetros de largura.

    Uma largura da coluna de 1,27 centímetros é suficiente para exibir a quantidade.

  6. Repita a etapa 5 para as outras colunas nomeadas QTY.

  7. Clique em Executar para visualizar o relatório.

As colunas no relatório que contenha quantidades agora são nomeadas QTY e estão mais estreitas.

6. Mesclar células na matriz

A área de canto está no canto superior esquerdo da matriz. Dependendo do número de grupos de linhas e de colunas na matriz, o número de células na área de canto varia. A matriz interna neste tutorial tem quatro células na área de canto. As células são organizadas em duas linhas e duas colunas, o que reflete a profundidade das hierarquias dos grupos de linhas e de colunas. As quatro células não são usadas neste relatório, e você as mesclará em uma só.

Para mesclar células na matriz

  1. Clique em Design para retornar à exibição de design.

  2. Clique na matriz para que os identificadores de coluna e de linha sejam exibidos acima e ao lado da matriz.

  3. Pressione a tecla Ctrl e, em seguida, selecione as quatro células de canto.

  4. Clique com o botão direito do mouse nas células e, em seguida, clique em Mesclar Células.

  5. Clique com o botão direito do mouse na célula de canto e, em seguida, clique em Propriedades da Caixa de Texto.

  6. Clique na guia Preenchimento.

  7. Clique no botão (fx) de Cor de Preenchimento.

  8. Copie e cole a expressão a seguir na caixa de expressão.

    #96a4b2
    

    Trata-se do valor hexadecimal RGB de uma cor azul acinzentada usada no estilo Ardósia.

  9. Clique em OK.

  10. Clique em OK. novamente para retornar a exibição do design e clique em Executar para visualizar seu relatório.

A matriz de canto superior é uma única célula e tem a mesma cor das células dos grupos de linhas e de colunas.

7. Adicionar um cabeçalho e um título de relatório

Um título é exibido na parte superior do relatório. É possível colocar o título em um cabeçalho do relatório. No entanto, se ele não usar um cabeçalho, será possível colocar o título em uma caixa de texto na parte superior do corpo do relatório. Neste tutorial, você irá remover a caixa de texto na parte superior do relatório e adicionar um título ao cabeçalho.

Para adicionar um cabeçalho e um título de relatório

  1. Clique em Design para retornar à exibição de design.

  2. Clique na caixa de texto na parte superior do corpo do relatório que contenha Clique para adicionar títuloe, em seguida, pressione a tecla Del.

  3. Na guia Inserir da faixa de opções, clique em Cabeçalho e em Adicionar Cabeçalho.

    Um cabeçalho é adicionado à parte superior do corpo do relatório.

  4. Na guia Inserir , clique em Caixa de Texto e, em seguida, arraste uma caixa de texto para dentro do cabeçalho do relatório. Crie a caixa de texto com 15,24 centímetros de comprimento e 1,90 centímetros de altura e posicione-a no lado esquerdo do cabeçalho do relatório.

  5. Na caixa de texto, digite Sales by Territory, Subcategory, and Day.

  6. Selecione o texto digitado, clique com o botão direito do mouse e, em seguida, clique em Propriedades de Texto.

    ObservaçãoObservação

    Para formatar caracteres simultaneamente, eles devem ser contíguos.

  7. Na caixa de diálogo Propriedades de Texto, clique em Fonte.

  8. Na lista Fonte, selecione Times New Roman; em Tamanho, selecione 24 pt, em Cor, selecione Bordô e, em Estilo, selecione Itálico.

  9. Clique em OK.

  10. Clique em Executar para visualizar o relatório.

O relatório inclui um título de relatório no cabeçalho do relatório.

8. Salvar o relatório

É possível salvar relatórios em um servidor de relatório, em uma biblioteca do SharePoint ou no computador. Para obter mais informações, consulte Servidores de relatório e servidores de relatório do SharePoint (Construtor de Relatórios 3.0 e SSRS).

Neste tutorial, salve o relatório em um servidor de relatório. Se você não tiver acesso ao servidor de relatório, salve o relatório no computador.

Para salvar o relatório em um servidor de relatório

  1. No botão Construtor de Relatórios, clique em Salvar como.

  2. Clique em Sites e Servidores Recentes.

  3. Selecione ou digite o nome do servidor de relatório no qual você tem permissão para salvar relatórios.

    A mensagem "Conectando-se a um servidor de relatório" é exibida. Quando a conexão for estabelecida, você verá o conteúdo da pasta de relatório que o administrador do servidor de relatório especificou como o local de relatório padrão.

  4. Em Nome, substitua o nome padrão por SalesByTerritorySubcategory.

  5. Clique em Salvar.

O relatório será salvo no servidor de relatório. O nome do servidor de relatório ao qual você está conectado é exibido na barra de status da parte inferior da janela.

Para salvar o relatório no computador

  1. No botão Construtor de Relatórios, clique em Salvar como.

  2. Clique em Área de Trabalho, Meus Documentos ou Meu Computador e, em seguida, navegue até a pasta na qual você deseja salvar o relatório.

  3. Em Nome, substitua o nome padrão por SalesByTerritorySubcategory.

  4. Clique em Salvar.

9. (Opcional) Girar caixa de texto em 270 graus

Um relatório com matrizes pode se expandir horizontal e verticalmente quando executado. Girando-se caixas de texto verticalmente, ou em 270 graus, é possível economizar espaço horizontal. Em seguida, o relatório renderizado é estreitado e, se exportado para um formato como o Microsoft Word, será mais provável o ajuste em uma página impressa.

Uma caixa de texto também pode exibir texto na horizontal, vertical (de cima para baixo). Para obter mais informações, consulte Caixas de texto (Construtor de Relatórios 3.0 e SSRS).

Para girar caixa de texto em 270 graus

  1. Clique em Design para retornar à exibição de design.

  2. Clique na célula que contenha [Territory].

  3. No painel Propriedades, localize a propriedade WritingMode e, na lista suspensa, selecione Rotate270.

    Se o painel Propriedades não estiver aberto, clique na guia Exibir da faixa de opções e, em seguida, selecione Propriedades.

  4. Verifique se a propriedade CanGrow está definida como True.

  5. Redimensione a coluna Territory para ter 1,27 centímetro de largura e exclua o título da coluna.

  6. Clique em Executar para visualizar o relatório.

O nome de território é escrito verticalmente, de baixo para cima. A altura do grupo de linhas Territory varia de acordo com o tamanho do nome do território.