Integrierte Verweise auf Globals und Benutzer*innen in einem paginierten Bericht (Berichts-Generator)
Gilt für: Microsoft Report Builder (SSRS) Power BI Report Builder Berichts-Designer in SQL Server Data Tools
Die integrierte Feldsammlung, die sowohl die Globals -Sammlung als auch die User-Sammlung umfasst, stellt globale Werte dar, die von Reporting Services beim Verarbeiten eines Berichts bereitgestellt werden. Die Globals -Auflistung enthält Werte wie den Namen des Berichts, die Startzeit der Berichtsverarbeitung und die aktuellen Seitenzahlen für den Berichtskopf oder -fuß. Die User -Auflistung stellt die Benutzer-ID und Spracheinstellungen bereit. Diese Werte können in Ausdrücken verwendet werden, um Ergebnisse in einem Bericht zu filtern.
Hinweis
Sie können paginierte Berichtsdefinitionsdateien (.rdl) im Berichts-Generator von Microsoft, im Power BI Report Builder und im Berichts-Designer in SQL Server-Datentools erstellen und ändern.
Verwenden der Globals-Auflistung
Die Globals -Auflistung enthält die globalen Variablen für den Bericht. Auf der Entwurfsoberfläche werden diese Variablen mit einem & (kaufmännisches Und-Zeichen) als Präfix angezeigt, z.B. [&ReportName]
. In der folgenden Tabelle sind die Elemente der Globals -Auflistung beschrieben.
Member | Type | Beschreibung |
---|---|---|
ExecutionTime | DateTime | Das Datum und die Uhrzeit, zu der die Berichtsausführung begann. |
PageNumber | Integer | Die aktuelle Seitenzahl in Relation zu Seitenumbrüchen, mit denen die Seitenzahl zurückgesetzt wird. Am Anfang der Berichtsverarbeitung wird der Anfangswert auf 1 festgelegt. Die Seitenzahl wird mit jeder gerenderten Seite inkrementiert.Um Seiten innerhalb der Seitenumbrüche bei einem Rechteck, einem Datenbereich, einer Datenbereichsgruppe oder einer Karte zu zählen, legen Sie für die PageBreak-Eigenschaft die ResetPageNumber-Eigenschaft auf True fest. Dies wird nicht in den Hierarchiegruppen von Tablix-Spalten unterstützt. PageNumber kann nur in einem Ausdruck in einem Seitenkopf oder Seitenfuß verwendet werden. |
ReportFolder | String | Der vollständige Pfad des Ordners mit dem Bericht. Dieses Element schließt nicht die Berichtsserver-URL ein. |
ReportName | String | Der Name, unter dem der Bericht in der Berichtsserver-Datenbank gespeichert wird. |
ReportServerUrl | Zeichenfolge | Die URL des Berichtsservers, auf dem der Bericht ausgeführt wird. |
TotalPages | Integer | Die Gesamtseitenzahl in Relation zu Seitenumbrüchen, mit denen PageNumber zurückgesetzt wird. Wenn keine Seitenumbrüche festgelegt werden, entspricht dieser Wert dem OverallTotalPages-Wert. TotalPages kann nur in einem Ausdruck in einem Seitenkopf oder Seitenfuß verwendet werden. |
PageName | String | Der Name der Seite. Zu Beginn der Berichtsverarbeitung wird der Anfangswert von InitialPageName, einer Berichtseigenschaft, festgelegt. Wenn die einzelnen Berichtselemente verarbeitet werden, wird dieser Wert vom entsprechenden Wert von PageName eines Rechtecks, eines Datenbereichs, einer Datenbereichsgruppe oder einer Karte ersetzt. Dies wird nicht in den Hierarchiegruppen von Tablix-Spalten unterstützt. PageName kann nur in einem Ausdruck in einem Seitenkopf oder Seitenfuß verwendet werden. |
OverallPageNumber | Integer | Die Seitenzahl der aktuellen Seite im ganzen Bericht. ResetPageNumber hat keine Auswirkungen auf diesen Wert. OverallPageNumber kann nur in einem Ausdruck in einem Seitenkopf oder Seitenfuß verwendet werden. |
OverallTotalPages | Integer | Die Gesamtanzahl der Seiten für den gesamten Bericht. ResetPageNumber hat keine Auswirkungen auf diesen Wert. OverallTotalPages kann nur in einem Ausdruck in einem Seitenkopf oder Seitenfuß verwendet werden. |
RenderFormat | Renderformat | Informationen zur aktuellen Renderinganforderung. Weitere Informationen finden Sie unter RenderFormat im nächsten Abschnitt. |
Elemente der Globals -Auflistung geben eine Variante zurück. Wenn Sie ein Element dieser Auflistung in einem Ausdruck verwenden möchten, der einen bestimmten Datentyp erfordert, müssen Sie die Variable zunächst umwandeln. Zum Konvertieren der Ausführungszeitvariante in ein Datumsformat können Sie beispielsweise =CDate(Globals!ExecutionTime)
verwenden. Weitere Informationen finden Sie unter Datentypen in Ausdrücken (Berichts-Generator).
RenderFormat
In der folgenden Tabelle werden die Elemente von RenderFormatbeschrieben.
Member | Typ | BESCHREIBUNG |
---|---|---|
Name | Zeichenfolge | Der Name des Renderers laut Registrierung in der RSReportServer -Konfigurationsdatei.Verfügbar während bestimmter Teile des Berichtsverarbeitungs-/Renderingzyklus. |
IsInteractive | Boolescher Wert | Gibt an, ob die aktuelle Renderinganforderung ein interaktives Renderingformat verwendet. |
DeviceInfo | Schreibgeschützte Namens-/Werteauflistung | Schlüssel-Wert-Paare für die deviceinfo-Parameter der aktuellen Renderinganforderung. Zeichenfolgenwerte können mit dem Schlüssel oder einem Index in der Auflistung angegeben werden. |
Beispiele
In den folgenden Beispielen wird gezeigt, wie ein Verweis auf die Globals -Auflistung in einem Ausdruck verwendet wird:
Dieser Ausdruck ist in einem Textfeld in der Fußzeile eines Berichts platziert und stellt die Seitenzahl und die Gesamtseitenzahl im Bericht bereit:
=Globals.PageNumber & " of " & Globals.TotalPages
Dieser Ausdruck stellt den Namen des Berichts und die Zeit seiner Ausführung bereit. Die Zeit wird mit der Microsoft .NET Framework-Formatzeichenfolge für das kurze Datum formatiert:
=Globals.ReportName & ", dated " & Format(Globals.ExecutionTime, "d")
Wenn dieser Ausdruck für eine ausgewählte Spalte im Dialog Spaltensichtbarkeit platziert wird, wird die Spalte nur angezeigt, wenn der Bericht nach Excel exportiert wird. Andernfalls ist die Spalte ausgeblendet.
EXCELOPENXML
bezieht sich auf das Excel-Format aus Office 2007.EXCEL
bezieht sich auf das Excel-Format aus Office 2003.=IIF(Globals!RenderFormat.Name = "EXCELOPENXML" OR Globals!RenderFormat.Name = "EXCEL", false, true)
Verwenden der User-Auflistung
Die User -Auflistung enthält Daten zu dem Benutzer, der den Bericht ausführt. Sie können diese Sammlung verwenden, um die Daten zu filtern, die in einem Bericht angezeigt werden. Sie können z. B. nur die Daten des aktuellen Benutzers anzeigen oder die UserID wie in einem Berichtstitel anzeigen. Auf der Entwurfsoberfläche werden diese Variablen mit einem & (kaufmännisches Und-Zeichen) als Präfix angezeigt, z.B. [&UserID]
.
In der folgenden Tabelle sind die Elemente der User -Auflistung beschrieben.
Member | Type | Beschreibung |
---|---|---|
Sprache | String | Die Sprache des Benutzers, der den Bericht ausführt. Beispiel: en-US . |
UserID | String | Die Benutzer-ID des Benutzers, der den Bericht ausführt. Wenn Sie die Windows-Authentifizierung verwenden, stellt dieser Wert das Domänenkonto des aktuellen Benutzers dar. Die Sicherheitserweiterung des Berichts-Generators bestimmt den Wert, der die Windows-Authentifizierung oder eine benutzerdefinierte Authentifizierung verwenden kann. |
Verwenden von Gebietsschemaeinstellungen
Sie können Ausdrücke verwenden, um auf die Gebietsschemaeinstellungen auf einem Clientcomputer zu verweisen. Mithilfe des User.Language -Wertes können Sie bestimmen, wie ein Bericht für den Benutzer angezeigt wird. Beispielsweise können Sie einen Bericht erstellen, in dem je nach Gebietsschemawert ein unterschiedlicher Abfrageausdruck verwendet wird. Die Abfrage kann z. B. so geändert werden, dass abhängig von der zurückgegebenen Sprache lokalisierte Informationen aus unterschiedlichen Spalten abgerufen werden. Sie können auch in den Spracheinstellungen des Berichts oder Berichtselements einen Ausdruck verwenden, der auf dieser Variablen basiert.
Hinweis
Wenn Sie die Spracheinstellungen eines Berichts ändern, müssen Sie darauf achten, dass dies keine Probleme bei der Anzeige verursacht. Durch das Ändern der Gebietsschemaeinstellung des Berichts kann beispielsweise das Datumsformat im Bericht geändert werden, gleichzeitig ändert sich jedoch möglicherweise auch das Währungsformat. Falls kein Konvertierungsprozess für die Währung installiert ist, wird möglicherweise das falsche Währungssymbol im Bericht angezeigt. Sie können dies vermeiden, indem Sie die Sprachinformationen für die einzelnen Elemente festlegen, die Sie ändern möchten, oder indem Sie das Element mit den Währungsdaten auf eine bestimmte Sprache festlegen.
Identifizieren von UserID für Momentaufnahme- oder Verlaufsberichte
In manchen Fällen zeigen Berichte, die die User!UserID -Variable enthalten, spezifische Berichtsdaten für den aktuellen Benutzer, der den Bericht anzeigt, nicht an.