Aracılığıyla paylaş


XML Rapor Verilerini Belirtmek için Öğe Yolu Sözdizimi

Rapor Tasarımcısı'nda belirttiğiniz bir XML verilerinden bir rapor için veriler kaynak büyük/küçük harfe duyarlı bir öğe yol tanımlayarak.Öğe yolu, XML hiyerarşik düğümlerinin ve bunların özniteliklerinin XML veri kaynağına nasıl geçirileceğini belirtir.Varsayılan öğe yol kullanmak için , dataset sorgu veya XML bırakın... ElementPath XML Query boş. XML veri kaynağından veri alındığında, metin değerlerine ve öğe düğümü özniteliklerine sahip öğe düğümleri sonuç kümesinin sütunları olur.Sorguyu çalıştırdığınızda, düğümlerin ve özniteliklerin değerleri satır verileri haline gelir.Sütunlar, Rapor Verileri bölmesinde veri kümesi alanı koleksiyonu olarak görülür.Bu konu, öğe yolu sözdizimini açıklamaktadır.

Not

Öğe yolu sözdizimi ad alanından bağımsızdır.Ad içinde bir öğe yol kullanmak için , XML içeren XML sorgu sözdizimini kullanın... ElementPath ' de açıklanan bir öğe XML Rapor Verilerini Belirtmek için XML Sorgu Sözdizimi.

Aşağıdaki tabloda, öğe yolu tanımlamak için kullanılan kurallar açıklanmaktadır.

Kural

Kullanım amacı

bold

Tam olarak gösterildiği gibi yazılması gereken metin.

| (dikey çubuk)

Sözdizimi öğelerini ayırır.Öğelerden yalnızca birini seçebilirsiniz.

[ ] (küme parantezleri)

İsteğe bağlı sözdizimi öğeleri.Küme parantezlerini yazmayın.

{ } (Bağlayıcı ayraçlar)

Parametre sözdizimi maddelerin sınırlandırır.

[,...n]

Bir önceki öğe yinelenen gösterir. n sayısı. Tekrarlar virgül ile ayrılır.

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. 

Remarks

Aşağıdaki tabloda öğe yolu deyimleri özetlenmektedir.Tablodaki örnekler, bu konunun Örnekler bölümünde verilen Müşteriler.xml adlı örnek XML belgesine başvurmaktadır.

Not

XML etiketleri büyük/küçük harfe duyarlıdır.Öğe yolunda bir ElementNode belirttiğinizde, veri kaynağında XML etiketlerini tam olarak eşleştirmelisiniz.

Terim

Tanım

Öğe yolu

XML belgesi içindeki bir veri kümesi içeren bir XML veri alan veri almak için çapraz geçiş yapmasını düğümlerin sırasını tanımlar kaynak.

ElementNode

XML belgesindeki XML düğümü.Düğümler etiketlerle adlandırılır ve diğer düğümlerle hiyerarşik bir ilişki içinde bulunurlar.Örneğin, <Müşteriler> kök öğe düğümdür. <Müşteri> bir alt öğesi olur. <Müşteriler>.

XMLName

Düğümün adı.Örneğin, Müşteriler düğümünün adı Müşteriler’dir.Bir XMLName benzersiz olarak her düğümün adı için bir ad tanımlayıcı öneki.

Encoding

That indicates Value Bu öğe için XML ve gereksinimlerini kodlanmış çözülür ve bu öğesinin alt öğesi dahil ' dir.

FieldList

Verileri almak için kullanılacak öğe ve öznitelik kümesini tanımlar.

Belirtilmezse, tüm öznitelikler ve alt öğeler alan olarak kullanılır.Boş alan listesinde belirtilen () ise{}), bu düğümden alan kullanılır.

C FieldList her ikisini birden içeremez bir Value ve bir Element veya ElementNode.

Field

Alınan veriler, bir veri alan olarak belirtir.

Attribute

Içindeki ad-değer çifti ElementNode. Örneğin, öğe düğümü <Müşteri ID = "1">, ID öznitelik ve @ID(Integer)"1" bir Tamsayı türü ilgili veri alan verir... ID.

Value

The value of the element.Value can only be used on the last ElementNode in the element path.Örneğin, çünkü <Dönüş> bir öğe yol değerinin sonunda dahil ise bir yaprak düğüm Return {@} olan Chair.

Element

Adlandırılan alt öğenin değeri.Örneğin, Müşteriler {}/Müşteri {}/Soyadı yalnızca LastName öğesi için değerleri alır.

Type

Bu öğe oluşturulan bir alan için kullanılacak isteğe bağlı bir veri türü.

NamespacePrefix

NamespacePrefix XML Query öğesinde tanımlanmış.Herhangi bir XML Query öğesinin XML ad boşluklarında varsa, ElementPath göz ardı edilir. XML, XML Query öğe ise ElementPath isteğe bağlı özniteliği vardır. IgnoreNamespaces. If IgnoreNamespaces olan true, XML ad boşluklarında ElementPath ve bir XML belgesi dikkate alınmaz. Daha fazla bilgi için bkz: XML Rapor Verilerini Belirtmek için XML Sorgu Sözdizimi.

Örnek - Ad Alanları Yok

Aşağıdaki örnekler, XML belgesinin Customers.xml kullanın.Bu tablo, öğe yol sözdizimi örnekleri ve veri olarak XML belgesini temel alan bir veri kümesini tanımlayan bir sorguda, öğe yolu kullanarak sonuçları gösterir kaynak.

Not

Öğe yol boş olduğunda, sorgu öğe varsayılan yol kullanır: bir yaprak düğüm koleksiyon ilk yol. İlk örnekte, öğe yolunun boş bırakılması /Müşteriler/Müşteri/Siparişler/Sipariş öğe yolunun belirtilmesiyle eşdeğerdir.Yol içindeki tüm düğüm değer ve öznitelikleri sonuç kümesinde döndürülür ve düğüm adları ve öznitelik adları veri kümesi alanları olarak görünür.

Örnek

Veri kümesindeki alanlar

Boş

SiparişMiktarTanımlayıcıAdSoyadMüşteri.Noxmlns
Sandalye61BarışÇetinok11https://www.adventure-works.com
Table12BarışÇetinok11https://www.adventure-works.com
Kanepe28ÇiğdemAkın20https://www.adventure-works.com
Sehpa215MeteGöktepe33https://www.adventure-works.com

Customers {}/Customer

AdSoyadTanımlayıcı
BarışÇetinok11
ÇiğdemAkın20
MeteGöktepe33

Customers {}/Customer {}/LastName

Soyad
Çetinok
Akın
Göktepe

Customers {}/Customer {}/Orders/Order {@,@Qty}

SiparişMiktar
Sandalye6
Table1
Kanepe2
Sehpa2

Customers {}/Customer/Orders/Order{ @ID(Integer)}

Sipariş.NoAdSoyadTanımlayıcı
1BarışÇetinok11
2BarışÇetinok11
8ÇiğdemAkın20
15MeteGöktepe33

XML belgesi: Customers.XML

Önceki öğe yol örnekleri denemek için , kopyalayabilir bu XML ve Rapor Tasarımcısı tarafından erişilebilen bir URL'ye kaydedin ve sonra da XML belgesinin bir XML veri kaynağı olarak kullanabilirsiniz: Örneğin, https://localhost/Customers.xml.

<?xml version="1.0"?>
<Customers xmlns="https://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>

Alternatif olarak, bağlantı dizesi olmayan bir XML veri kaynağı oluşturabilir ve Müşteri.XML’yi sorguya katıştırırken aşağıdaki yordamı kullanabilirsiniz:

Müşteri.XML’yi sorguya katıştırmak için:

  1. Boş bağlantı dizeli bir XML veri kaynağı oluşturun.

  2. XML veri kaynağı için yeni bir veri kümesi oluşturun.

  3. Içinde DataSet özellikleri iletişim kutusunda, tıklatın.Sorgu Tasarımcısı.Metin tabanlı sorgu tasarımcısı iletişim kutusu açılır.

  4. Sorgu bölmesine aşağıdaki iki satırı girin:

    <Query>

    <XmlData>

  5. Customers.XML kopyalayın ve sonra sorgu bölmesinde yapıştırma <XmlData>.

  6. Sorgu bölmesinde Customers.XML kopyalanan ilk satırını silin: <?xml version="1.0"?>

  7. Sorgunun sonuna aşağıdaki iki satırı ekleyin:

    <XmlData>

    <Query>

  8. ' I tıklatın Sorguyu Çalıştır (!).

    Sonuç küme 4 verileri aşağıdaki sütunları ile satırları görüntüler: xmlns, Customer.ID, FirstName, LastName, ID, Qty, Order.

  9. Click OK.