Implementieren eines "Updater"
Letzte Änderung: Dienstag, 20. April 2010
Gilt für: SharePoint Server 2010
Inhalt dieses Artikels
Beschreibung
Syntax
Hinweise
Beispiele
Beschreibung
Mithilfe einer Updater-Methodeninstanz können Sie eine vorhandene Entitätsinstanz in einem externen System aktualisieren. Wenn beispielsweise ein Geschäftsobjekt namens Customer gegeben ist, können Sie mit diesem Stereotyp die Adresse eines Kunden "John" im externen System aktualisieren.
Wenn Sie keine Updater-Methode definieren, können Elemente nicht mit den Business-Konnektivitätsdienste (Business Connectivity Services)-Features für die Entität aktualisiert werden. Beispielsweise können Sie zum Bearbeiten eines Elements in einer externen Liste nicht auf die Schaltfläche Element bearbeiten auf dem Menüband der Liste klicken, die auf diesem externen Inhaltstyp basiert.
In BDC wird vor der Aktualisierung ein Lesevorgang ausgeführt, um etwaige Datenkonflikte zu erkennen.
Für eine Updater-Methode wird der Satz von Feldern, der zum Aktualisieren des Elements benötigt wird, als Updater-Ansicht bezeichnet.
Syntax
Im Folgenden ist die typische Methodensignatur für eine Updater-Methode angegeben:
void UpdateEntity(EntityDataType fields)
void UpdateEntity(EntityDataType fields, EntityDataType previousValuesOfFields)
Hinweise
Für die Verwendung als Updater-Methode sollte die Methode folgende Bedingungen erfüllen:
Die Updater-Methode sollte den Bezeichner (oder die Kombination aus Bezeichnern) des Elements als Eingabe verwenden.
Die Updater-Methode sollte alle Lese-/Schreibfelder einer SpecificFinder-Methode verwenden.
Die Updater-Ansicht muss der SpecificFinder-Ansicht entsprechen oder eine Teilmenge dieser Ansicht sein.
![]() |
---|
Es wird empfohlen, eine transaktionale Update-Methode zu verwenden, um potenziellen Datenverlust zu vermeiden. Sind mehrere bestimmte Suchmethoden vorhanden, sollte die Updater-Ansicht mindestens einer SpecificFinder-Ansicht entsprechen oder eine Teilmenge dieser sein. |
Wie bei der Creator-Ansicht muss die Updater-Ansicht der Ansicht einer der bestimmten Suchmethoden entsprechen oder eine Teilmenge dieser darstellen. Sie muss alle Felder in der bestimmten Suchmethode enthalten, die nicht schreibgeschützt sind, weil die automatisch generierten Formulare in Business-Konnektivitätsdienste (Business Connectivity Services) von der SpecificFinder-Ansicht abhängig sind. Ist dies nicht der Fall, sind die zusätzlichen Felder in der Updater-Ansicht nicht aktualisierbar. Wie beim Erstellungsvorgang sucht Business-Konnektivitätsdienste (Business Connectivity Services) nach dieser Abhängigkeit und deaktiviert den Aktualisierungsvorgang in der externen Liste. Auch aktualisierbare Bezeichner (oder Kombinationen davon) können mit diesem Stereotyp aktualisiert werden, allerdings werden sie von den automatisch generierten Formularen in Business-Konnektivitätsdienste (Business Connectivity Services) nicht unterstützt.
In Tabelle 1 sehen Sie eine Aufstellung der Abhängigkeiten für die Creator-Ansicht und die Update-Ansicht sowie der Status für Erstellungs- und Aktualisierungsvorgänge.
Tabelle 1. Abhängigkeiten für Creator- und Update-Ansicht, Status für Erstellungs-und Aktualisierungsvorgänge
Szenario# |
Felder in "SpecificFinder"-Ansicht |
Felder in "Creator"-Ansicht |
Felder in "Updater"-Ansicht |
Zulässige Vorgänge |
Hinweise |
---|---|---|---|---|---|
1. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A B C D E F |
A C D F |
Erstellen: Nicht zulässig Aktualisieren: Nicht zulässig Offlineerstellung: Nicht zulässig Offlineaktualisierung: Nicht zulässig |
Feld F wird in der speziellen Suchmethode nicht gefunden. Demzufolge werden Erstellungs- und Aktualisierungsvorgänge von BCS deaktiviert. |
2. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A B C D E |
A C D |
Erstellen: Zulässig Aktualisieren: Zulässig Offlineerstellung: Zulässig Offlineaktualisierung: Zulässig |
Die Werte der Felder B und E können vom Benutzer bei der Erstellung angegeben, aber später nicht aktualisiert werden. |
3. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A B |
A C D |
Erstellen: Zulässig Aktualisieren: Zulässig Offlineerstellung: Zulässig Offlineaktualisierung: Zulässig |
Der Wert des Felds B kann vom Benutzer bei der Erstellung angegeben, aber später nicht aktualisiert werden. Der Wert des Felds E wird vom externen System zugewiesen und kann nicht vom Benutzer aktualisiert werden. Für die Offlineerstellung wird der Aktualisierungsvorgang sofort nach der Erstellung aufgerufen. |
4. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A B |
A C |
Erstellen: Zulässig nur für EL-Standardformulare Aktualisieren: Nicht zulässig Offlineerstellung: Nicht zulässig Offlineaktualisierung: Nicht zulässig |
Feld D kann nicht aktualisiert werden. Aufgrund dieser Inkonsistenz wird der Aktualisierungsvorgang von BCS deaktiviert. Die Offlineerstellung ist deaktiviert, da es keinen gültigen Aktualisierungsvorgang gibt. |
5. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A C D |
Kein Aktualisierungsvorgang definiert |
Erstellen: Zulässig Aktualisieren: Nicht zulässig Offlineerstellung: Zulässig Offlineaktualisierung: Nicht zulässig |
Die Werte der Felder B und E werden vom externen System zugewiesen. |
6. |
A B (schreibgeschützt) C D E (schreibgeschützt) |
A B C |
Kein Aktualisierungsvorgang definiert |
Erstellen: Zulässig nur für EL-Standardformulare Aktualisieren: Nicht zulässig Offlineerstellung: Nicht zulässig Offlineaktualisierung: Nicht zulässig |
Der Wert des Felds D kann nicht bei der Erstellung festgelegt werden, und es ist kein gültiger Aktualisierungsvorgang definiert, um ihn später festzulegen. Daher wird die Offlineerstellung von BCS deaktiviert. |
![]() |
---|
Stellen Sie sicher, dass Nullwerte korrekt behandelt werden. Prüfen Sie, ob die Felder erforderlich sind, und weisen Sie Feldern, die nicht erforderlich sind, keinen Nullwert zu. |
![]() |
---|
Die Namen der Parameter müssen mit den Definitionen im externen System übereinstimmen. Bei Namen von Parametern muss die Groß-/Kleinschreibung beachtet werden. Wenn die Namen von Parametern nicht für alle Methoden identisch sind, werden sie von Microsoft SharePoint Designer 2010 als unterschiedliche Felder interpretiert. |
Es ist wichtig, dass Ausnahmen korrekt behandelt werden. Im Falle von Updater gibt es einige interessante Ausnahmen, wie in Tabelle 2 aufgeführt.
Tabelle 2. Ausnahmen
Name der Ausnahme |
Verwendung in folgendem Fall |
---|---|
AccessDeniedException |
Der Benutzer ist zu diesem Vorgang im externen System nicht berechtigt. |
ConflictDetectedException |
Konfliktbehebung. Das Element wurde gleichzeitig aktualisiert und von einem anderen Benutzer geändert. |
LobBusinessErrorException |
Sicherstellen, dass die Fehlermeldung dem Benutzer wie vorgegeben angezeigt wird (aus dem externen System). |
ObjectDeletedException |
Das Element ist bekanntermaßen gelöscht worden. |
ObjectNotFoundException |
Das Element konnte nicht gefunden werden. |
RuntimeException |
Falls bei der Aktualisierung ein Fehler auftritt: Den Benutzern eine Warnung anzeigen und die Fehlerbehandlungsfeatures in Microsoft Outlook 2010 und Microsoft SharePoint Workspace 2010 verwenden. |
Beispiele
Codeausschnitt: Implementieren von "Updater"
Siehe auch
Konzepte
XML-Codeausschnitt: Modellieren einer Updater-Methode
Codeausschnitt: Ausführen einer Updatemethodeninstanz eines externen Inhaltstyps