Vorgehensweise: Hinzufügen von Code zu einem Bericht (Reporting Services)
Sie können in jedem beliebigen Ausdruck einen eigenen benutzerdefinierten Code aufrufen. Sie können Code auf folgende zwei Arten bereitstellen:
Betten Sie in Visual Basic geschriebenen Code direkt in Ihren Bericht ein. Falls der Code auf einen Microsoft.NET Framework verweist, der nicht System..::..Math oder System..::..Convert ist, müssen Sie dem Bericht den Verweis hinzufügen. Weitere Informationen finden Sie unter Vorgehensweise: Hinzufügen eines Assemblyverweises zu einem Bericht (Reporting Services). Weitere Informationen über andere Verweise, die Sie anhand Ihres Codes erstellen können, finden Sie unter Verwenden von benutzerdefinierten Codeverweisen in Ausdrücken (Reporting Services).
Stellen Sie mit dem .NET Framework eine benutzerdefinierte Codeassembly bereit. Wenn Sie eine benutzerdefinierte Assembly bereitstellen, müssen Sie sie sowohl auf dem Computer, auf dem Sie den Bericht schreiben, als auch auf dem Berichtsserver, auf dem Sie den Bericht anzeigen, installieren. Weitere Informationen finden Sie unter Verwenden benutzerdefinierter Assemblys mit Berichten.
So fügen Sie einem Bericht eingebetteten Code hinzu
Klicken Sie in der Entwurfsansicht mit der rechten Maustaste auf die Entwurfsoberfläche außerhalb des Rahmens des Berichts, und klicken Sie auf Berichtseigenschaften.
Klicken Sie auf Code.
Geben Sie den Code unter Benutzerdefinierter Code ein. Fehler im Code erzeugen Warnungen, wenn der Bericht ausgeführt wird. Im folgenden Beispiel wird eine benutzerdefinierte Funktion namens ChangeWord erstellt, die das Wort "Bike" mit "Bicycle" ersetzt.
Public Function ChangeWord(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
Im folgenden Beispiel wird gezeigt, wie ein Datasetfeld namens Kategorie in einem Ausdruck an diese Funktion übergeben wird:
=Code.ChangeWord(Fields!Category.Value)
Wenn Sie diesen Ausdruck einer Tabellenzelle hinzufügen, in der Kategoriewerte angezeigt werden, wird, wenn das Wort "Bike" im Datasetfeld für diese Zeile enthalten ist, stattdessen das Wort "Bicycle" als Tabellenzellenwert angezeigt.