Hinzufügen von Parametern zum Bericht
In Reporting Services können Sie mithilfe von Parametern die in einem Bericht zu verwendenden Daten angeben, eine Verbindung zwischen verwandten Berichten herstellen und die Berichtspräsentation anpassen. Um einen Bericht zu erstellen, der Parameter effizient verwendet, müssen Sie sich zunächst damit vertraut machen, wie Parameter und Datasetabfragen zusammen funktionieren, wie Parameter und Ausdrücke zusammen funktionieren, wie Parameter auf dem Berichtsserver für einen veröffentlichten Bericht verwaltet werden können und für die Beantwortung welcher Fragen ein Bericht konzipiert ist. Die Auswahl, die Sie für die Parametrisierung treffen, kann sich auf den Berichtsentwurf und das Layout auswirken.
Einer Datasetabfrage werden Abfrageparameter über den Abfrage-Designer oder das Dialogfeld Dataseteigenschaften hinzugefügt. Nachdem Sie eine Abfrage mit Parametern erstellt haben, verknüpft Reporting Services Abfrageparameter automatisch mit Berichtsparametern desselben Namens. Neue Berichtsparameter werden hinzugefügt und über den Bereich Berichtsdaten geändert.
Verwenden von Parametern in Reporting Services
Die häufigste Verwendung von Parametern besteht darin, von Datasetabfragen abgerufene Berichtsdaten zu variieren. In diesem Szenario werden Benutzer beim Erstellen des Berichts zur Eingabe eines oder mehrerer Werte aufgefordert, und die Datasetabfrage ruft nur die Daten ab, die angefordert werden. Die Datasetabfrage umfasst Abfrageparameter, und Reporting Services erstellt automatisch entsprechende Berichtsparameter, die indirekt mit den Abfrageparametern verknüpft sind. Sie können die Eigenschaften der Berichtsparameter in den Berichts-Designer-Tools ändern und eine gültige Werteliste und eine Benutzeraufforderung, die zur Laufzeit angezeigt wird, einschließen.
Außerdem können Sie kaskadierende Parameter erstellen, die hierarchische Daten von einer Datenquelle abrufen. Der erste Parameter filtert beispielsweise die Produktkategorie und der zweite Parameter das Produkt. Kaskadierende Parameter werden verwendet, um die Anzahl von verfügbaren Werten für den Benutzer zu organisieren und einzuschränken.
Nicht alle Datenquellen unterstützen Abfrageparameter. Wenn Daten nicht an der Quelle gefiltert werden können, können Sie Berichtsparameter verwenden, um Benutzern die Fähigkeit zu verleihen, Daten zu filtern, nachdem diese für den Bericht abgerufen wurden. Während alle Abfrageparameter über entsprechende Berichtsparameter verfügen, können Sie Berichtsparameter in den Berichts-Designer-Tools unabhängig definieren. Mit Berichtsparametern kann auch die Darstellung oder Organisation eines Berichts geändert werden, nachdem die Daten abgerufen wurden.
Parameter dienen außerdem dazu, Berichte mit Unterberichten und Drillthroughberichten zu verknüpfen. Diese Berichtsparameter können ausgeblendet sein, wobei die richtigen Daten für den verknüpften Bericht mithilfe von Werten im Hauptbericht ausgewählt werden, oder sie können für den Benutzer zur Laufzeit sichtbar sein.
Nachdem ein Berichtsparameter erstellt wurde, können Sie die Standardwerte und andere Parametereigenschaften, z. B. Sichtbarkeit, ändern. Berichtsparameter können beispielsweise integrierte Variablen wie "UserID" verwenden, sodass es sich anbietet, einen Bericht mit einem ausgeblendeten Parameter zu erstellen, der spezifische Daten für den Benutzer, der den Bericht ausführt, auswählt. Parameter enthalten einzelne Werte oder mehrere Werte, verwenden eine gültige statische oder abfragebasierte Werteliste und akzeptieren NULL- oder leere Werte. Mehrwertige Parameter ermöglichen es Benutzern, mehr als einen Wert zur Laufzeit auszuwählen.
Nach Veröffentlichen eines Berichts können Parameter unabhängig von der Berichtsdefinition verwaltet werden. Je nachdem, wie Sie den Parameter im Bericht zur Entwurfszeit konfigurieren, können Berichtsserveradministratoren viele Parametereigenschaften im veröffentlichten Bericht ändern. Die Administratoren können auch Sätze von Parametern erstellen, die mit der gleichen Berichtsdefinition verknüpft werden, die den Bericht für mehrere Zielgruppen anpasst. Weitere Informationen finden Sie unter Festlegen von Parametereigenschaften für einen publizierten Bericht.
Sie können auch Berichte ausführen und Parameterwerte mit URL-Zugriff angeben. Weitere Informationen finden Sie unter Verwenden von URL-Zugriffsparametern.
Sicherheitshinweis |
---|
Verwenden Sie in einem Bericht, der einen Parameter vom Typ String enthält, eine Liste der verfügbaren Werte (wird auch als Liste der gültigen Werte bezeichnet), und stellen Sie sicher, dass Benutzer, die den Bericht ausführen, nur über die Berechtigungen verfügen, die zum Anzeigen der Daten im Bericht erforderlich sind. Wenn Sie einen Parameter vom Typ String definieren, wird den Benutzern ein Textfeld angezeigt, das jeden beliebigen Wert annehmen kann. Mit einer Liste der verfügbaren Werte werden die Werte eingeschränkt, die eingegeben werden können. Wenn der Berichtsparameter an einen Abfrageparameter gebunden ist und Sie keine Liste mit verfügbaren Werten verwenden, kann ein Benutzer des Berichts SQL-Syntax in das Textfeld eingeben. Damit öffnet er den Bericht und Ihren Server potenziell für einen SQL-Injection-Angriff. Wenn der Benutzer über Berechtigungen zum Ausführen der neuen SQL-Anweisung verfügt, können daraus unerwünschte Ergebnisse auf dem Server resultieren. Wenn ein Berichtsparameter nicht an einen Abfrageparameter gebunden ist und die Parameterwerte im Bericht enthalten sind, können die Benutzer des Berichts Ausdruckssyntax oder eine URL in den Parameterwert eingeben und den Bericht für Excel oder HTML rendern. Wenn anschließend ein anderer Benutzer den Bericht anzeigt und auf die gerenderten Parameterinhalte klickt, führt der Benutzer möglicherweise unbeabsichtigt das bösartige Skript bzw. den bösartige Link aus. Wenn Sie das Risiko des unbeabsichtigten Ausführens von böswilligen Skripts minimieren möchten, öffnen Sie gerenderte Berichte nur über vertrauenswürdige Quellen. Weitere Informationen zum Sichern von Berichten finden Sie unter Sichern von Berichten und Ressourcen. |
In diesem Abschnitt
Verwenden von Parametern zum Steuern von Berichtsdaten
Erläutert, wie Berichtsdaten mit Parametern gefiltert werden, wie die Sortierreihenfolge für Detail- und Gruppendaten geändert wird und wie Abfragen modifiziert werden, um mit bestimmten Datenanbietern zu funktionieren.Verwenden von Abfrageparametern mit bestimmten Datenquellen (Reporting Services)
Beschreibt die von den verschiedenen Datenquellen erwartete Abfragesyntax.Verwenden von Parametern zum Steuern der Berichtsdarstellung
Erläutert, wie Parameter mit ausdrucksbasierten Eigenschaften, einschließlich bedingt ausgeblendeter Berichtselemente und bedingt geänderter Textfarben basierend auf den Werten eines Textfelds, zum Ändern der Darstellung verwendet werden.Verwenden von Parametern zum Verbinden mit anderen Berichten
Erläutert, wie Parameter zum Verknüpfen mit Drillthroughberichten, Unterberichten und verknüpften Berichten verwendet werden.Verwenden von ein- und mehrwertigen Parametern
Erläutert die Verwendung von ein- und mehrwertigen Parametern.Erstellen von Berichtsparametern und Festlegen von Berichtsparametereigenschaften
Erläutert, wie Eigenschaften für einen Berichtsparameter erstellt und festgelegt werden, einschließlich Datentyp, Standardwerten, Parametereingabeaufforderungen, verfügbaren Werten, mehreren Werten und ob die Parameter intern, ausgeblendet oder für den Benutzer zur Laufzeit sichtbar sind.
Siehe auch
Aufgaben
Vorgehensweise: Hinzufügen von Filtern (Reporting Services)
Vorgehensweise: Zuordnen eines Abfrageparameters zu einem Berichtsparameter
Vorgehensweise: Hinzufügen, Ändern oder Löschen von Berichtsparametern (Reporting Services)
Verweis
Berichtsparametereigenschaften (Dialogfeld), Allgemein
Konzepte
Hinzufügen interaktiver Features (Reporting Services)
Lernprogramm: Hinzufügen von Parametern zu einem Bericht
Filtern von Daten in einem Bericht
Festlegen von Parametereigenschaften für einen publizierten Bericht
Verwenden von Verweisen auf Parameters-Auflistungen in Ausdrücken (Reporting Services)