Udostępnij za pośrednictwem


Używanie odwołań do kolekcji pól zestawu danych (program Report Builder 3.0 i usługi SSRS)

Każdy zestaw danych w raporcie zawiera jeden Fields kolekcja.Fields kolekcja jest zestaw pól określonych przez kwerendę dataset plus dodatkowe pola obliczeniowe, tworzonych.Po utworzeniu zestawu danych kolekcja pole pojawia się w Danych raportu okienka.

Proste odwołanie do pola w wyrażeniu jest wyświetlane na powierzchni projektowej jako wyrażenie proste.Na przykład, podczas przeciągania pole Sales z okienka danych raportu do komórka tabela na powierzchnię projektu [Sales] jest wyświetlany.Stanowi to wyrażenie podstawowej =Fields!Sales.Value jest zestaw w polu tekstowym Value właściwość.Po uruchomieniu raportu procesor raportów obliczy to wyrażenie i wyświetli rzeczywiste dane ze źródła danych w polu tekstowym w komórce tabeli.Aby uzyskać więcej informacji, zobacz Wyrażenia (program Report Builder 3.0 i usługi SSRS) i Praca z polami w zestawie danych raportu (program Report Builder 3.0 i usługi SSRS).

Ostrzeżenie

Program Business Intelligence Development Studio umożliwia tworzenie i modyfikowanie definicji raportów (rdl) przy użyciu programów Report Builder 3.0 i Report Designer. Każde ze środowisk obsługuje różne sposoby tworzenia, otwierania i zapisywania raportów oraz powiązanych z nimi elementów. Aby uzyskać więcej informacji, zobacz temat Projektowanie raportów w programach Report Designer i Report Builder 3.0 (usługi SSRS) w witrynie sieci Web microsoft.com.

Wyświetlanie kolekcji pól zestawu danych

Aby wyświetlić poszczególne wartości dla kolekcji pól, należy przeciągnąć każde pole do wiersza szczegółów tabeli i uruchomić raport.Odwołania z wiersza szczegółów obszaru danych tabeli lub listy spowodują wyświetlenie wartości dla każdego wiersza w zestawie danych.

Aby wyświetlić zsumowane wartości dla pola, należy przeciągnąć każde pole liczbowe do obszaru danych macierzy.Domyślne funkcja agregująca w wierszu wartość zagregowana jest na przykład wartość zagregowana, =Sum(Fields!Sales.Value).Funkcję domyślną można zmienić, aby obliczyć inne sumy.Aby uzyskać więcej informacji, zobacz Kompendium funkcji agregujących (program Report Builder 3.0 i usługi SSRS).

Aby wyświetlić zsumowane wartości dla kolekcji pól w polu tekstowym bezpośrednio na powierzchni projektowej (nie jest to część obszaru danych), jako zakres funkcji agregującej należy określić nazwę zestawu danych.Na przykład dla zestawu danych o nazwie SalesData, poniższe wyrażenie określa sumę wszystkich wartości dla pole Sales: =Sum(Fields!Sales,"SalesData").

Podczas korzystania z wyrażenie okno dialogowe, aby zdefiniować pole proste odwołanie, można wybrać Fields kolekcja w panelu kategorii i wyświetlić listę pól dostępnych w pola okienka.Każde pole ma kilka właściwości, łącznie z Value i IsMissing.Pozostałe właściwości są wstępnie zdefiniowanymi rozszerzonymi właściwościami pola i ich dostępność w zestawie danych jest zależna od typu źródła danych.

Wykrywanie wartości null w polu zestawu danych

wykrywać pole wartość null (Nothing w Visual Basic), można użyć funkcja IsNothing.Po umieszczeniu pole tekstowym w wierszu tabela Szczegóły, następujące wyrażenie badania pole MiddleName i substytuty tekst "nr imienia" gdy ma wartość null, a samą wartość nie jest null, gdy wartość pole:

=IIF(IsNothing(Fields!MiddleName.Value),"No Middle Name",Fields!MiddleName.Value)

Wykrywanie braku pól dla zapytań dynamicznych w czasie wykonywania

Domyślnie elementy w Fields kolekcja ma dwie właściwości: Valueand IsMissing.IsMissing Właściwość wskazuje, czy pole jest zdefiniowany dla elementu dataset w projekt czas zawarte w polach pobierane przy uruchomieniu czas.Na przykład kwerenda może wywołać procedura składowana, w którym zestaw wyników zależy od parametru wejściowego lub kwerendy może być SELECT * FROM <table> przypadku zmiany definicji tabela.

Ostrzeżenie

IsMissing detects changes in the dataset schema between design time and run time for any type of data source.IsMissing cannot be used to detect empty members in a multidimensional cube and is not related to the MDX query language concepts of EMPTY and NON EMPTY.

Można przetestować IsMissing właściwość w kod niestandardowy, aby określić, czy pole znajduje się zestaw wyników.Nie można sprawdzić swojej obecności za pomocą wyrażenie z Visual Basic funkcja takich jak wywołać IIF lub SWITCH, ponieważ Visual Basic ocenia wszystkie parametry w wywołaniu funkcja, które wyniki błąd podczas szacowania odniesienie do brakujący.

Przykład sterowania widocznością kolumny dynamicznej w przypadku brakującego pola

Aby ustawić wyrażenie sterujące widocznością kolumny wyświetlającej pole w zestawie danych, należy najpierw zdefiniować funkcję kodu niestandardowego, która będzie zwracać wartość logiczną na podstawie informacji, czy pole istnieje.Na przykład następująca funkcja kodu niestandardowego zwraca wartość True, jeśli pole nie istnieje, i wartość False, jeśli pole istnieje.

Public Function IsFieldMissing(field as Field) as Boolean
 If (field.IsMissing) Then
 Return True
  Else 
  Return False
 End If
End Function

Aby użyć tej funkcja do sterowania widocznością kolumna, zestaw Hidden właściwość kolumna na następujące wyrażenie:

=Code.IsFieldMissing(Fields!FieldName)

Kolumna jest ukryta, gdy pole nie istnieje.

Przykład sterowania wartością pola tekstowego w przypadku brakującego pola

Aby podstawić napisany tekst w miejsce wartości brakującego pola, należy napisać kod niestandardowy zwracający tekst, którego będzie można użyć zamiast wartości pola, gdy dane pole nie będzie istnieć.Na przykład następująca funkcja kodu niestandardowego zwraca wartość pola, jeśli pole istnieje, i komunikat określony przez użytkownika jako drugi parametr, jeśli pole nie istnieje.

Public Function IsFieldMissingThenString(field as Field, strMessage as String) as String
 If (field.IsMissing) Then
  Return strMessage
 Else 
  Return field.Value
  End If
End Function

Aby użyć tej funkcja, w polu tekstowym, należy dodać następujące wyrażenie, aby Value właściwość:

=Code.IsFieldMissingThenString(Fields!FieldName,"Missing")

W polu tekstowym będzie wyświetlana wartość pola lub tekst określony przez użytkownika.

Używanie rozszerzonych właściwości pól

Rozszerzone właściwości pola to dodatkowe właściwości zdefiniowane w polu przez rozszerzenie przetwarzania danych, które są określane przez typ źródła danych zestawu danych.Rozszerzone właściwości pola są wstępnie zdefiniowane lub specyficzne dla typu źródła danych.Aby uzyskać więcej informacji, zobacz Rozszerzone właściwości pola dla Analysis Services bazy danych (SSRS).

Jeśli określisz właściwość, która nie jest obsługiwana dla tego pole wyrażenie ma null ()Nothing w Visual Basic).Jeśli dostawca danych nie obsługuje właściwość rozszerzonych pól lub jeśli pole nie zostanie znaleziony, gdy kwerenda jest wykonywana, wartość właściwość jest null ()Nothing w Visual Basic) dla właściwość typu String i Objecti zero (0) dla właściwość typu Integer.Rozszerzenie przetwarzania danych może korzystać z zalet wstępnie zdefiniowanych właściwości, optymalizując zapytania zawierające tę składnię.