Conexões de dados, fontes de dados e cadeias de conexão (SSRS)

Para incluir dados em um relatório, você deve primeiro criar conexões de dados, também conhecidas como fontes de dados e, em seguida, criar conjuntos de dados. Uma conexão de dados inclui o tipo da fonte de dados, as informações da conexão e o tipo de credenciais a serem usados. Há dois tipos de fontes de dados: inserida ou compartilhada. Um fonte de dados inserida é definida no relatório e usada apenas por esse relatório. Uma fonte de dados compartilhada é definida independentemente de um relatório e pode ser usada por vários relatórios. Para obter mais informações, consulte Conexões de dados compartilhadas e inseridas (Construtor de Relatórios 3.0 e SSRS) e Conjuntos de dados inseridos e compartilhados (Construtor de Relatórios 3.0 e SSRS).

ObservaçãoObservação

É possível criar e modificar definições de relatórios (.rdl) no Report Builder 3.0 e no Designer de Relatórios no Business Intelligence Development Studio. Cada ambiente de criação fornece diferentes maneiras de criar, abrir e salvar relatórios e itens relacionados. Para obter mais informações, consulte Projetando e implementando relatórios usando o Designer de Relatórios (Reporting Services) na Web em microsoft.com.

A diferença entre as fontes de dados inseridas e as fontes de dados compartilhadas está na maneira como elas são criadas, armazenadas e gerenciadas.

  • No Designer de Relatórios, crie fontes de dados inseridas e compartilhadas como parte de um projeto do Business Intelligence Development Studio. É possível controlar se elas são usadas localmente para visualização ou para implantação como parte do projeto para um servidor de relatório ou site do SharePoint. É possível usar extensões de dados personalizadas que foram instaladas em seu computador e no servidor de relatório ou no site do SharePoint onde você implanta seus relatórios.

    Os administradores do sistema podem instalar e configurar extensões de processamento de dados adicionais e provedores de dados do .NET Framework. Para obter mais informações, consulte Extensões de processamento de dados e provedores de dados do .NET Framework (SSRS).

    Os desenvolvedores podem usar a API Microsoft.ReportingServices.DataProcessing para criar extensões de processamento de dados para oferecer suporte a tipos de fonte de dados adicionais.

  • No Construtor de Relatórios, navegue para um servidor de relatório ou para o SharePoint e selecione fontes de dados compartilhadas ou crie fontes de dados inseridas no relatório. Não é possível criar uma fonte de dados compartilhada no Construtor de Relatórios. Não é possível usar extensões de dados personalizadas no Construtor de Relatórios

Para obter mais informações sobre as diferenças entre ambientes de criação de relatórios, consulte Criando relatórios no Designer de Relatórios e no Construtor de Relatórios 3.0 (SSRS) e Comparando ambientes de criação de relatório.

Extensões de dados internas incluem os seguintes tipos de conexão de dados:

  • Microsoft SQL Server

  • Microsoft SQL Server Analysis Services

  • Lista do Microsoft SharePoint

  • Microsoft SQL Azure

  • Microsoft SQL Server Parallel Data Warehouse

  • OLE DB

  • Oracle

  • SAP NetWeaver BI

  • Hyperion Essbase

  • Teradata

  • XML

  • ODBC

Você também pode especificar uma URL para um modelo de relatório.

Para obter exemplos, consulte Exemplos comuns de cadeia de conexão.

Especificando uma fonte de dados

Para criar a uma fonte de dados, você deve ter as seguintes informações:

  • **Tipo da fonte de dados   **O tipo de conexão, por exemplo, Microsoft SQL Server. Escolha esse valor na lista suspensa de tipos de conexão. 

  • Informações de conexão   As informações de conexão incluem o nome e o local da fonte de dados e as propriedades da conexão que são específicas a cada provedor de dados. A cadeia de conexão é a representação de texto de informações da conexão. Por exemplo, se a fonte de dados for um banco de dados do SQL Server, você poderá especificar o nome do banco de dados. Para fontes de dados inseridas, também é possível gravar cadeias de conexão baseadas em expressão que são avaliadas em tempo de execução. Para obter mais informações, consulte Cadeias de conexão baseadas em expressão posteriormente neste tópico.

  • Credenciais   Você fornece as credenciais necessárias para acessar os dados. O proprietário da fonte de dados deve ter concedido as permissões adequadas a você para acessar a fonte de dados e os dados específicos na fonte de dados. Por exemplo, para conectar ao banco de dados de exemplo AdventureWorks em um servidor de rede, você deve ter permissão para conectar-se ao servidor e também permissão somente leitura para acessar o banco de dados.

    ObservaçãoObservação

    Por design, as credenciais são gerenciadas de maneira independente das fontes de dados. As credenciais usadas para visualizar seu relatório em um sistema local podem ser diferentes das credenciais necessárias para exibir o relatório publicado. Depois de salvar uma fonte de dados no servidor de relatório ou no site do SharePoint, pode ser necessário alterar as credenciais para trabalhar naquele local. Para obter mais informações, consulte Credenciais para fontes de dados.

ObservaçãoObservação

Ao criar uma fonte de dados inserida para um relatório no Business Intelligence Development Studio, você deve criar a fonte de dados no Designer de Relatórios no painel Gerenciador de Soluções ou Dados do Relatório, mas não no Explorador de Servidores. O Designer de Relatórios do SQL Server não oferece suporte a fontes de dados do Visual Studio criadas no Gerenciador de Servidores.

O painel Dados do Relatório exibe fontes de dados inseridas e referências a fontes de dados compartilhadas que foram adicionadas ao relatório. No Construtor de Relatórios, uma referência a uma fonte de dados compartilhada aponta para uma fonte de dados compartilhada em um servidor de relatório ou site do SharePoint. No Designer de Relatórios, uma referência a uma fonte de dados compartilhada aponta para uma fonte de dados compartilhada no Gerenciador de Soluções sob a pasta Fonte de Dados Compartilhada.

Exemplos comuns de cadeia de conexão

Cadeias de conexão são a representação de texto de propriedades de conexão para um provedor de dados. A tabela a seguir lista exemplos de cadeias de conexão para vários tipos de conexão de dados.

Fonte de dados

Exemplo

Descrição

Banco de dados do SQL Server no servidor local

data source="(local)";initial catalog=AdventureWorks

Defina o tipo de fonte de dados como Microsoft SQL Server. Para obter mais informações, consulte Tipo de conexão do SQL Server (SSRS).

Banco de dados do SQL Server no servidor local

data source="(local)";initial catalog=AdventureWorks

Defina o tipo de fonte de dados como Microsoft SQL Server.

Instância do SQL Server

banco de dados

Data Source=localhost\MSSQL10_50.InstanceName; Initial Catalog=AdventureWorks

Defina o tipo da fonte de dados como Microsoft SQL Server.

Banco de dados do SQL Server Express

Data Source=localhost\MSSQL10_50.SQLEXPRESS; Initial Catalog=AdventureWorks

Defina o tipo da fonte de dados como Microsoft SQL Server.

Banco de dados do SQL Azure na nuvem

Data Source=<host>;Initial Catalog=AdventureWorks; Encrypt=True

Defina o tipo da fonte de dados como Microsoft SQL Azure. Para obter mais informações, consulte Tipo de conexão do SQL Azure (SSRS).

SQL Server Parallel Data Warehouse

HOST=<IP address>;database= AdventureWorks; port=<port>

Defina o tipo da fonte de dados como Microsoft SQL Server Parallel Data Warehouse. Para obter mais informações, consulte Tipo de conexão do SQL Server Parallel Data Warehouse (SSRS).

Banco de dados do Analysis Services no servidor local

data source=localhost;initial catalog=Adventure Works DW

Defina o tipo da fonte de dados como Microsoft SQL Server Analysis Services. Para obter mais informações, consulte Tipo de conexão do Analysis Services para MDX (SSRS) ou Tipo de conexão do Analysis Services para DMX (SSRS).

Fonte de dados de modelo de relatório em um servidor de relatório configurado em modo nativo

Server=http://myreportservername/reportserver; datasource=/models/Adventure Works

Especifique o servidor de relatório ou a URL da biblioteca de documentos e o caminho para o modelo publicado na pasta do servidor de relatório ou no namespace da pasta da biblioteca de documentos. Para obter mais informações, consulte Conexão de modelo de relatório (SSRS).

Fonte de dados de modelo de relatório em um servidor de relatório configurado em modo integrado do SharePoint

Server=https://server; datasource=https://server/site/documents/models/Adventure Works.smdl

Especifique o servidor de relatório ou a URL da biblioteca de documentos e o caminho para o modelo publicado na pasta do servidor de relatório ou no namespace da pasta da biblioteca de documentos.

Servidor Analysis Services do SQL Server 2000

provider=MSOLAP.2;data source=<remote server name>;initial catalog=FoodMart 2000

Defina o tipo da fonte de dados como OLE DB Provider for OLAP Services 8.0.

É possível obter uma conexão mais rápida a fontes de dados do Analysis Services do SQL Server 2000 se você definir a propriedade ConnectTo como 8.0. Para definir essa propriedade, use a caixa de diálogo Propriedades da Conexão, guia Propriedades Avançadas.

Servidor do Oracle

data source=myserver

Defina o tipo da fonte de dados como Oracle. As ferramentas do cliente Oracle devem estar instaladas no computador de Designer de Relatórios e no servidor de relatório. Para obter mais informações, consulte Tipo de conexão do Oracle (SSRS).

Fonte de dados do SAP NetWeaver BI

DataSource=http://mySAPNetWeaverBIServer:8000/sap/bw/xml/soap/xmla

Defina o tipo da fonte de dados como SAP NetWeaver BI. Para obter mais informações, consulte Tipo de conexão SAP NetWeaver BI (SSRS).

Fonte de dados do Hyperion Essbase

Data Source=https://localhost:13080/aps/XMLA; Initial Catalog=Sample

Defina o tipo da fonte de dados como Hyperion Essbase. Para obter mais informações, consulte Tipo de conexão do Hyperion Essbase (SSRS).

Fonte de dados do Teradata

data source=<NNN>.<NNN>.<NNN>.<NNN>;

Defina o tipo da fonte de dados como Teradata. A cadeia de conexão é um endereço IP no formulário de quatro campos, em que cada campo pode ter de um a três dígitos. Para obter mais informações, consulte Tipo de conexão do Teradata (SSRS).

Fonte de dados XML, serviço Web

data source=http://adventure-works.com/results.aspx

Defina o tipo da fonte de dados como XML. A cadeia de conexão é uma URL para um serviço Web com suporte para WSDL. Para obter mais informações, consulte Tipo de conexão XML (SSRS).

Fonte de dados XML, documento XML

https://localhost/XML/Customers.xml

Defina o tipo da fonte de dados como XML. A cadeia de conexão é uma URL para o documento XML.

Fonte de dados XML, documento XML inserido

Vazio

Defina o tipo da fonte de dados como XML. Os dados XML são inseridos na definição do relatório.

Se não for possível conectar-se a um servidor de relatório com o localhost, verifique se o protocolo de rede TCP/IP está habilitado. Para obter mais informações, consulte Conectando ao Mecanismo de Banco de Dados do SQL Server.

Para obter mais informações sobre as configurações necessárias para conectar-se a esses tipos de fonte de dados, consulte o tópico sobre a conexão de dados específica em Adicionando dados de fontes de dados externas (SSRS) ou Fontes de dados com suporte no Reporting Services (SSRS).

Credenciais para fontes de dados

Por design, as credenciais podem ser salvas e gerenciadas independentemente das informações de conexão. As credenciais são usadas para criar uma fonte de dados, executar uma consulta de conjunto de dados e para visualizar um relatório.

ObservaçãoObservação

É recomendável não incluir informações de logon, como nomes de logon e senhas, nas propriedades de conexão da fonte de dados. Use fontes de dados compartilhadas com credenciais armazenadas sempre que possível. Em um ambiente de criação, use a página de Credenciais da caixa de diálogo Fonte de dados para inserir credenciais ao criar uma conexão de dados ou ao executar uma consulta de conjunto de dados.

As credenciais inseridas para acesso a dados em seu computador são armazenados com segurança no arquivo de configuração do projeto local e são específicas a seu computador. Se você copiar os arquivos do projeto em outro computador, deverá redefinir as credenciais da fonte de dados.

Ao implantar um relatório para o servidor de relatório ou o site do SharePoint, as fontes de dados inseridas e compartilhadas são gerenciadas de maneira independente. As credenciais da fonte de dados necessárias para acessar os dados em seu computador podem ser diferentes das credenciais necessárias para o servidor de relatório para acessar os dados. Uma prática recomendada é verificar se as conexões da fonte de dados continuam sendo conectadas com êxito após a publicação de um relatório. Se for necessário alterar as credenciais, você poderá modificá-las diretamente no servidor de relatório.

Para alterar as fontes de dados usadas por um relatório, você pode modificar as propriedades do relatório navegando manualmente para uma pasta do servidor de relatório e selecionando uma fonte de dados pelo nome. Para obter mais informações, consulte Como associar um relatório ou modelo a uma fonte de dados compartilhada.

Para obter mais informações, consulte os seguintes tópicos:

Caracteres especiais em uma senha

Se você configurar a fonte de dados ODBC ou SQL para solicitar uma senha ou para incluir uma senha na cadeia de conexão e o usuário inserir a senha com caracteres especiais, como sinais de pontuação, alguns drivers de fonte de dados subjacentes não poderão validar os caracteres especiais. Quando você processar o relatório, a mensagem "Senha inválida" poderá indicar esse problema. Se não for possível alterar a senha, você poderá trabalhar com o administrador do banco de dados para armazenar as credenciais apropriadas no servidor como parte de um DSN (nome da fonte de dados) do sistema ODBC. Para obter mais informações, consulte "OdbcConnection.ConnectionString" na documentação do .NET Framework SDK.

Cadeias de conexão baseadas em expressão

Cadeias de conexão baseadas em expressão são avaliadas em tempo de execução. Por exemplo, você pode especificar a fonte de dados como um parâmetro, incluir a referência ao parâmetro na cadeia de conexão e permitir que o usuário escolha a fonte de dados para o relatório. Por exemplo, suponha que uma empresa multinacional tem servidores de dados em vários países. Com uma cadeia de conexão baseada em expressão, um usuário que está executando um relatório de vendas pode selecionar uma fonte de dados para um país específico antes de executar o relatório.

O exemplo a seguir ilustra o uso de uma expressão de fonte de dados em uma cadeia de conexão do SQL Server. O exemplo assume que você criou um parâmetro de relatório denominado ServerName:

="data source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks

Expressões de fonte de dados são processadas em tempo de execução ou quando um relatório é visualizado. A expressão deve ser escrita no Visual Basic. Use as seguintes diretrizes ao definir uma expressão de fonte de dados:

  • Crie o relatório usando uma cadeia de conexão estática. Uma cadeia de conexão estática faz referência a uma cadeia de conexão que não é definida através de uma expressão (por exemplo, quando você segue as etapas para criar uma fonte de dados específica ao relatório ou compartilhada, você está definindo um cadeia de conexão estática. O uso de uma cadeia de conexão estática permite conectar à fonte de dados no Designer de Relatórios de forma que você possa obter os resultados da consulta necessários para criar o relatório.

  • Ao definir a conexão da fonte de dados, não use uma fonte de dados compartilhada. Não é possível usar uma expressão de fonte de dados em uma fonte de dados compartilhada. Você deve definir uma fonte de dados inserida para o relatório.

  • Especifique credenciais separadamente da cadeia de conexão. É possível usar credenciais armazenadas, credenciais solicitadas ou segurança integrada.

  • Adicione um parâmetro de relatório para especificar uma fonte de dados. Para os valores dos parâmetros, você pode fornecer uma lista estática de valores disponíveis (neste caso, os valores disponíveis devem ser fontes de dados usadas com o relatório) ou definir uma consulta que recupere uma lista de fontes de dados em tempo de execução.

  • Verifique se a lista de fontes de dados compartilha o mesmo esquema de banco de dados. Todo design de relatório começa com informações de esquema. Se houver uma incompatibilidade entre o esquema usado para definir o relatório e o esquema real usado pelo relatório em tempo de execução, o relatório poderá não ser executado.

  • Antes de publicar o relatório, substitua a cadeia de conexão estática por uma expressão. Espere até a conclusão do design do relatório para substituir a cadeia de conexão estática por uma expressão. Ao usar uma expressão, você não pode executar a consulta no Designer de Relatórios. Além disso, a lista de campos no painel Dados do Relatório e a lista de Parâmetros não serão atualizadas automaticamente.