Kod niestandardowy i odwołania do zestawów w wyrażeniach w Projektant raportów (SSRS)

Można dodać odniesienia do niestandardowego kodu osadzonego raportu lub niestandardowe zestawy, które tworzenie i zapisywanie na komputerze i wdrożyć serwer raportów.Kodu osadzonego można używać w celu tworzenia stałych niestandardowych, funkcji złożonych lub funkcji wielokrotnie używanych w jednym raporcie.Zespoły niestandardowy kod służy do utrzymania kodu w jednym miejscu i udostępnić go do użytku przez wiele raportów.Kod niestandardowy może zawierać nowe stałe niestandardowe, zmienne, funkcje lub podprocedury.Można używać odwołań tylko do odczytu do kolekcji wbudowanych, takich jak kolekcja Parameters.Nie można jednak przekazywać zestawów wartości danych raportu do funkcji niestandardowych; w szczególności nie są obsługiwane niestandardowe wartości zagregowane.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

Dla czas- wrażliwych obliczeń, które są oceniane raz przy uruchomieniu -czas i ma pozostać tę samą wartość w całym raporcie przetwarzania rozważyć, czy użyć zmiennej raportu lub grupy zmiennych.Aby uzyskać więcej informacji, zobacz Używanie odwołań do kolekcji zmiennych raportu i zmiennych grupy (program Report Builder i usługi SSRS).

Projektant raportów jest preferowanym środowisko autorskie do służy do dodawania kodu niestandardowego do raportu.Raport konstruktora 3.0 obsługuje przetwarzanie raportów mają nieprawidłowe wyrażenia lub które zawierają odwołania do zestawów niestandardowych serwer raportów.Konstruktora raportów nie zapewnia sposób, aby dodać odwołanie do wirtualny plik dziennika niestandardowych.

Ostrzeżenie

Należy pamiętać, że podczas uaktualniania serwer raportów, raporty, które zależą od niestandardowe zestawy może wymagać dodatkowych kroków, aby ukończyć uaktualnianie.Aby uzyskać więcej informacji, zobacz Przygotowanie do uaktualnienia przy użyciu Upgrade Advisor.

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.

W tym dokumencie

Praca z niestandardowy kod w Konstruktorze raportów 3.0

Dołączanie odwołań do powszechnie używanych funkcji

W tym odniesienia do mniej powszechnie używanych funkcji

W tym odniesienia do zewnętrznych zespoły

W tym kodzie osadzony

W tym odniesienia do parametrów z kodu

W tym odniesienia do kodu z niestandardowe zestawy

Praca z niestandardowy kod w Konstruktorze raportów 3.0

W Konstruktorze raportów można otworzyć raport z serwer raportów , zawiera odwołania do zestawów niestandardowych.Na przykład, można edytować raporty tworzone i wdrażane przy użyciu Projektant raportów w Business Intelligence Development Studio.Niestandardowe zestawy muszą być wdrożone serwer raportów.

Nie można wykonać następujące czynności:

  1. Dodawanie odwołania lub klasy element członkowski wystąpienia do raportu.

  2. Wyświetlanie podglądu raportu z odwołaniami do niestandardowych zestawów w trybie lokalnym.

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku

Dołączanie odwołań do powszechnie używanych funkcji

Użyj wyrażenie okno dialogowe, aby wyświetlić listę skategoryzowane typowych funkcji wbudowanych do Reporting Services.Po rozwinięciu Typowe funkcje i kliknij kategorię, elementu okienko zawiera listę funkcji, które zawierają w wyrażenie.The common functions include classes from the .NET Framework System.Math and System.Convert namespaces and Visual Basic run-time library functions.Dla wygody można wyświetlić najczęściej używane funkcje w wyrażenie okno dialogowe, w którym są wyświetlane według kategorii: Tekst, daty i czas konwersji Math agregatu kontroli przepływu programów finansowych i inne.Rzadko używane funkcje nie są wyświetlane na tej liście, ale mimo to można używać ich w wyrażeniach.

Aby użyć funkcji wbudowanej, należy kliknąć dwukrotnie jej nazwę w okienku Element.Opis funkcja pojawi się w okienku opis a przykład wywołanie funkcja w przykładowym okienku. W okienku kodu wpisz nazwę funkcja, a po nim nawias otwierający (), pomoc IntelliSense wyświetla każdego prawidłowa składnia wywołania funkcja.Na przykład, aby obliczyć wartość maksymalną dla pole o nazwie Quantity w tabela, Dodaj proste wyrażenie =Max( do okienka kodu i następnie używać tagów inteligentnych, aby wyświetlić wszystkie możliwe prawidłowe składnie dla wywołania funkcja.Aby ukończyć ten przykład, wpisz =Max(Fields!Quantity.Value).

Aby uzyskać więcej informacji o poszczególnych funkcja, zobacz System.Math, System.Convert, i Członków biblioteki wykonawczej języka Visual Basic w witrynie MSDN.

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku

W tym odniesienia do mniej powszechnie używanych funkcji

Aby dołączyć odwołanie do innych mniej powszechnie używanych nazw CLR, należy użyć odwołanie w pełni kwalifikowana, na przykład System.Text.StringBuilder.Technologia IntelliSense jest nieobsługiwana w okienku kodu wyrażenie okno dialogowe te mniej najczęściej używane funkcje.

Aby uzyskać więcej informacji, zobacz Członków biblioteki wykonawczej języka Visual Basic w witrynie MSDN.

W tym odniesienia do zewnętrznych zespoły

Aby dołączyć odwołanie do klasy w zestawie zewnętrznych, należy zidentyfikować wirtualny plik dziennika dla procesora raportu.Użyj odniesienia strona Właściwości raportu okno dialogowe, aby określić w pełni kwalifikowana nazwa wirtualny plik dziennika, aby dodać do raportu.W sieci wyrażenie, należy użyć w pełni kwalifikowana nazwa klasy w zestawie.Zewnętrzne klas wirtualny plik dziennika nie są wyświetlane w wyrażenie okno dialogowe; Musisz podać prawidłową nazwę klasy.W pełni kwalifikowana nazwa zawiera obszar nazw, nazwę klasy i nazwa element członkowski.

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku

W tym kodzie osadzony

Aby dodać kodu osadzonego do raportu, należy użyć karty kodu Właściwości raportu okno dialogowe.Tworzony blok kodu może zawierać wiele metod.Methods in embedded code must be written in Microsoft Visual Basic and must be instance-based. The report processor automatically adds references for the System.Convert and System.Math namespaces.Użyj odniesienia strona Właściwości raportu okno dialogowe, aby dodać dodatkowe wirtualny plik dziennika odwołania. Aby uzyskać więcej informacji, zobacz Jak Dodaj odwołanie zestawu do raportu (SSRS).

Metody w kodzie osadzonym są dostępne za pośrednictwem zdefiniowanych globalnie Code element członkowski.Odwołując się do nich dostęp Code element członkowski i nazwę metoda.Poniższy przykład wywołuje metoda ToUSD, która konwertuje wartość w StandardCost pole wartości dolara:

=Code.ToUSD(Fields!StandardCost.Value)

Aby odwołać wbudowanych kolekcji w niestandardowym kodem, zawierają odniesienie do wbudowane Report obiekt:

=Report.Parameters!Param1.Value

Następujące przykłady przedstawiają sposób definiowania niektóre niestandardowe stałe i zmienne.

Public Const MyNote = "Authored by Bob"
Public Const NCopies As Int32 = 2
Public Dim  MyVersion As String = "123.456"
Public Dim MyDoubleVersion As Double = 123.456

Chociaż stałych niestandardowe nie pojawiają się w stałe kategorii w wyrażenie okno dialogowe (która wyświetla tylko wbudowane stałych), można dodać odwołania do nich z dowolnego wyrażenia, jak pokazano w poniższych przykładach.W wyrażenie, niestandardowe stała jest traktowany jako Variant.

=Code.MyNote
=Code.NCopies
=Code.MyVersion
=Code.MyDoubleVersion

Poniższy przykład zawiera kod odniesienia i implementacji kodu funkcja FixSpelling, który zastępuje tekst "Bicycle" na wszystkie wystąpienia tekstu "Rower" w SubCategory pole.

=Code.FixSpelling(Fields!SubCategory.Value)

Implementacja pokazuje poniższy kod osadzone w blok kodu definicja raportu, FixSpelling metoda.This example shows you how to use a fully qualified reference to the Microsoft .NET Framework StringBuilder class.

Public Function FixSpelling(ByVal s As String) As String
   Dim strBuilder As New System.Text.StringBuilder(s)
   If s.Contains("Bike") Then
      strBuilder.Replace("Bike", "Bicycle")
      Return strBuilder.ToString()
      Else : Return s
   End If
End Function

Aby uzyskać więcej informacji na temat wbudowanych kolekcji obiektów i inicjowania, zobacz Używanie odwołań do wbudowanych kolekcji Globals i Users (program Report Builder 3.0 i usługi SSRS) i Inicjowanie niestandardowy zestaw obiektów.

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku

W tym odniesienia do parametrów z kodu

Do globalnej kolekcji parametrów można odwoływać się za pomocą kodu niestandardowego w bloku kodu definicji raportu lub w zestawie niestandardowym dostarczonym przez użytkownika.Kolekcja parametrów jest przeznaczona tylko do odczytu i nie zawiera iteratorów publicznych.You cannot use a Visual Basic For Each construct to step through the collection.Należy znać nazwę parametru zdefiniowanego w definicji raportu, aby można było odwołać się do niego w kodzie.Można jednak przejść przez wszystkie wartości parametru wielowartościowego.

Następująca tabela zawiera przykłady odwoływania się do wbudowanych kolekcja Parameters z niestandardowym kodem:

Opis

Odwołanie w wyrażeniu

Definicja kodu niestandardowego

Przekazanie całej globalnej kolekcji parametrów do kodu niestandardowego.

Ta funkcja zwraca wartość parametru określonego raportu MyParameter.

=Code.DisplayAParameterValue(Parameters)

Public Function DisplayAParameterValue(

ByVal parameters as Parameters) as Object

Return parameters("MyParameter").Value

End Function

Przekazanie pojedynczego parametru do kodu niestandardowego.

W tym przykładzie zwraca wartość przekazany parametr.Jeśli parametr jest używany parametr wielowartościowym zwracanego ciąg jest łączenie wszystkich wartości.

=Code.ShowParametersValues(Parameters!DayOfTheWeek)

Public Function ShowParameterValues(ByVal parameter as Parameter)
 as String
   Dim s as String 
   If parameter.IsMultiValue then
      s = "Multivalue: " 
      For i as integer = 0 to parameter.Count-1
         s = s + CStr(parameter.Value(i)) + " " 
      Next
   Else
      s = "Single value: " + CStr(parameter.Value)
   End If
   Return s
End Function

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku

W tym odniesienia do kodu z niestandardowe zestawy

Aby używać niestandardowych zestawów w raporcie, należy najpierw utworzyć wirtualny plik dziennika, udostępnić Projektant raportów, Dodaj odwołanie do wirtualny plik dziennika w raporcie i następnie użyć wyrażenie w raporcie do odwoływania się do metod zawarte w tym zestawie.Po wdrożeniu raportu serwer raportów należy również wdrożyć niestandardowy wirtualny plik dziennika serwer raportów.

Informacje dotyczące tworzenia niestandardowego wirtualny plik dziennika i udostępnianie go Reporting Services, zobacz Niestandardowe zestawy przy użyciu raportów.

Aby odwołać się do kodu niestandardowego w wyrażenie, musisz wywołać element członkowski klasy w zestawie.Jak to zrobić, zależy od tego, czy metoda jest statyczna lub wystąpienie.Metody statyczne w obrębie wirtualny plik dziennika niestandardowe są dostępne globalnie w raporcie.metoda statyczne w wyrażeniach można uzyskać dostęp, określając obszaru nazw, klasy i nazwy metoda.Poniższy przykład wywołuje metoda ToGBP, która konwertuje wartość StandardCost wartości dolara funty szterlingi:

=CurrencyConversion.DollarCurrencyConversion.ToGBP(Fields!StandardCost.Value)

Metody oparte na wystąpienie są dostępne za pośrednictwem zdefiniowanych globalnie Code element członkowski.Odwołując się do nich dostęp Code element członkowski, a następnie nazwę instancji i metoda.Poniższym przykładzie wywołuje wystąpienie metoda ToEUR, która konwertuje wartość StandardCost z dolara do euro:

=Code.m_myDollarCoversion.ToEUR(Fields!StandardCost.Value)

Ostrzeżenie

W Projektant raportów, niestandardowy zestaw jest ładowany raz i nie jest zwalniany, dopóki nie zamkniesz Visual Studio.Jeśli wyświetlanie podglądu raportu, wprowadzić zmiany do wirtualny plik dziennika niestandardowy używany w raporcie i ponownie wyświetlić podgląd raportu zmiany nie pojawią się w drugim oknie podglądu.Aby ponownie załadować wirtualny plik dziennika, zamknij i otwórz ponownie Visual Studio i wyświetl podgląd raportu.

Aby uzyskać więcej informacji na temat dostępu do kodu, zobacz Dostęp do zestawów niestandardowych za pomocą wyrażenia.

Ikona strzałki używana z łączem Powrót na górę stronyPowrót do początku