Bagikan melalui


Sintaks Jalur Elemen untuk Data Laporan XML (SSRS)

Dalam Perancang Laporan, Anda menentukan data yang akan digunakan untuk laporan dari sumber data XML dengan menentukan jalur elemen peka huruf besar/kecil. Jalur elemen menunjukkan cara melintasi simpul hierarkis XML dan atributnya di sumber data XML. Untuk menggunakan jalur elemen default, biarkan kueri himpunan data atau Xml ElementPath dari Kueri XML kosong. Saat data diambil dari sumber data XML, simpul elemen yang memiliki nilai teks dan atribut simpul elemen menjadi kolom dalam tataan hasil. Nilai simpul dan atribut menjadi data baris saat Anda menjalankan kueri. Kolom muncul sebagai kumpulan bidang himpunan data di panel Data Laporan. Topik ini menjelaskan sintaks jalur elemen.

Catatan

Sintaks jalur elemen independen namespace. Untuk menggunakan namespace dalam jalur elemen, gunakan sintaks kueri XML yang menyertakan elemen Xml ElementPath yang dijelaskan dalam Sintaks Kueri XML untuk Data Laporan XML (SSRS).

Tabel berikut ini menjelaskan konvensi yang digunakan untuk menentukan jalur elemen.

Konvensi Digunakan untuk
Bold Teks yang harus di ketik persis seperti yang ditunjukkan.
| (bilah vertikal) Memisahkan item sintaks. Anda hanya dapat memilih salah satu item.
[ ] (Tanda kurung) Item sintaks opsional. Jangan ketik tanda kurung.
{ } (kurung kurawal) Memisahkan parameter item sintaks.
[,... n] Menunjukkan item sebelumnya dapat diulang dalam jumlah n kali. Kemunculan dipisahkan oleh koma.

Sintaks

  
Element path ::=  
    ElementNode[/Element path]  
ElementNode ::=  
    XMLName[(Encoding)][{[FieldList]}]  
XMLName ::=  
    [NamespacePrefix:]XMLLocalName  
Encoding ::=  
        HTMLEncoded | Base64Encoded  
FieldList ::=  
    Field[,FieldList]  
Field ::=  
    Attribute | Value | Element | ElementNode  
Attribute ::=  
        @XMLName[(Type)]  
Value ::=  
        @[(Type)]  
Element ::=  
    XMLName[(Type)]  
Type ::=  
        String | Integer | Boolean | Float | Decimal | Date | XML   
NamespacePrefix ::=  
    Identifier that specifies the namespace.  
XMLLocalName :: =  
    Identifier in the XML tag.   

Keterangan

Tabel berikut ini meringkas istilah jalur elemen. Contoh dalam tabel mengacu pada contoh dokumen XML Customers.xml, yang disertakan di bagian Contoh topik ini.

Catatan

Tag XML peka huruf besar/kecil. Saat Anda menentukan ElementNode di jalur elemen, Anda harus sama persis dengan tag XML di sumber data.

Istilah Definisi
Jalur elemen Menentukan urutan simpul untuk melintasi dalam dokumen XML untuk mengambil data bidang untuk himpunan data dengan sumber data XML.
ElementNode Simpul XML dalam dokumen XML. Simpul ditunjuk oleh tag dan ada dalam hubungan hierarkis dengan simpul lain. Misalnya, <Pelanggan> adalah simpul elemen root. <Pelanggan> adalah subelemen <Pelanggan>.
XMLName Nama node. Misalnya, nama node Pelanggan adalah Pelanggan. XMLName dapat diawali dengan pengidentifikasi namespace untuk menamai setiap simpul secara unik.
Pengodean Menunjukkan bahwa Nilai untuk elemen ini adalah XML yang dikodekan dan perlu didekodekan dan disertakan sebagai subelemen elemen ini.
Daftar Bidang Menentukan sekumpulan elemen dan atribut yang akan digunakan untuk mengambil data.

Jika tidak ditentukan, semua atribut dan subelemen digunakan sebagai bidang. Jika daftar bidang kosong ditentukan ({}), tidak ada bidang dari simpul ini yang digunakan.

FieldList mungkin tidak berisi Nilai dan Elemen atau ElementNode.
Bidang Menentukan data yang diambil sebagai bidang himpunan data.
Attribut Pasangan nama-nilai dalam ElementNode. Misalnya, dalam simpul <elemen ID Pelanggan="1">, ID adalah atribut dan @ID(Bilangan Bulat) mengembalikan "1" sebagai jenis bilangan bulat dalam ID bidang data yang sesuai.
Nilai Nilai elemen . Nilai hanya dapat digunakan pada ElementNode terakhir di jalur elemen. Misalnya, karena <Return> adalah simpul daun, jika Anda menyertakannya di akhir jalur elemen, nilai Return {@} adalah Chair.
Elemen Nilai subelemen bernama. Misalnya, Customers {}/Customer {}/LastName hanya mengambil nilai untuk elemen LastName.
Jenis Jenis data opsional yang digunakan untuk bidang yang dibuat dari elemen ini.
NamespacePrefix NamespacePrefix ditentukan dalam elemen Kueri XML. Jika tidak ada elemen Kueri XML, namespace di ElementPath XML diabaikan. Jika ada elemen Kueri XML, Xml ElementPath memiliki atribut opsional IgnoreNamespaces. Jika IgnoreNamespaces benar, namespace di Xml ElementPath dan dokumen XML diabaikan. Untuk informasi selengkapnya, lihat Sintaks Kueri XML untuk Data Laporan XML (SSRS).

Contoh - Tidak Ada Namespace

Contoh berikut menggunakan dokumen XML Customers.xml. Tabel ini memperlihatkan contoh sintaks jalur elemen dan hasil penggunaan jalur elemen dalam kueri yang menentukan himpunan data, berdasarkan dokumen XML sebagai sumber data.

Catatan

Saat jalur elemen kosong, kueri menggunakan jalur elemen default: jalur pertama ke koleksi simpul daun. Dalam contoh pertama, membiarkan jalur elemen kosong setara dengan menentukan jalur elemen /Customers/Customer/Orders/Orders. Semua nilai dan atribut simpul di sepanjang jalur dikembalikan dalam tataan hasil, dan nama node dan nama atribut muncul sebagai bidang himpunan data.

Contoh #1: Kosong

Pesanan Qty ID NamaDepan NamaBelakang Customer.ID xmlns
Kursi 6 1 Bobby Moore 11 https://www.adventure-works.com
Tabel 1 2 Bobby Moore 11 https://www.adventure-works.com
Sofa 2 8 Crystal Hu 20 https://www.adventure-works.com
EndTables 2 15 Wyatt Diaz 33 https://www.adventure-works.com

Contoh #2: Customers {}/Customer

NamaDepan NamaBelakang ID
Bobby Moore 11
Crystal Hu 20
Wyatt Diaz 33

Contoh #3: Customers {}/Customer {}/LastName

NamaBelakang
Moore
Hu
Diaz

Contoh #4: Customers {}/Customer {}/Orders/Order {@,@Qty}

Pesanan Qty
Kursi 6
Tabel 1
Sofa 2
EndTables 2

Contoh #5: Customers {}/Customer/Orders/Order{ @ID(Integer)}

Order.ID NamaDepan NamaBelakang ID
1 Bobby Moore 11
2 Bobby Moore 11
8 Crystal Hu 20
15 Wyatt Diaz 33

Dokumen XML: Customers.xml

Untuk mencoba contoh jalur elemen di bagian sebelumnya, Anda dapat menyalin XML ini dan menyimpannya ke URL yang dapat diakses oleh Perancang Laporan, lalu menggunakan dokumen XML sebagai sumber data XML: misalnya, https://localhost/Customers.xml.

<?xml version="1.0"?>  
<Customers xmlns="http://www.adventure-works.com">  
   <Customer ID="11">  
      <FirstName>Bobby</FirstName>  
      <LastName>Moore</LastName>  
      <Orders>  
         <Order ID="1" Qty="6">Chair</Order>  
         <Order ID="2" Qty="1">Table</Order>  
      </Orders>  
      <Returns>  
         <Return ID="1" Qty="2">Chair</Return>  
      </Returns>  
   </Customer>  
   <Customer ID="20">  
      <FirstName>Crystal</FirstName>  
      <LastName>Hu</LastName>  
      <Orders>  
         <Order ID="8" Qty="2">Sofa</Order>  
      </Orders>  
      <Returns/>  
   </Customer>  
   <Customer ID="33">  
      <FirstName>Wyatt</FirstName>  
      <LastName>Diaz</LastName>  
      <Orders>  
         <Order ID="15" Qty="2">EndTables</Order>  
      </Orders>  
      <Returns/>  
   </Customer>  
</Customers>  

Atau, Anda bisa membuat sumber data XML yang tidak memiliki string koneksi dan menyematkan Customers.XML dalam kueri, menggunakan prosedur berikut:

Untuk menyematkan Customers.XML dalam kueri
  1. Buat sumber data XML dengan string koneksi kosong.

  2. Buat himpunan data baru untuk sumber data XML.

  3. Dalam kotak dialog Properti Himpunan Data , klik Desainer Kueri. Kotak dialog perancang kueri berbasis teks terbuka.

  4. Di panel kueri, masukkan dua baris berikut ini:

    <Query>

    <XmlData>

  5. Salin Customers.XML dan tempel teks di panel kueri setelah <XmlData>.

  6. Di panel kueri, hapus baris pertama yang Anda salin dari Customers.XML: <?xml version="1.0"?>

  7. Di akhir kueri, tambahkan dua baris berikut:

    <XmlData>

    <Query>

  8. Klik Jalankan Kueri (!).

    Kumpulan hasil menampilkan 4 baris data dengan kolom berikut: xmlns, , Customer.ID, FirstNameLastName, ID, . OrderQty

  9. PilihOK.

Lihat juga

Tipe Koneksi XML (SSRS)
Tutorial Reporting Services (SSRS)
Tambahkan, Edit, Refresh Bidang di Panel Data Laporan (Penyusun Laporan dan SSRS)