Język definicji raportu (SSRS)

Język Definicji Raportów (RDL) to XML reprezentacja definicji raportu SQL Server Reporting Services (SSRS). Definicja raportu zawiera informacje o pobieraniu danych i układzie raportu. RDL składa się z elementów XML odpowiadających gramatyce XML stworzonej dla Reporting Services. Możesz dostosować funkcje kontrolujące wartości elementów, style i formatowanie raportu, uzyskując dostęp do assembli kodu w plikach definicji raportu.

RDL promuje interoperacyjność komercyjnych narzędzi raportujących, definiując wspólny schemat, który umożliwia wymianę definicji raportów. Język RDL to:

  • Schemat XML definicji raportu.
  • Format wymiany dla firm i stron trzecich.
  • Rozszerzalny i otwarty schemat, który obsługuje więcej przestrzeni nazw i niestandardowych elementów.

Wymagania wstępne

Dowolny protokół lub interfejs programowy, który współpracuje z językiem XML, może być używany z językiem RDL.

Specyfikacje RDL

Aby pobrać specyfikacje dla określonych wersji schematu, zobacz Specyfikacja języka definicji raportu.

Definicja schematu XML RDL

Plik SSRS RDL jest weryfikowany za pomocą pliku XML Schema Definition (XSD). Schemat definiuje reguły, dla których elementy języka RDL mogą występować w pliku rdl. Element obejmuje swój typ danych oraz krotność, czyli liczbę dozwolonych wystąpień. Element może być prosty lub złożony. Prosty element nie ma elementów potomnych ani atrybutów. Element złożony ma elementy potomne i może mieć atrybuty.

Na przykład schemat zawiera element RDL ReportParameters, który jest typem złożonym ReportParametersType.

  • Zgodnie z konwencją, zespolonym typem dla elementu jest nazwa elementu, po której następuje słowo Type.
  • Element ReportParameters może być zawarty wewnątrz elementu Report (który jest typem złożonym) i może zawierać w sobie elementy ReportParameter.
  • ReportParameterType to prosty typ, który może przyjąć tylko jedną z następujących wartości: Boolean, DateTime, Integer, Float lub String.

Aby uzyskać więcej informacji na temat typów danych schematu XML, zobacz Schemat XML — część 2: Datatypes Second Edition.

RDL XSD jest dostępny w pliku ReportDefinition.xsd, znajdującym się w folderze Extras na CD-ROM produktu. Jest również dostępny na serwerze raportów pod następującym adresem URL: https://servername/reportserver/reportdefinition.xsd.

Utwórz RDL

Buduj narzędzia i aplikacje generujące RDL na podstawie schematu XML ze względu na jego otwartą i rozszerzalną naturę RDL.

Reporting Services udostępnia wiele narzędzi do tworzenia plików RDL. Aby uzyskać więcej informacji, zobacz Narzędzia usług Reporting Services.

  • Wygeneruj RDL z aplikacji za pomocą klas platformy Microsoft .NET Framework z przestrzeni nazw System.Xml i System.Linq.
  • Użyj XmlTextWriter do zapisu RDL. Za pomocą narzędzia XmlTextWriter można wygenerować pełną definicję raportu od początku do końca w dowolnej aplikacji .NET Framework. Aby dowiedzieć się więcej o klasie XmlTextWriter i System.Xml przestrzeni nazw, zobacz Microsoft .NET Framework Developer's Guide.

Programiści mogą rozszerzać RDL, dodając niestandardowe elementy raportu z własnymi właściwościami. Aby uzyskać więcej informacji o Language-Integrated Query (LINQ), wyszukaj "LINQ to XML" w Microsoft Developer Network.

Standardowe rozszerzenie pliku definicji raportu to .rdl. Możesz tworzyć pliki definicji raportów klientów, które mają rozszerzenia .rdlc. Typ MIME dla obu rozszerzeń to tekst/xml. Więcej informacji można znaleźć w Reporting Services Reports (SSRS).

Typy RDL

W poniższej tabeli wymieniono typy używane w elementach i atrybutach języka RDL.

Typ Description
Binarny Właściwość z wartością binarną zakodowaną w base-64.
Boolean Właściwość z wartością true lub false jako wartością obiektu. Jeśli nie określono inaczej, pominięty opcjonalny obiekt logiczny ma wartość False.
Data Właściwość z w pełni określoną wartością daty lub daty/godziny określoną w formacie daty ISO8601: RRRR-MM-DD[THH:MM[:SS[. S]]].
Wyliczenie Właściwość z wartością tekstową ciągu, która musi być jedną z listy wyznaczonych wartości.
Spławik Właściwość z wartością zmiennoprzecinkową. Kropka (.) jest używana jako opcjonalny separator dziesiętny.
Liczba całkowita Właściwość o wartości całkowitej (int32).
Język Właściwość z wartością tekstową zawierającą kod języka i kultury, taki jak "en-us" dla języka angielskiego w Stanach Zjednoczonych. Wartość musi być określonym językiem lub neutralnym językiem, dla którego język domyślny jest zdefiniowany w programie Microsoft .NET Framework.
Nazwa Właściwość z wartością łańcucha tekstowego. Nazwy muszą być unikatowe w przestrzeni nazw elementu. Jeśli nie zostanie określona, przestrzeń nazw elementu jest najbardziej wewnętrznym obiektem zawierającym nazwę.
NormalizedString Właściwość o znormalizowanej wartości tekstowej będącej ciągiem znaków.
rozmiar Element rozmiaru musi zawierać liczbę z znakiem kropki używanym jako opcjonalny separator dziesiętny. Oznaczenie jednostki długości CSS, takie jak cm, mm, in, pt lub pc, musi być wpisane po cyfrze. Odstęp między liczbą a oznacznikiem jest opcjonalny. Więcej informacji można znaleźć w artykule CSS Values and Units Reference.

W języku RDL maksymalna wartość rozmiaru to 160 cali. Minimalny rozmiar to 0 cala.
String Właściwość z wartością łańcucha tekstowego.
NiepodpisaneInt Właściwość z wartością niepodpisanej liczby całkowitej (uint32).
Wariant Właściwość z dowolnym prostym typem XML.

Typy danych RDL

DataType Enumeration definiuje typ danych atrybutu, wyrażenia lub parametru w RDL. W poniższej tabeli przedstawiono, jak typy danych środowiska uruchomieniowego języka wspólnego (CLR) odpowiadają typom danych języka RDL.

Typ(y) CLR Odpowiedni typ danych
logiczny logiczny
DateTime, DateTimeOffset DateTime
Int16, Int32, UInt16, Byte, SByte Integer
Pojedynczy, podwójny Pływak
String, Char, GUID, TimeSpan String