Freigeben über


PerformancePoint Services-Filter

Letzte Änderung: Dienstag, 30. August 2011

In PerformancePoint Services in Microsoft SharePoint Server 2010 kommt ein Filter typischerweise als Webserversteuerelement auf einer Dashboardseite vor. Das Filtersteuerelement wird in einem Webpart gerendert, in dem standardmäßige SharePoint-Verbindungsschnittstellen implementiert werden. Mithilfe des Steuerelements können Benutzer Parameterwerte auswählen, die dann an die verbundenen Scorecards und Berichte übermittelt werden.

Inhalt dieses Artikels
Filterprozess in PerformancePoint Services
Filterdaten
Filterverbindungen
Filterauswahlsteuerelemente

Gilt für: SharePoint Server 2010

Weitere Informationen zu PerformancePoint Services-Filtern finden Sie in den folgenden Abschnitten:

  • Filterprozess in PerformancePoint Services

  • Filterdaten

  • Filterverbindungen

  • Filterauswahlsteuerelemente

Filterprozess in PerformancePoint Services

Der Filterprozess in einem Dashboard läuft wie folgt ab:

  1. Der Server rendert ein Filterwebpart auf einer Dashboardseite. Das Webpart hostet ein Webserversteuerelement, z. B. eine Liste oder eine Struktur.

  2. Der Datenanbieter des Filters stellt eine Verbindung zu der zugrunde liegenden Datenquelle her. Er ruft Daten ab und speichert sie in einer Datentabelle (der so genannten Anzeigedatentabelle).

  3. Mit den abgerufenen Daten wird das Filtersteuerelement aufgefüllt.

  4. Ein Benutzer wählt einen oder mehrere Werte aus dem Filtersteuerelement aus und klickt dann auf OK.

  5. Der Datenanbieter speichert die vom Benutzer ausgewählten Werte in einer Datentabelle (der Meldungsdatentabelle).

  6. Das Filtersteuerelement sendet die Meldungsdaten (die vom Benutzer ausgewählten Werte) an den Server.

  7. Der Server ruft die Ergebnisse der neuen Abfrage aus der Datenquelle ab und sendet die aktualisierten Daten dann an die Consumer der Scorecards und Berichte.

  8. Der Server rendert die Consumer mit den neuen Daten.

HinweisHinweis

Filter können auch Anzeigebedingungsinformationen übermitteln. Eine Anzeigebedingung steuert die Sichtbarkeit von verbundenen Consumern. Stimmt eine Filterauswahl mit einem Anzeigebedingungswert überein, wird der verbundene Consumer angezeigt.

Filterdaten

Ein Filter bearbeitet mithilfe eines Datenanbieters zwei Datasets:

  • Anzeigedaten, mit denen Verbindungspunkte definiert und Filtersteuerelemente aufgefüllt werden.

  • Meldungsdaten, die der Filter an Consumer übergibt, um die vom Benutzer aus dem Filtersteuerelement ausgewählten Werte darzustellen.

Beide Datasets werden in DataTable-Objekten in Matrizen aus Spalten und Zeilen gespeichert.

Anzeigedaten

Anhand von Anzeigedaten werden Verbindungspunkte für den Filter definiert und Filtersteuerelemente aufgefüllt. Die Anzeigedatentabelle wird in der DisplayValues-Eigenschaft des ParameterDefinition-Objekts gespeichert, das wiederum in der BeginPoints-Eigenschaft des Filters gespeichert wird. Die Tabelle wird durch die GetDisplayDataInternal-Methode initialisiert.

Die Anzeigedatentabelle enthält Daten aus der dem Filter zugrunde liegenden Datenquelle. Die CustomDefinition-Eigenschaft enthält die Informationen, die zum Abrufen der Daten benötigt werden. Diese Informationen können in einem Objekt wie z. B. einer Abfragezeichenfolge, einer URL oder einem serialisierten Objekt gespeichert werden. Die Zieldatenquelle wird in der DataSourceLocation-Eigenschaft definiert, wobei eine systeminhärent unterstützte Datenquelle oder eine benutzerdefinierte Datenquelle angegeben werden kann. Informationen zum Konfigurieren von Anzeigedaten finden Sie unter Filterverbindungen.

Meldungsdaten

Die Werte, die ein Benutzer im Filtersteuerelement auswählt, werden in der Meldungsdatentabelle gespeichert. Die Meldungsdaten werden in einem clientseitigen Browserübertragungspaket übergeben und als Parameterwerte in den Abfragen verbundener Scorecard- und Berichtsconsumer verwendet. Anschließend rendert der Server die Consumer mit den neuen Daten. Die Meldungsdatentabelle wird mithilfe der GetMessageData-Methode zurückgegeben.

Filterverbindungen

Filter sind Anbieter. Sie senden Daten an verbundene Scorecard- und Berichtsconsumer. Dashboardautoren definieren eine Verbindung zwischen einem Filter und einem Consumer, indem sie in PerformancePoint Dashboard-Designer einen Filteranfangspunkt einem Consumerendpunkt zuordnen. Ein Endpunkt stellt einen Parameter in einer Scorecard- oder Berichtsabfrage dar, ein Anfangspunkt stellt den Wert des Parameters dar. Ein Beispiel: Ein Filter zeigt die geografischen Regionen Nord, Süd, Ost und West an, und ein Bericht gibt den Bruttoertrag für die im Filter ausgewählte Region zurück. In diesem Beispiel ist die Region der Parameter in der Abfrage für den Bericht – der Wert wird nicht konkret definiert. Der Bericht muss den Parameterwert, der in der Abfrage zu verwenden ist (Nord, Süd, Ost oder West), aus dem Filter abrufen.

Ein ParameterDefinition-Objekt definiert den Anfangspunkt für eine Filterverbindung. Dieser umfasst die Anzeigedatentabelle, die die Quelldaten für den Anfangspunkt enthält, z. B. die Werte, mit denen das Filtersteuerelement aufgefüllt wird. Auf Anfangspunktinformationen wird über die BeginPoints-Eigenschaft des Filters zugegriffen. Diese gibt ein ParameterDefinitionCollection-Objekt zurück, das ein (1) ParameterDefinition-Objekt enthält.

HinweisHinweis

Scorecards sind sowohl Anbieter als auch Consumer. Sie können Daten aus Filtern abrufen und Daten an Berichte senden. Filteranfangspunkte können nur ein einziges ParameterDefinition-Objekt enthalten. Anfangspunkte von Scorecards enthalten dagegen typischerweise mehrere ParameterDefinition-Objekte.

Angeben des Schlüsselfelds und des Anzeigefelds

Der Datenanbieter des Filters definiert, wie die Spalten in der Anzeigedatentabelle verwendet werden. Dabei muss zumindest angegeben sein, welche Spalte als Schlüsselfeld und welche Spalte als Anzeigefeld verwendet werden soll. (Eine einzige Spalte kann sowohl als Schlüssel- als auch als Anzeigefeld verwendet werden.)

  • Das Schlüsselfeld enthält die Werte, die als Schlüssel verwendet werden (Zeilenlokatoren).

  • Das Anzeigefeld enthält die Werte, mit denen das Filtersteuerelement aufgefüllt wird.

Darüber hinaus kann der Datenanbieter festlegen, wie andere Spalten in der Tabelle verwendet werden. Beispielsweise kann er die erste Spalte der Tabelle als Schlüsselfeld und die zweite als Anzeigefeld definieren und dann die anderen Spalten ignorieren oder zusätzliche Funktionen basierend auf anderen Spalten definieren. Diese Festlegungen werden während der Entwicklung vorgenommen und können von Dashboardautoren nicht neu konfiguriert werden.

Angeben von möglichen Verbindungspunkten

Die Werte, die ein Filter an einen Consumer senden kann, stammen aus einer Spalte in der Anzeigedatentabelle. Diese Quellspalte (oder gebundene Spalte) wird vom Dashboardautor ausgewählt und stellt den Verbindungspunkt des Filters dar.

In Dashboard-Designer werden Spalten in der Anzeigedatentabelle, deren erweiterte ShowColumn-Eigenschaft auf true festgelegt ist, den Dashboardautoren als mögliche Verbindungspunkte für den Filter angezeigt. Sie werden im Dialogfeld Verbindung im Feld Quellwerte oder im AvailableFields-Abschnitt des Filters in einer Dashboardzone angezeigt.

HinweisHinweis

In der SetColumnVisibility-Methode im Thema Gewusst wie: Erstellen von Datenanbietern für PerformancePoint Services-Filter wird veranschaulicht, wie der Beispieldatenanbieter die ShowColumn-Eigenschaft für alle Spalten in der Tabelle auf true festlegt.

Beispiel für eine Filterverbindung

In diesem einfachen Beispiel wird gezeigt, wie Anfangspunktinformationen in einer Filterverbindung verwendet werden.

  1. Die Anzeigedatentabelle definiert den Anfangspunkt. Sie enthält drei Spalten, die wie folgt konfiguriert sind:

    • CustomerId ist als Schlüsselfeld angegeben. ShowColumn ist auf false festgelegt.

    • DisplayName ist als Anzeigefeld angegeben. ShowColumn ist auf true festgelegt.

    • AccountName ist nicht als Feld angegeben. ShowColumn ist auf true festgelegt.

    Tabelle 1. Beispiel für eine Anzeigedatentabelle

    CustomerId (Schlüssel)

    DisplayName (Anzeige)

    AccountName

    19-001

    Tailspin Toys

    TailspinToys_R19

    19-002

    Wide World Importers

    WideWorldImporters_R19

    19-003

    Wingtip Toys

    WingtipToys_R19

  2. In Dashboard-Designer erstellt der Autor eine Verbindung für einen Filter und einen Bericht auf einer Dashboardseite. Der Filter zeigt DisplayName als AccountName mögliche Verbindungspunkte an, da die ShowColumn-Eigenschaft für diese Spalten in der Anzeigedatentabelle auf true festgelegt ist.

  3. Der Autor wählt AccountName als Verbindungspunkt (oder gebundene Spalte) aus. Dadurch wird AccountName als diejenige Spalte in der Anzeigedatentabelle identifiziert, die die Werte enthält, die der Filter an Consumer übermitteln kann.

  4. Auf der veröffentlichten Dashboardseite wird das Filtersteuerelement mit den Werten Tailspin Toys, Wide World Importers und Wingtip Toys aufgefüllt. Diese Werte stammen aus der Spalte DisplayName, da diese in der Anzeigedatentabelle als Anzeigefeld angegeben ist.

  5. Der Benutzer wählt im Steuerelement Wingtip Toys aus. Der Datenanbieter des Filters lokalisiert anhand des zugehörigen Schlüssels (19-003) den Wert in der gebundenen Spalte, der an die Consumer gesendet werden soll (WingtipToys_R19).

Filterauswahlsteuerelemente

Auf einer PerformancePoint Services-Dashboardseite hostet ein Filterwebpart ein Webserversteuerelement. Das Filtersteuerelement zeigt typischerweise eine Aufzählung von Datenwerten an, und die Dashboardbenutzer können einen oder mehrere Werte aus dem Filtersteuerelement auswählen. Das Steuerelement wird während des Renderingprozesses mit Daten aufgefüllt.

Das Steuerelement, das ein Filter verwendet, wird durch seine Rendererklasse angegeben. Das Standardsteuerelement für einen Filtertyp wird durch das RendererClass-Attribut in der Datei Web.config von PerformancePoint Services angegeben. Allerdings hat die RendererClassName-Eigenschaft Vorrang vor dem Standardsteuerelement für eine Filterinstanz. Daher können Autoren im Filter-Editor einen anderen Laufzeitrenderer angeben.

Für benutzerdefinierte Filter kann ein benutzerdefiniertes Steuerelement oder ein Steuerelement eines Drittanbieters oder eines der folgenden PerformancePoint Services-Steuerelemente verwendet werden:

HinweisHinweis

Für benutzerdefinierte Filtersteuerelemente kann die Basisklasse ParameterizableControl oder ParameterSelectionControl verwendet werden. Wir empfehlen die Verwendung der ParameterSelectionControl-Basisklasse , da sie von ParameterizableControl abgeleitet ist und das Implementieren eines Auswahl-Steuerelements ermöglicht. Anweisungen zum Erstellen eines benutzerdefinierten Steuerelements würden den Rahmen dieser Dokumentation sprengen, aber die Vorgehensweise ist ähnlich wie beim Erstellen eines Berichtsrenderers.

Unabhängig davon, ob Sie für den Filter ein PerformancePoint Services-Steuerelement oder ein benutzerdefiniertes Steuerelement verwenden, müssen Sie im RendererClass-Attribut in der Datei Web.config von PerformancePoint Services eine Standardrendererklasse angeben. Weitere Informationen finden Sie unter Gewusst wie: Manuelles Registrieren von PerformancePoint-Dienste-Erweiterungen.

Siehe auch

Konzepte

Editoren für benutzerdefinierte PerformancePoint Services-Objekte

Weitere Ressourcen

Erstellen von Filtererweiterungen für PerformancePoint Services

Codebeispiele für PerformancePoint Services in SharePoint Server 2010

PerformancePoint-Dashboardfilter und Verbindungen (Übersicht) (TechNet)