Compartilhar via


Sub-relatórios (Construtor de Relatórios e SSRS)

Um sub-relatório é um item de relatório que exibe outro relatório dentro do principal corpo de conteúdo de um relatório. Conceitualmente, um sub-relatório em um relatório é semelhante a um quadro em uma página da Web. É usado para inserir um relatório dentro de um relatório. Qualquer relatório pode ser usado como um sub-relatório. O relatório exibido pelo sub-relatório é armazenado em um servidor de relatório, normalmente na mesma pasta do relatório pai. Você pode designar o relatório pai para transmitir parâmetros ao sub-relatório. Um sub-relatório pode ser repetido em regiões de dados, usando um parâmetro para filtrar dados em cada instância do sub-relatório.

rs_Subreport

Nesta ilustração, as informações de contato exibidas no relatório de Ordem de Venda principal vêm de um sub-relatório Contatos.

ObservaçãoObservação

Você pode criar e modificar definições de relatório (.rdl) no Construtor de Relatórios e no Designer de Relatórios no SQL Server Data Tools. Cada ambiente de criação fornece modos diferentes para criar, abrir e salvar relatórios e itens relacionados. Para obter mais informações, consulte Partes de Relatório (Construtor de Relatórios e SSRS) e Partes de Relatório no Designer de Relatórios (SSRS) na Web em microsoft.com.

Comparando sub-relatórios e regiões de dados aninhados

Se você estiver pensando em usar os sub-relatórios para exibir grupos de dados separados, considere o uso de regiões de dados como tabelas, matrizes, listas e gráficos. Os relatórios com regiões de dados podem executar melhor apenas os relatórios que incluem sub-relatórios.

Use as regiões de dados para aninhar grupos de dados a partir da mesma fonte de dados dentro de uma região de dados simples. Use os sub-relatórios para aninhar os grupos de dados de diferentes fontes de dados dentro de uma região de dados simples, reutilizar um sub-relatório em vários relatórios pai ou exibir um relatório autônomo dentro de outro relatório. Por exemplo, você pode criar um "livro-síntese" posicionando vários sub-relatórios dentro de outro relatório.

As regiões de dados fornecem muito da funcionalidade e flexibilidade de sub-relatórios, mas com melhor desempenho. Como o servidor de relatório processa cada instância de um sub-relatório como um relatório separado, pode haver impacto no desempenho. Para obter mais informações, consulte Regiões de dados aninhadas (Construtor de Relatórios e SSRS).

Usando parâmetros em sub-relatórios

Para passar os parâmetros do relatório pai para o sub-relatório, defina um parâmetro de relatório no relatório que está sendo usado como o sub-relatório. Ao inserir o sub-relatório no relatório pai, você poderá selecionar o parâmetro de relatório e um valor que poderão ser passados do relatório pai para o parâmetro de relatório no sub-relatório.

ObservaçãoObservação

O parâmetro que você seleciona no sub-relatório é um parâmetro de relatório, não um parâmetro de consulta.

O sub-relatório pode ser colocado no corpo principal do relatório ou em uma região de dados. Se o sub-relatório for posicionado em uma região de dados, ele será repetido em cada instância do grupo ou da linha na região de dados. Para passar um valor a partir de um grupo ou uma linha para o sub-relatório, na propriedade de valor do sub-relatório, use uma expressão de campo para o campo que contém o valor que deseja passar para o parâmetro de sub-relatório.

Para obter mais informações sobre como trabalhar com sub-relatórios, consulte Adicionar um sub-relatório e parâmetros (Construtor de Relatórios e SSRS).

Especificando nomes e locais de sub-relatório

É possível criar um relatório principal para especificar um sub-relatório em outra pasta no mesmo servidor de relatório.

A sintaxe a ser usada para especificar o sub-relatório dependerá do modo em que estará o servidor de relatório, ou seja, no modo nativo ou no modo integrado do SharePoint. Para obter mais informações, consulte Especificando caminhos para itens externos (Construtor de Relatórios e SSRS).

No Construtor de Relatórios, para visualizar um sub-relatório em um relatório principal, os dois relatórios devem estar localizados no mesmo servidor de relatório ou você deve especificar um caminho completo para o sub-relatório.

Consulte também

Conceitos

Detalhamento, busca detalhada, sub-relatórios e regiões de dados aninhadas (Construtor de Relatórios e SSRS)