Creazione di set di dati del report da dati XML (Generatore report 2.0)

In Generatore report 2.0 è disponibile un'estensione per l'elaborazione dei dati che supporta il recupero di dati di report da un'origine dati XML. I report consentono di utilizzare dati di servizi Web e documenti XML oppure di incorporare codice XML nella query. Non è disponibile alcun supporto predefinito per il recupero di documenti XML da un database di SQL Server.

Connessione e recupero di dati da un'origine dati XML

Per recuperare dati XML in un report, creare un'origine dati con una stringa di connessione che specifica un URL di un servizio Web o di un documento XML. È anche possibile creare un'origine dati con una stringa di connessione vuota e incorporare dati XML nella query del set di dati.

Ogni origine dati XML deve avere le caratteristiche seguenti:

  • Il tipo di origine dei dati deve essere XML. In Generatore report 2.0 è disponibile un'estensione per l'elaborazione di dati XML per recuperare ed elaborare i dati in un report.

  • Le credenziali devono essere configurate per la sicurezza integrata di Windows oppure non devono essere impostate.

    Credenziali archiviate e credenziali fornite dall'utente non sono supportate. Se la sicurezza integrata di Windows è disabilitata, non è possibile utilizzarla per recuperare dati. Se si specificano credenziali archiviate o fornite dall'utente, si verificherà un errore in fase di esecuzione.

    Se non si specificano credenziali, viene utilizzato l'accesso anonimo. Verificare di aver definito l'account di esecuzione automatica per il server di report per eseguire la connessione a un'origine dei dati esterna. L'estensione per l'elaborazione di dati XML non passa credenziali all'URL di destinazione o al servizio Web, pertanto la connessione ha esito positivo solo se è stato definito l'account di esecuzione automatica. Per ulteriori informazioni, vedere "Configurazione di un account per l'elaborazione automatica di un report" nella documentazione relativa a Reporting Services inclusa nella documentazione online di SQL Server.

  • La stringa di connessione deve essere un URL che punta al servizio Web, all'applicazione Web o al documento XML disponibile tramite HTTP. I documenti XML devono avere estensione xml. È inoltre possibile utilizzare una stringa di connessione vuota per i dati XML incorporati nella query del set di dati.

  • La query deve restituire dati XML. Per i documenti XML, è possibile specificare un percorso di elemento utilizzando una sintassi XML simile a XQuery, come descritto in Sintassi del percorso di elemento per la definizione di dati di report XML (Generatore report 2.0). Per un servizio Web, è possibile specificare un elemento <Query> che definisca un metodo da chiamare o un'azione SOAP. È possibile lasciare la query vuota e utilizzare la query predefinita se l'origine dei dati XML ha una struttura gerarchica che genera i dati che si desidera utilizzare per il report. Gli attributi e i valori del nodo elemento XML recuperati durante l'esecuzione della query sono mappati ai campi del set di dati utilizzati nel report.

  • Per creare la query, è necessario utilizzare la finestra Progettazione query basata su testo. Poiché la query non viene analizzata per identificare i parametri, è necessario creare questi ultimi utilizzando la pagina Parametri della finestra di dialogo Proprietà set di dati. Per ulteriori informazioni sulla sintassi di query, vedere Sintassi delle query XML per la specifica dei dati di report XML (Generatore report 2.0). Per ulteriori informazioni sulla finestra Progettazione query basata su testo, vedere Interfaccia utente di Progettazione query basata su testo (Generatore report 2.0).

Stringhe di connessione per origini dei dati XML

Nell'esempio seguente viene illustrata la sintassi della stringa di connessione, rispettivamente per un servizio Web e per un documento XML. Il protocollo file:// non è supportato.

Tipo di documento XML

Esempio di stringa di connessione

Servizio Web

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

Documento XML

https://localhost/XML/Customers.xml

Documento XML incorporato

Vuota

Per ulteriori informazioni sulla definizione di un'origine dei dati, vedere Procedura: Creazione di un riferimento all'origine dati (Generatore report 2.0).

Query per set di dati con origini dei dati XML

Un set di dati include una query, che costituisce il testo del comando eseguito nell'origine dei dati per recuperare un set di risultati specifico. Il set di risultati è mappato alla raccolta di campi di un set di dati. È inoltre possibile filtrare i valori nel set di dati per limitare i risultati restituiti dall'origine dei dati. I valori possibili di una query del set di dati per un'origine dei dati di tipo XML sono illustrati nella tabella seguente.

Query del set di dati

Descrizione

Vuota

Utilizzare una query vuota per creare un set di risultati predefinito. La query predefinita viene creata leggendo l'origine dei dati e attraversando la gerarchia del nodo XML fino alla prima raccolta foglia. Il set di risultati include tutti i nodi con valori di testo e tutti gli attributi dei nodi nel percorso. Le colonne del set di risultati sono mappate ai campi del set di dati.

Percorso di elemento

Specifica la sequenza di nodi da utilizzare per recuperare i dati XML dall'origine dei dati.

Elemento Query XML

Specifica di query XML con gli elementi facoltativi seguenti.

Origine dei dati XMLElementi XML obbligatoriElementi XML facoltativi
Per un servizio Web <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> soap action </SoapAction> <ElementPath> element path </ElementPath> <Method Namespace= "namespace" Name="MethodName" /> -- or -- <SoapAction> soap action </SoapAction>
Per un documento XML <ElementPath> element path </ElementPath>
Per un documento XML incorporato <XmlData> inner XML </XmlData> <ElementPath> element path </ElementPath> -- or -- <ElementPath IgnoreNamespaces="true"> element path </ElementPath>

Utilizzare l'elemento Query XML per specificare gli spazi dei nomi o l'attributo IgnoreNamespaces in ElementPath XML per ignorarli. Per ulteriori informazioni sull'elemento Query XML, vedere Sintassi delle query XML per la specifica dei dati di report XML (Generatore report 2.0). Per ulteriori informazioni sulla sintassi del percorso di elemento, vedere Sintassi del percorso di elemento per la definizione di dati di report XML (Generatore report 2.0).

Requisiti per il recupero di dati del servizio Web XML

Lo schema non viene rilevato automaticamente dall'estensione per l'elaborazione dati XML. È pertanto necessario essere in grado di individuare i metodi SOAP tramite i quali verranno recuperati i dati desiderati. È inoltre necessario comprendere lo spazio dei nomi o lo schema di indirizzamento che il servizio Web utilizza per i dati.

Requisiti per il recupero di dati di documenti XML

Se si utilizza il protocollo HTTP, il server deve restituire dati XML oppure i dati XML devono essere incorporati nell'elemento Query XML. Se si fa riferimento a un documento XML direttamente utilizzando il protocollo HTTP, l'estensione deve essere xml. È necessario conoscere la procedura di creazione di una query XML per il recupero di tutti i dati che si desidera utilizzare. Se non viene specificato un percorso di elemento, il comportamento predefinito previsto per l'analisi di un documento XML consiste nel selezionare il primo percorso disponibile di una raccolta di nodi foglia nel documento XML. Se nel documento XML sono inclusi percorsi aggiuntivi di altre raccolte di nodi foglia di pari livello, tali nodi verranno ignorati a meno che non venga specificato un percorso nella query. Per ulteriori informazioni, vedere Sintassi del percorso di elemento per la definizione di dati di report XML (Generatore report 2.0).