Share via


Criando conjuntos de dados de relatório a partir de dados XML

O Reporting Services tem uma extensão de processamento de dados que permite recuperar dados de relatório de uma fonte de dados XML. Os relatórios podem usar dados de documentos XML e serviços Web ou XML incorporado na consulta. Não há suporte interno para recuperar documentos XML de um banco de dados SQL Server.

Conectando-se a e recuperando dados de uma fonte de dados XML

Para recuperar dados XML em um relatório, crie uma fonte de dados com uma cadeia de conexão que especifica um URL para um serviço Web ou um documento XML. Você também pode criar uma fonte de dados com uma cadeia de conexão em branco ou dados XML incorporados na consulta do conjunto de dados.

Cada fonte de dados XML deve ter as seguintes características:

  • O tipo de fonte de dados deve ser XML. O Reporting Services fornece uma extensão de processamento de dados XML para recuperar e processar os dados em um relatório.

  • As credenciais devem ser configuradas como segurança integrada do Windows ou sem credenciais.

    Não há suporte para credenciais armazenadas nem solicitadas. Lembre-se que se você desativar a segurança integrada do Windows, não poderá usá-la para recuperar dados. Se você especificar as credenciais armazenadas ou solicitadas, ocorrerá um erro em tempo de execução.

    Se você selecionar sem credenciais, o acesso Anônimo será usado. Certifique-se de ter definido a conta de execução autônoma do servidor de relatórios para se conectar a uma fonte de dados externa. A extensão de processamento de dados XML não passa credenciais para o URL de destino nem para o serviço Web; a conexão não será bem-sucedida a menos que você tenha definida a conta de execução autônoma. Para obter mais informações, consulte Configurando a conta de execução autônoma.

  • A cadeia de conexão deve ser um URL que aponta para o serviço Web, aplicativo com base na Web ou documento XML disponível no HTTP. Os documentos XML deve ter a extensão XML. Você também pode usar uma cadeia de conexão em banco para dados XML incorporados na consulta do conjunto de dados.

  • A consulta deve retornar os dados XML. Para documentos XML, você pode fornecer um caminho de elemento usando a sintaxe XML semelhante à XQuery, conforme descrito em Sintaxe do caminho do elemento para especificar dados de relatório XML. Para um serviço Web, você pode fornecer um elemento <Query> que especifica um método a ser chamado ou ação SOAP. Você pode deixar a consulta em branco e usar a consulta padrão se os dados XML tiverem uma estrutura hierárquica que gera os dados que você deseja usar em seu relatório. Os atributos e valores de nó elemento XML recuperados quando a consulta é executada são mapeados para os campos do conjunto de dados usados no seu relatório.

  • Você deve usar o designer de consulta com base em texto para criar a consulta. A consulta não é analisada para identificar parâmetros; portanto você deve criar parâmetros na página Parâmetro da caixa de diálogo Propriedades do Conjunto de Dados. Para obter mais informações sobre a sintaxe de consulta, consulte Sintaxe de consulta XML para especificar dados de relatório XML. Para obter mais informações sobre o designer de consulta genérico, consulte Consultar ferramentas de design no Reporting Services.

Cadeias de conexão para fontes de dados XML

Os exemplos a seguir ilustram a sintaxe de cadeia de conexão para um serviço Web e documento XML, respectivamente. Não há suporte para o protocolo file://.

Tipo de documento XML

Exemplo de cadeia de conexão

serviço Web

http://adventure-works.com/results.aspx

documento XML

https://localhost/XML/Customers.xml

Documento XML incorporado

Vazio

Para obter mais informações sobre como definir uma fonte de dados, consulte Como criar uma fonte de dados incorporada ou compartilhada.

Consultas para conjuntos de dados com fontes de dados XML

Um conjunto de dados inclui uma consulta, que é o texto de comando executado em uma fonte de dados para recuperar um conjunto de resultados específico. O conjunto de resultados é mapeado para a coleção de campos em um conjunto de dados. Você também pode definir os valores de filtro no conjunto de dados para limitar resultados retornados da fonte de dados. Os valores possíveis para uma consulta de conjunto de dados de uma fonte de dados do tipo XML são mostrados na tabela a seguir.

Consulta do conjunto de dados

Descrição

Vazio

Use uma consulta em branco para criar um conjunto de resultados padrão. A consulta padrão é criada lendo a fonte de dados e desviando a hierarquia do nó XML para a primeira coleção de folhas. O conjunto de resultados inclui todos os nós com valores de texto e todos os atributos de nó ao longo desse caminho. As colunas no conjunto de resultados são mapeadas para os campos no conjunto de dados.

Um caminho do elemento

Especifica a seqüência dos nós a ser usada ao recuperar dados XML da fonte de dados.

Um elemento Query XML

Uma especificação de consulta XML com os elementos opcionais a seguir.

Fonte de dados XMLElementos XML obrigatóriosElementos XML opcionais
Para um serviço Web <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> ação SOAP </SoapAction> <ElementPath> caminho do elemento </ElementPath> <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> ação SOAP </SoapAction>
Para um documento XML <ElementPath> caminho do elemento </ElementPath>
Para um documento XML incorporado <XmlData> XML interno </XmlData> <ElementPath> caminho do elemento </ElementPath> -- or -- <ElementPath IgnoreNamespaces="true"> caminho do elemento </ElementPath>

Use o elemento Query XML para especificar namespaces ou o atributo IgnoreNamespaces no ElementPath XML para ignorá-los. Para obter mais informações sobre o elemento Query XML, consulte Sintaxe de consulta XML para especificar dados de relatório XML. Para obter mais informações sobre a sintaxe de caminho do elemento, consulte Sintaxe do caminho do elemento para especificar dados de relatório XML.

Requisitos para recuperar os dados do serviço Web XML

A extensão de processamento de dados XML não detecta o esquema para você. Portanto, você deve ter alguma maneira de descobrir quais métodos SOAP recuperarão os dados desejados. Você também deve entender o namespace ou esquema de endereçamento que o serviço Web usa para seus dados.

Requisitos para recuperar os dados de documento XML

Usando o protocolo http, o servidor deve retornar dados XML ou os dados XML devem ser incorporados no elemento Query XML. Se você se referir a um documento XML diretamente usando o protocolo http, a extensão deverá ser .xml. Você deve saber como criar uma consulta XML que recupere todos os dados necessários. Se você não especificara um caminho de elemento, o comportamento padrão para analisar um documento XML é selecionar o primeiro caminho disponível para uma coleção de nós folha no documento XML. Se o documento XML incluir caminhos adicionais para outras coleções de nós folha irmãos, esses nós serão ignorados a menos que você especifique um caminho para sua consulta. Para obter mais informações, consulte Sintaxe do caminho do elemento para especificar dados de relatório XML.