Udostępnij za pośrednictwem


Składnia kwerendy XML do określania danych XML raportu (SSRS)

W Reporting Services, można utworzyć baz danych dla źródła danych XML.Po zdefiniowaniu źródła danych należy utworzyć zapytanie, które będzie prowadziło do wygenerowania zestawu danych.W zależności od typu danych XML wskazywanego przez źródło danych, utwórz kwerendę dataset dołączając XML Query lub elementu ścieżka.XML Query rozpoczyna się od <Query> tagu i obejmuje obszary nazw i elementy XML, które zależą od źródło danych.Ścieżka elementu jest niezależna od obszaru nazw. Za pomocą składni przypominającej format XPath określa, które węzły i atrybuty węzłów z bazowych danych XML mają być używane.Więcej informacji o elemencie ścieżki, zobacz Element składni ścieżki do określania danych XML raportu (SSRS).

Źródła danych XML można tworzyć dla następujących typów danych XML:

  • Dokumenty XML, do których odwołuje się adres URL przy użyciu protokołu HTTP

  • Punkty końcowe usługi sieci Web zwracające dane XML

  • Osadzone dane XML

Jak określić XML Query lub ścieżka zależy od typu danych XML.

Dla dokumentu XML, XML Query jest opcjonalne.Jeśli jest włączone, może zawierać opcjonalny XML ElementPath.Wartość XML ElementPath używa składni ścieżka elementu.Dołącz plik XML Query i XML ElementPath poprawnie przetworzyć obszarów nazw, gdy są potrzebne dane XML ze źródło danych.

Dla punktu końcowego usługa sieci Web wskazywanej przez połączenie ciąg adres URL, XML Query definiuje metoda usługa sieci Web, Akcja SOAP lub oba.Dostawca danych XML tworzy żądanie o usługę sieci Web, które powoduje pobranie danych XML z przeznaczeniem dla raportu.

Ostrzeżenie

Kiedy obszar nazw usługa sieci Web zawiera ukośnik (/) znaków, zawierają metoda usługa sieci Web i Akcja SOAP tak, aby rozszerzenie przetwarzania danych XML można czerpać obszaru nazw poprawnie.

Osadzone dokumentu XML, XML Query definiuje osadzone dane XML, zawiera opcjonalny nazw i opcjonalne XML zawiera ElementPath.

Określanie parametrów zapytania o dane XML

Program umożliwia konfigurowanie parametrów zapytań o dokumenty XML.

  • W żądaniach wysyłanych z adresów URL parametry zapytań są dołączane jako standardowe parametry URL.

  • W żądaniach wysyłanych z usługi sieci Web parametry zapytań są przekazywane do metody używanej w usłudze.Aby zdefiniować parametr kwerendy, użyj Parametry strona Właściwości Dataset okno dialogowe.Aby uzyskać więcej informacji, zobacz Okno dialogowe Właściwości zestawu danych, Parametry.

Przykład

Przykłady w tabeli poniżej ilustrują sposoby pobierania danych z usługi sieci Web współpracującej z serwerem raportów, dokumentu XML oraz z osadzonych danych XML.

Źródło danych XML

Przykład zapytania

Sieci Web usługa danych XML z ListChildren metoda.

<Query>

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

</Query>

Dane XML usługi sieci Web pobrane za pomocą akcji protokołu SOAP.

<Query xmlns=namespace>

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

</Query>

Dokument XML lub osadzone dane XML używające obszarów nazw.

Element zapytania określający obszary nazw dla ścieżki elementu.

<Query xmlns:es="https://schemas.microsoft.com/StandardSchemas/ExtendedSales">

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

</Query>

Osadzony dokument XML.

<Query>

<XmlData>

<Customers>

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

</Customers>

</XmlData>

<ElementPath>Customer {@}</ElementPath>

</Query>

Dokument XML używający właściwości domyślnych.

No query.

Ścieżka elementu pochodzi od samego dokumentu XML i jest niezależny od obszaru nazw.

Ostrzeżenie

W pierwszym przykładzie Usługa sieci Web Wyświetla zawartość serwer raportów używający ListChildren metoda.Aby wykonać to zapytanie, należy utworzyć nowe źródło danych i użyć parametrów połączenia https://localhost/reportserver/reportservice2006.asmx.ListChildren Metoda przyjmuje dwa parametry: Itemand Recursive.Ustawianie wartości domyślnej dla Item do / i Recursive do 1.

Określanie obszarów nazw

Użyj pliku XML Query element, aby określić obszary nazw, które są używane w danych XML ze źródło danych.W następującej kwerendzie XML używa obszaru nazw sales.XML ElementPath węzłów dla sales:LineItems i sales:LineItem za pomocą obszaru nazw 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>

Aby określić obszar nazw dostawca danych, dzięki czemu pozostaje pusta domyślny obszar nazw, xmldp.Pokazano to na przykładzie poniżej.

Przykład

W poniższych przykładach użyto dokumentu XML DPNamespace.xml, który w celach ilustracyjnych zamieszczono po tabeli.Tabela zawiera dwa przykłady składni elementu XML ElementPath, w której znajdują się prefiksy obszarów nazw.

Element zapytania XML

Wynikowe pole w zestawie danych

<Query/>

Węzełobszar nazw
Wrtość Ahttps://schemas.microsoft.com/...
Wartość Bhttps://schemas.microsoft.com/...
Wartość 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>

Węzeł
Wartość D
Wartość E
Wartość F

Dokument XML: DPNamespace.xml

Można skopiować ten XML i zapisać go do adresu URL dostępne Projektant raportów jako źródło danych XML: na przykład 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>

Zobacz także

Koncepcje

Inne zasoby