Vom Business Data Connectivity-Dienst unterstützte Filtertypen
Letzte Änderung: Freitag, 16. Juli 2010
Gilt für: SharePoint Server 2010
Filter sind die grundlegende Methode, mit der Benutzereingaben (oder Systemeingaben) vom Business Data Connectivity-Dienst (BDC) erfasst und für den Back-End-API-Aufruf bereitgestellt werden. Filter beschreiben, wo ein Filterwert in einer komplexen Abfolge von Parametern eingefügt werden soll. Zu diesem Zweck werden die Eingabe- oder Rückgabeparameter einer Methodendefinition "gekennzeichnet", um anzugeben, wo ein Wert eingefügt werden soll. Die Filterfunktionalität muss vom Back-End-API-Aufruf bereitgestellt werden. Die Filter stellen nur einen Mechanismus dar, um dies für den Benutzer sichtbar zu machen.
Externe Systeme stellen verschiedene Filtermechanismen bereit. BDC verwendet allgemeine Muster, um Benutzern unabhängig von der Datenquelle dieselbe Filtersemantik bereitzustellen. BDC unterstützt mehrere Filter und Filtermuster. Mit Benutzerfiltern wie z. B. Comparison wird deklariert, welche Eingaben Benutzer überschreiben können. Mit Systemfiltern wie z. B. UserContext und UserProfile kann BDC Werte wie z. B. Benutzertoken auf sichere Weise festlegen. Weitere Informationen finden Sie in Tabelle 1. Clients führen eine Abfrage für das Metadatenrepository aus, um zu bestimmen, welche Filter vom System unterstützt werden, und ihre Benutzeroberflächen entsprechend zu rendern.
Wichtig |
---|
Wenn ein Metadatenautor Metadaten erstellt, die einen Benutzernamen als durch den Benutzer steuerbaren Filter verwenden und vertrauliche persönliche Daten zurückgeben, kann ein Benutzer möglicherweise die Daten eines anderen Benutzers einsehen. Um dies zu vermeiden, übergeben Sie den Benutzernamen mithilfe von UserContextFilter an den Methodenaufruf. |
In Tabelle 1 werden die von BDC unterstützten Filter beschrieben.
Tabelle 1. Filterwerte
Wert |
Filtertyp |
Beschreibung |
||
---|---|---|---|---|
ActivityId |
Systemfilter |
Wird verwendet, wenn ein Vorgang in einem externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert eine Kontextidentität des aufrufenden Vorgangs darstellen soll. Business-Konnektivitätsdienste (Business Connectivity Services) legt eine GUID, die den aktuellen Vorgangskontext darstellt, als Wert im Eingabeparameter fest, der dem ActivityId-Filter zugeordnet ist. |
||
Batching |
Benutzerfilter |
Wird beim Durchführen einer Abfrage im externen System verwendet. Der Wert kann von jeder Clientanwendung automatisch auf den letzten Wert des Filters festgelegt werden, der vom externen System abgerufen wurde. Anhand dieses Werts kann das externe System dann die Enumeration von Elementen oder Änderungen fortsetzen. |
||
BatchingTermination |
Benutzerfilter |
Wird beim Durchführen einer Abfrage im externen System verwendet. Der vom externen System zurückgegebene Werte gibt an, ob zusätzliche Aufrufe zum Abrufen der restlichen Daten erforderlich sind. |
||
Comparison |
Benutzerfilter |
Wird beim Durchführen einer Abfrage in einem externen System verwendet. Ein externes System kann einen ComparisonFilter-Wert mit dem Wert eines bestimmten Felds einer Gruppe von EntityInstances vergleichen und nur die EntityInstances zurückgeben, bei denen das Feld den Vergleichstest besteht. |
||
Input |
Benutzerfilter |
Wird beim Aufrufen eines Vorgangs in einem externen System verwendet. Der Wert eines InputFilter-Typs kann von einem externen System als zusätzliches Argument für den Vorgang verwendet werden. |
||
InputOutput |
Benutzerfilter |
Wird beim Aufrufen eines Vorgangs in einem externen System verwendet. Der Wert eines InputOutputFilter-Typs kann von einem externen System als zusätzliches Argument für den Vorgang verwendet werden, und zusätzliche Ergebnisse eines Vorgangs, die von ReturnTypeDescriptor nicht erfasst werden können, lassen sich als ein Wert des InputOutputFilter-Typs abrufen. |
||
LastId |
Benutzerfilter |
Wird beim Durchführen einer Abfrage in einem externen System verwendet. Der Wert kann von jeder Clientanwendung automatisch auf die Bezeichnerwerte des letzten im externen System gelesenen Elements festgelegt werden, und zwar in einem Finder, der die Daten in mehreren Blöcken zurückgibt. Anhand dieses Werts kann das externe System dann die restlichen Elemente zurückgeben, beginnend mit dem nächsten Element. |
||
Limit |
Benutzerfilter |
Wird beim Durchführen einer Abfrage in einem externen System verwendet. Dieser Wert kann als Höchstwert für die Anzahl der externen Elemente (EntityInstances), die beim Aufrufen der Methode, zu der das Attribut gehört, zurückgegeben werden, interpretiert werden. |
||
Output |
Benutzerfilter |
Wird beim Aufrufen eines Vorgangs in einem externen System verwendet. Zusätzliche Ergebnisse eines Vorgangs, die von ReturnTypeDescriptor nicht erfasst werden können, lassen sich als ein Wert des InputOutputFilter-Typs abrufen. |
||
PageNumber |
Benutzerfilter |
Wird beim Durchführen einer Abfrage im externen System verwendet. Dieser Wert stellt den nullbasierten Index der Seite dar, die vom externen System für ein mehrseitiges Ergebnis zurückgegeben werden soll. |
||
Password |
Systemfilter |
Wird verwendet, wenn Vorgänge in einem externen System aufgerufen werden und der als Eingabeparameter zu übergebende Wert ein in Einmaliges Anmelden gespeichertes Kennwort darstellen soll. Business-Konnektivitätsdienste (Business Connectivity Services) ruft die Anmeldeinformationen ab, die der SecondarySsoApplicationId-Eigenschaft und der SsoProviderImplementation-Eigenschaft der externen Systeminstanz (LobSystemInstance) zugeordnet sind. Das aus den Anmeldeinformationen abgerufene Kennwort wird als Wert für den Eingabeparameter verwendet, der dem Password-Filter zugeordnet ist.
|
||
SSOTicket |
Systemfilter |
Wird verwendet, wenn ein Vorgang in einem externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert ein Anmeldeticket aus Einmaliges Anmelden für den Benutzer darstellt. Dieses Ticket kann dann vom Zieldienst oder der Zielanwendung eingelöst werden, um die Benutzeranmeldeinformationen zu erhalten. Einmaliges Anmelden verwendet die in der externen Systeminstanz angegebene SSOProviderImplementation-Eigenschaft und fordert diesen Anbieter auf, ein SSO-Ticket auszustellen. Dieses SSO-Ticket wird als der Eingabeparameter übergeben, der dem SSOTicket-Filter zugeordnet ist. |
||
Timestamp |
Benutzerfilter |
Wird beim Aufrufen eines Vorgangs im externen System verwendet. Dieser Wert stellt den Zeitpunkt dar, an dem diese Funktion vom Client zuletzt aufgerufen wurde. Anhand dieses Werts kann das externe System dann Änderungen nach dem angegebenen Zeitpunkt melden. |
||
UserContext |
Systemfilter |
Wird verwendet, wenn ein Vorgang im externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert den Benutzerkontext darstellen soll. In diesem Fall verwendet Business-Konnektivitätsdienste (Business Connectivity Services) die UserContextType-Eigenschaft für den Filter (FilterDescriptor), um nach einem im Eingabeparameter festzulegenden Wert zu suchen. Wenn MachineId als UserContextType angegeben wird, wird an den Eingabeparameter die eindeutige ID der Betriebssysteminstallation des Computers übergeben. Wenn QualifiedUserName als UserContextType angegeben wird, wird einer der folgenden Werte an den Eingabeparameter übergeben:
|
||
UserCulture |
Systemfilter |
Wird verwendet, wenn ein Vorgang im externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert die Kultur der Benutzerumgebung darstellen soll, mit der der Vorgang aufgerufen wird. Business-Konnektivitätsdienste (Business Connectivity Services) verwendet die Format-Eigenschaft für den Filter, um nach einem im Eingabeparameter festzulegenden Wert zu suchen:
|
||
UserName |
Systemfilter |
Wird verwendet, wenn ein Vorgang in einem externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert den in Einmaliges Anmelden gespeicherten Benutzernamen darstellen soll. Business-Konnektivitätsdienste (Business Connectivity Services) ruft die Anmeldeinformationen ab, die der SecondarySsoApplicationId-Eigenschaft und der SsoProviderImplementation-Eigenschaft der externen Systeminstanz zugeordnet sind. Der aus den Anmeldeinformationen abgerufene Benutzername wird als Wert für den Eingabeparameter verwendet, der dem UserName-Systemfilter zugeordnet ist.
|
||
UserProfile |
Systemfilter |
Wird verwendet, wenn ein Vorgang in einem externen System aufgerufen wird und der als Eingabeparameter zu übergebende Wert eine Eigenschaft im Profil des aktuellen Benutzers darstellen soll. Business-Konnektivitätsdienste (Business Connectivity Services) verwendet die UserProfileProvider-Eigenschaft und die UserProfilePropertyName-Eigenschaft, die im Filter angegeben sind, um nach einem im Eingabeparameter festzulegenden Wert zu suchen. UserProfileProvider wird zum Abrufen des Profils des aktuellen Benutzers verwendet, und UserProfilePropertyName enthält den Eigenschaftennamen, dessen Wert im Benutzerprofil an den Eingabeparameter übergeben werden soll. |
||
Wildcard |
Benutzerfilter |
Wird beim Durchführen einer Abfrage in einem externen System verwendet. Der Wert stellt ein Muster aus regulären Zeichen und Platzhalterzeichen dar, das mit dem Wert eines bestimmten Felds der Gruppe der EntityInstances abgeglichen wird. Vom externen System werden nur die EntityInstances zurückgegeben, deren Feldwerte mit dem angegebenen Muster übereinstimmen. |