Bagikan melalui


Sintaks Kueri XML untuk Data Laporan XML (SSRS)

Di Reporting Services, Anda dapat membuat himpunan data untuk sumber data XML. Setelah menentukan sumber data, Anda membuat kueri untuk himpunan data. Bergantung pada jenis data XML yang ditujukan oleh sumber data, Anda membuat kueri himpunan data dengan menyertakan Kueri XML atau jalur elemen. Kueri XML dimulai dengan <tag Kueri> dan menyertakan namespace dan elemen XML yang bervariasi tergantung pada sumber data. Jalur elemen independen namespace layanan dan menentukan atribut simpul dan simpul mana yang akan digunakan dari data XML yang mendasar dengan sintaks seperti JalurX. Untuk informasi selengkapnya tentang jalur elemen, lihat Sintaks Jalur Elemen untuk Data Laporan XML (SSRS).

Anda bisa membuat sumber data XML untuk tipe data XML berikut ini:

  • Dokumen Xml yang diacu oleh URL menggunakan protokol http

  • Titik akhir layanan web yang mengembalikan data XML

  • Data XML yang disematkan

Cara Anda menentukan Kueri XML atau jalur elemen bergantung pada jenis data XML.

Untuk dokumen XML, Kueri XML bersifat opsional. Jika disertakan, itu dapat berisi Xml ElementPath opsional. Nilai XML ElementPath menggunakan sintaks jalur elemen. Anda menyertakan Kueri XML dan Xml ElementPath untuk memproses namespace dengan benar saat diperlukan oleh data XML dari sumber data.

Untuk titik akhir layanan Web yang ditujukan oleh URL string koneksi, Kueri XML menentukan metode layanan Web, tindakan SOAP, atau keduanya. Penyedia data XML membuat permintaan layanan Web yang mengambil data XML yang akan digunakan untuk laporan.

Catatan

Saat namespace layanan Web menyertakan karakter garis miring (/), sertakan metode layanan Web dan tindakan SOAP sehingga ekstensi pemrosesan data XML dapat memperoleh namespace dengan benar.

Untuk dokumen XML yang disematkan, Kueri XML menentukan data XML yang disematkan untuk digunakan, menyertakan namespace opsional, dan berisi Xml ElementPath opsional..

Menentukan Parameter Kueri untuk Data XML

Anda dapat menentukan parameter kueri untuk dokumen XML.

  • Untuk permintaan URL, parameter kueri disertakan sebagai parameter URL standar.

  • Untuk permintaan layanan Web, parameter kueri diteruskan ke metode layanan Web. Untuk menentukan parameter kueri, gunakan halaman Parameter dari kotak dialog Properti Himpunan Data .

Contoh

Contoh dalam tabel berikut ini menggambarkan cara mengambil data dari layanan Web Server Laporan, dokumen XML, dan data XML yang disematkan.

Sumber data XML Contoh kueri
Data XML layanan web dari ListChildren metode . <Query>

<Method Name="ListChildren" Namespace="https://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices" />

</Query>
Data XML layanan web dari SoapAction. <Query xmlns=namespace>

<SoapAction>https://schemas/microsoft.com/sqlserver/2005/03/23/reporting/reportingservices/ListChildren</SoapAction>

</Query>
Dokumen XML atau data XML tersemat yang menggunakan namespace.

Elemen kueri yang menentukan namespace untuk jalur elemen.
<Query xmlns:es="https://schemas.microsoft.com/StandardSchemas/ExtendedSales">

<ElementPath>/Customers/Customer/Orders/Order/es:LineItems/es:LineItem</ElementPath>

</Query>
Dokumen XML yang disematkan. <Query>

<XmlData>

<Customers>

<Customer ID="1">Bobby</Customer>

</Customers>

</XmlData>

<ElementPath>Customer {@}</ElementPath>

</Query>
Dokumen XML yang menggunakan default. Tidak ada kueri.

Jalur elemen berasal dari dokumen XML itu sendiri dan independen namespace.

Catatan

Contoh layanan Web pertama mencantumkan konten server laporan yang menggunakan metode .ListChildren Untuk menjalankan kueri ini, Anda harus membuat sumber data baru dan mengatur string koneksi ke https://localhost/reportserver/reportservice2006.asmx. Metode ini ListChildren mengambil dua parameter: Item dan Rekursif. Atur nilai default untuk Item ke / dan Rekursif ke 1.

Menentukan Namespace

Gunakan elemen Kueri XML untuk menentukan namespace layanan yang digunakan dalam data XML dari sumber data. Kueri XML berikut menggunakan penjualan namespace layanan. Simpul XML ElementPath untuk sales:LineItems dan sales:LineItem menggunakan penjualan namespace layanan.

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

Untuk menentukan namespace layanan penyedia data sehingga namespace default tetap kosong, gunakan xmldp. Hal ini ditunjukkan di contoh berikut.

Contoh

Contoh berikut menggunakan dokumen XML DPNamespace.xml, yang disediakan untuk ilustrasi setelah tabel. Tabel ini memperlihatkan dua contoh sintaks XML ElementPath yang menyertakan awalan namespace.

Elemen Kueri XML Bidang yang dihasilkan dalam himpunan data
<Query/> Nilai A: https://schemas.microsoft.com/...

Nilai B: https://schemas.microsoft.com/...

Nilai C: https://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>
Nilai D

Nilai E

Nilai F

Dokumen XML: DPNamespace.xml

Anda dapat menyalin XML ini dan menyimpannya ke URL yang tersedia untuk Perancang Laporan digunakan sebagai sumber data XML: misalnya,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>  

Lihat juga

Tipe Koneksi XML (SSRS)
Tutorial Reporting Services (SSRS)