Sintassi di query XML per la definizione di dati di report XML
Data aggiornamento: 14 aprile 2006
In Reporting Services è possibile creare set di dati per origini dei dati XML. Dopo avere definito un'origine dei dati, è possibile creare una query per il set di dati. In base al tipo di dati XML a cui punta l'origine dei dati, è possibile creare la query del set di dati includendo un elemento Query XML o un percorso di elemento. Un elemento Query XML inizia con un tag <Query> e include spazi dei nomi ed elementi XML che variano in base all'origine dei dati. Un percorso di elemento è indipendente dallo spazio dei nomi e specifica i nodi e gli attributi dei nodi dei dati XML sottostanti da utilizzare tramite una sintassi di tipo XPath. Per ulteriori informazioni sui percorsi di elementi, vedere Sintassi dei percorsi di elementi per la definizione di dati di report XML.
È possibile creare un'origine dei dati XML per i tipi di dati XML seguenti:
- Documenti XML a cui punta un URL tramite il protocollo HTTP
- Endpoint del servizio Web che restituiscono dati XML
- Dati XML incorporati
La modalità utilizzata per specificare un elemento Query XML o un percorso di elemento dipende dal tipo di dati XML.
Per un documento XML, l'elemento Query XML è facoltativo. Se viene incluso, può contenere un elemento ElementPath XML facoltativo. Per il valore dell'elemento ElementPath XML viene utilizzata la sintassi del percorso di elemento. Gli elementi Query XML ed ElementPath XML vengono inclusi per consentire l'elaborazione corretta degli spazi dei nomi quando richiesto dai dati XML dell'origine dei dati.
Per un endpoint del servizio Web a cui punta un URL della stringa di connessione, l'elemento Query definisce l'azione SOAP o il metodo del servizio Web oppure entrambi. Tramite il provider di dati XML viene creata una richiesta del servizio Web per recuperare i dati XML da utilizzare per il report.
[!NOTA] Quando uno spazio dei nomi del servizio Web contiene una barra (/), includere sia il metodo del servizio Web che l'azione SOAP, per consentire all'estensione per l'elaborazione dati XML di derivare lo spazio dei nomi in modo corretto.
Per un documento XML incorporato, l'elemento Query XML definisce i dati XML incorporati da utilizzare, include gli spazi dei nomi facoltativi e contiene un elemento ElementPath XML facoltativo.
Impostazione di parametri di query per dati XML
È possibile specificare parametri di query per documenti XML.
- Per le richieste di URL, i parametri di query vengono inclusi come parametri URL standard.
- Per le richieste del servizio Web, i parametri di query vengono passati al metodo del servizio Web. Per definire un parametro di query, utilizzare la scheda Parametri della finestra di dialogo Set di dati. Per ulteriori informazioni, vedere Set di dati (scheda Parametri, Progettazione report).
Esempio
Negli esempi della tabella seguente viene illustrato come recuperare i dati dal servizio Web ReportServer, da un documento XML e dai dati XML incorporati.
Origine dei dati XML | Esempio di query |
---|---|
Dati XML del servizio Web tramite il metodo ListChildren. |
|
Dati XML del servizio Web tramite SoapAction. |
|
Documento XML o dati XML incorporati tramite gli spazi dei nomi. Elemento Query specificando gli spazi dei nomi per un percorso di elemento. |
|
Documento XML incorporato. |
|
Documento XML tramite l'impostazione predefinita. |
No query. Il percorso viene derivato dal documento XML stesso ed è indipendente dallo spazio dei nomi. |
[!NOTA] Nel primo esempio del servizio Web, il contenuto del server di report viene elencato tramite il metodo ListChildren. Per eseguire questa query, è necessario creare una nuova origine dei dati e impostare la stringa di connessione su https://localhost/reportserver/reportservice2005.asmx. Il metodo ListChildren accetta due parametri, ovvero Item e Recursive. Impostare il valore predefinito di Item su / e quello di Recursive su 1.
Definizione degli spazi dei nomi
Utilizzare l'elemento Query XML per specificare gli spazi dei nomi utilizzati nei dati XML dell'origine dei dati. Nella query XML seguente viene utilizzato lo spazio dei nomi sales. Nei nodi ElementPath XML per sales:LineItems
e sales:LineItem
viene utilizzato lo spazio dei nomi sales.
<Query xmlns:sales=
"https://schemas.microsoft.com/StandardSchemas/ExtendedSales">
<SoapAction>
https://schemas.microsoft.com/SalesWebService/ListOrders
</SoapAction>
<ElementPath>
Customers/Customer/Orders/Order/sales:LineItems/sales:LineItem
</ElementPath>
</Query>
Per specificare lo spazio dei nomi del provider di dati, affinché lo spazio dei nomi predefinito rimanga vuoto, utilizzare xmldp, come illustrato nell'esempio seguente.
Esempio
Negli esempi seguenti viene utilizzato il documento XML DPNamespace.xml, illustrato dopo la tabella. Nella tabella sono illustrati due esempi di sintassi ElementPath XML che include i prefissi degli spazi dei nomi.
Elemento Query XML
Campi risultanti nel set di dati
<Query/>
Node
ns
Value Ahttps://schemas.microsoft.com/...
Value Bhttps://schemas.microsoft.com/...
Value Chttps://schemas.microsoft.com/...
<xmldp:Query xmlns:xmldp="https://schemas.microsoft.com/sqlserver/2005/02/reporting/XmlDPQuery" xmlns:ns="https://schemas.microsoft.com/...">
<xmldp:ElementPath>Root {}/ns:Element2/Node</xmldp:ElementPath>
</xmldp:Query>
Node
Value D
Value E
Value F
Documento XML: DPNamespace.xml
È possibile copiare il codice XML seguente e salvarlo in un URL a cui sia possibile accedere tramite Progettazione report, per l'utilizzo come origine dei dati XML, ad esempio, https://localhost/DPNamespace.xml.
<Root xmlns:ns="https://schemas.microsoft.com/...">
<ns:Element1>
<Node>Value A</Node>
<Node>Value B</Node>
<Node>Value C</Node>
</ns:Element1>
<ns:Element2>
<Node>Value D</Node>
<Node>Value E</Node>
<Node>Value F</Node>
</ns:Element2>
</Root>
Vedere anche
Concetti
Definizione di set di dati del report per i dati XML
Altre risorse
Esercitazione: Utilizzo di dati XML in un report
Guida in linea e informazioni
Cronologia modifiche
Versione | Cronologia |
---|---|
14 aprile 2006 |
|