Conectando a uma fonte de dados (Reporting Services)

A definição de uma fonte de dados especifica o tipo da fonte de dados, a cadeia de conexão e as credenciais. Definições de fontes de dados podem ser compartilhadas para uso por vários relatórios ou incorporadas na definição do relatório. Para obter mais informações, consulte Gerenciando fontes de dados de relatório.

As informações da conexão armazenadas para uma fonte de dados variam de acordo com o tipo da fonte de dados. O Reporting Services fornece extensões de dados que suportam os seguintes tipo de fonte de dados:

  • Microsoft SQL Server

  • Microsoft SQL Server Analysis Services

  • OLE DB

  • Oracle

  • ODBC

  • Modo do Servidor de Relatório

  • SAP NetWeaver BI

  • Hyperion Essbase

  • Teradata

  • XML

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..

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

Especificando uma fonte de dados

Ao criar um relatório pela primeira vez, é solicitado que você crie uma definição de fonte de dados. É possível criar uma nova definição de fonte de dados ou usar uma fonte de dados compartilhada existente. Para conectar a uma fonte de dados, você deve ter as seguintes informações:

  • **Tipo da fonte de dados   **O tipo específico da fonte de dados, por exemplo, MicrosoftSQL Server. Escolha esse valor na lista de tipos de fonte de dados suportadas.

  • Informações de conexão   Também conhecidas como a cadeia de conexão, as informações de conexão incluem o nome e o local da fonte de dados e, algumas vezes, uma versão específica do provedor de dados. Se a fonte de dados for um banco de dados, você poderá especificar o nome do banco de dados na cadeia de conexão. Para fontes de dados incorporadas, 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 mais adiante neste tópico.

  • Permissões   Você deve ter recebido as permissões apropriadas para acessar a fonte de dados e os dados específicos na fonte de dados usando as credenciais especificadas. Por exemplo, para conectar ao banco de dados de exemplo AdventureWorks instalado em um servidor de rede, você deve ter permissão para conectar ao servidor e também permissão de leitura e gravação para acessar o banco de dados.

    ObservaçãoObservação

    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. Para obter mais informações, consulte Como verificar uma conexão a uma fonte de dados.

Depois de conectar a uma fonte de dados, a definição da fonte de dados é exibida no painel Dados do Relatório. O painel Dados do Relatório exibe fontes de dados incorporadas e referências a fontes de dados compartilhadas. Fontes de dados compartilhadas são exibidas no Gerenciador de Soluções na pasta Fonte de Dados Compartilhada. É possível especificar fontes de dados adicionais para um relatório no painel Dados do Relatório.

Para obter mais informações, consulte:

ObservaçãoObservação

Ao criar uma fonte de dados incorporada para um relatório no Business Intelligence Development Studio, você deve criar a fonte de dados no Designer de Relatórios, não no Gerenciador de Servidores. O Designer de Relatórios do SQL Server não usa fontes de dados do Visual Studio criadas no Gerenciador de Servidores.

Exemplos comuns de cadeia de conexão

A tabela a seguir lista exemplos de cadeias de conexão para várias fontes de dados. Para obter mais informações sobre as configurações necessárias para conectar a esses tipos de fonte de dados, consulte Fontes de dados com suporte no Reporting Services.

Fonte de dados

Exemplo

Descrição

Banco de dados do SQL Server no servidor local

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

Defina o tipo da fonte de dados como SQL Server.

Banco de dados do SQL Server no servidor local

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

Defina o tipo da fonte de dados como SQL Server.

Instância do SQL Server

banco de dados

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

Defina o tipo da fonte de dados como SQL Server.

Banco de dados do SQL Server Express

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

Defina o tipo da fonte de dados como SQL Server.

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 SQL Server Analysis Services.

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.

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 Criando conjuntos de dados de relatório de um banco de dados Oracle.

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 Criando Conjuntos de dados de Relatório de uma fonte de dados SAP NetWeaver BI.

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 Criando conjuntos de dados de relatório de uma fonte de dados do Hyperion Essbase.

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.

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 caracteres de conexão é uma URL para um serviço Web com suporte para WSDL. Para obter mais informações, consulte Criando conjuntos de dados de relatório a partir de dados XML.

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. Para obter mais informações, consulte Criando conjuntos de dados de relatório a partir de dados XML.

Fonte de dados XML, documento XML incorporado

Vazio

Defina o tipo da fonte de dados como XML. Os dados XML são incorporados na definição do relatório. Para obter mais informações, consulte Criando conjuntos de dados de relatório a partir de dados XML

Se não for possível conectar a um servidor de relatório que use 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.

Credenciais para fontes de dados

Quando você visualiza relatórios no Designer de Relatórios no BI Development Studio, o processador de relatório recupera os dados da fonte de dados usando as credenciais especificadas para criar a fonte de dados. Essas credenciais são armazenadas no arquivo de configuração do projeto local e são específicas ao computador no qual as credenciais foram armazenadas. Se você copiar os arquivos do projeto em outro computador, deverá redefinir as credenciais da fonte de dados.

Ao publicar seu relatório, as credenciais usadas localmente podem não ser suficientes para exibir o relatório no servidor de relatório. As credenciais da fonte de dados necessárias para acessar os dados de 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 no servidor de relatório. Se for necessário alterar as credenciais, você poderá modificá-las diretamente no servidor de relatório. Para obter mais informações, consulte Especificando informações de credencial e conexão para fontes de dados do relatório e Como armazenar credenciais para uma fonte de dados (Gerenciador de Relatórios).

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 incorporada 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.

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 conseguirã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.

ObservaçãoObservação

Não é recomendável adicionar informações de logon, como senhas, na cadeia de conexão. O Designer de Relatórios fornece uma guia separada na caixa de diálogo Fonte de Dados que pode ser usada para inserir credenciais. Essas credenciais são armazenadas com segurança no computador do Designer de Relatórios.