Veröffentlichung des Originalartikels: 02.05.2011

Bild von JongHwa LimHallo. Ich heiße JongHwa Lim und bin Projektmanager im SharePoint Designer-Team. Es ist lange her. Viele haben wahrscheinlich geglaubt, dass diese Website nicht mehr aktiv ist, da es seit April letzten Jahres keine neuen Beiträge gegeben hat, aber wir sind wieder da. Wir werden diese Website am Leben halten und mindestens jeden Monat neue Blogs veröffentlichen und versuchen, den Kontakt zu Lesern und Kunden aufrechtzuerhalten.

Beginnen wir als Einstieg (auch für mein Team im Hinblick auf zukünftige Beiträge) mit einem kleinen, aber sehr hilfreichen neuen Feature in SharePoint Designer 2010 (auch SPD genannt).

Wann werden Zuordnungsspalten benötigt?

Formulieren wir zunächst ein Szenario. Sie sind als Workflowautor mit der Verwendung von SPD vertraut und müssen einen Workflow erstellen, der in zahlreichen Listen oder Dokumentbibliotheken mit workflowspezifischen Feldern verwendet werden soll. Wie implementieren Sie den Workflow? Hier sind ein paar Beispiele für Optionen, die Sie ausprobieren können, um dieses Ziel zu erreichen.

· Listenworkflow

o Sie können mit Listenworkflows beginnen. Sie fügen die workflowspezifischen Felder direkt der Liste hinzu. Zur Entwurfszeit in SharePoint Designer sehen Sie die Felder und können die Workflowlogik mithilfe dieser Felder erstellen.

o Wenn dieser Workflow jedoch in anderen Listen oder Dokumentbibliotheken wiederverwendet werden soll, ist dies nicht so einfach möglich.

· Wiederverwendbarer Workflow

o Sie sind etwas vertrauter mit SPD-Workflows und entscheiden sich daher für einen wiederverwendbaren Workflow und vermeiden so das Wiederverwendungsproblem. Beim Öffnen des Workflow-Designers sehen Sie jedoch als festlegbares Feld nur Titel (Title) und als lesbare Felder nur Inhaltstyp (Content Type), Erstellt (Created), Erstellt von (Created By), ID, Geändert (Modified), Geändert von (Modified By) und Titel (Title).

o Sie können die zum Erstellen der Workflowlogik benötigten Felder nicht verwenden.

· Wiederverwendbarer Workflow mit Basisinhaltstyp

o Sie sind fortgeschrittener Benutzer von SPD-Workflows und kennen daher das Konzept des Basisinhaltstyps für wiederverwendbare Workflows.

o Zuerst erstellen Sie einen neuen Inhaltstyp und fügen diesem die notwendigen Felder hinzu. Im Dialogfeld Wiederverwendbaren Workflow erstellen (Create Reusable Workflow) legen Sie den erstellten Inhaltstyp als Basisinhaltstyp fest.

o Nun sehen Sie die Felder im Workflow-Designer und können Ihre Aufgabe ausführen. Dabei entsteht kein Problem mit dem Wiederverwendungsszenario, solange Sie den Workflow dem Inhaltstyp zuordnen und der Inhaltstyp der Liste oder Dokumentbibliothek hinzugefügt wird.

o Aber was tun Sie, wenn Sie festgestellt haben, dass Sie ein neues Feld benötigen? Immer wenn Sie ein neues Feld benötigen, müssen Sie auf dem Server oder in SPD zur Benutzeroberfläche des Websiteinhaltstyps oder der Websitespalte gehen.

o Es gibt noch einen weiteren Schwachpunkt. Wenn Sie den Workflow mit Als Vorlage speichern verschieben möchten und der Basisinhaltstyp ein benutzerdefinierter Inhaltstyp ist oder eine benutzerdefinierte Websitespalte enthält, geht im entpackten Workflow ein Teil der Informationen zum Basisinhaltstyp verloren.
clip_image001

· Wiederverwendbarer Workflow mit Zuordnungsspalte

o Sie sind mit SPD fast so vertraut wie ein Benutzer, der das Konzept des Basisinhaltstyps kennt. Daher kennen Sie das Konzept der Zuordnungsspalte.

o Wenn Sie mit dem Erstellen des Workflows beginnen und ein Feld benötigen, erstellen Sie dieses von Anfang an mit Zuordnungsspalten. Dabei haben Sie die Wahl zwischen einer vorhandenen und einer neuen Websitespalte. Sie wechseln nicht zwischen den Benutzeroberflächen von Workflow-Designer, Websiteinhaltstyp und Websitespalte hin und her. Sie können alle Schritte an einer einzigen Stelle ausführen.

o Außerdem gibt es keine Probleme mit der Wiederverwendung, da die Definitionen wiederverwendbarer Workflows die Felder enthalten und das Workflowpaket die Wiederverwendung unterstützt.
clip_image002

Was ist eine Zuordnungsspalte?

Einige von Ihnen haben möglicherweise nach Hilfedateien zu diesem Thema gesucht. Hier sind ein paar Beispiele für die Hilfeinhalte, die Sie finden:

· Wiederverwendbare Workflows verfügen standardmäßig nicht über den Kontext einer bestimmten Liste oder Bibliothek. Daher enthalten sie standardmäßig nur die Spalten, die den Listen und Bibliotheken gemeinsam sind, beispielsweise Erstellt (Created) und Erstellt von (Created By).
Wenn für den wiederverwendbaren Workflow bestimmte Spalten, die Sie dem Workflow zugeordnet haben, in der Liste oder Bibliothek vorhanden sein müssen, können Sie diese Spalten als Zuordnungsspalten hinzufügen. Zuordnungsspalten werden einer Liste oder Bibliothek automatisch hinzugefügt, wenn der jeweiligen Liste oder Bibliothek ein wiederverwendbarer Workflow zugeordnet ist.

· Zuordnungsspalten
Wenn für den wiederverwendbaren Workflow bestimmte Spalten, die Sie dem Workflow zugeordnet haben, in der Liste oder Bibliothek vorhanden sein müssen, können Sie diese Spalten als Zuordnungsspalten hinzufügen. Zuordnungsspalten werden einer Liste oder Bibliothek automatisch hinzugefügt, wenn der jeweiligen Liste oder Bibliothek ein wiederverwendbarer Workflow zugeordnet wird.

· (QuickInfo für Menübandschaltfläche)
Definieren Sie Spalten, die einer Liste hinzugefügt werden, wenn der Workflow der jeweiligen Liste zugeordnet wird. Diese Option ist für Websiteworkflows nicht verfügbar.

Alle diese Beschreibungen sind vollkommen richtig und erläutern exakt, was Zuordnungsspalten sind und wozu sie verwendet werden. Zuordnungsspalten wurden eingeführt, um die Benutzerfreundlichkeit für Autoren wiederverwendbarer Workflows, die die Felder des „aktuellen Elements“ aktualisieren möchten, zu verbessern. Da es vor SharePoint Designer 2010 kein Konzept für wiederverwendbare Workflows gab, gab es auch keine Zuordnungsspalten. Ohne Zuordnungsspalten stellte die Verwendung des Basisinhaltstyps möglicherweise die einzige Alternative dar. Dadurch ergaben sich jedoch verschiedene Einschränkungen im Hinblick auf die Zuordnung und die Benutzerfreundlichkeit zur Entwurfszeit, da der Workflow nur dem Basisinhaltstyp oder geerbten Inhaltstypen zugeordnet werden konnte und der Autor mehrmals zwischen den Benutzeroberflächen von Workflow-Designer, Websiteinhaltstyp und Websitespalte wechseln musste.

Erstellen einer Zuordnungsspalte

Die Erstellung einer Zuordnungsspalte ist unkompliziert. Ich zeige Ihnen dies an einem Beispiel. Wie Sie unten sehen, können Sie mit der Menübandschaltfläche Zuordnungsspalten (Association Columns) beginnen.

clip_image002[1]

Wenn Sie auf die Schaltfläche klicken, wird ein Warndialogfeld wie das unten abgebildete angezeigt.

clip_image003

Wenn Sie auf OK klicken, werden Sie zum Hauptdialogfeld für Zuordnungsspalten geleitet.

clip_image004

Sie können zwischen Websitespalte auswählen (Select Site Column) und Neue Spalte hinzufügen (Add New Column) auswählen. Wenn Sie die Websitespalte auswählen, wird das folgende Dialogfeld angezeigt.
clip_image005

Wenn Sie das Feld Adresse (Address) auswählen, wird dieses dem Hauptdialogfeld hinzugefügt.

clip_image006

Wenn Sie eine neue Spalte hinzufügen, wird die folgende Benutzeroberfläche angezeigt, auf der Sie eine neue Spalte definieren können.

clip_image007

In diesem Beispiel habe ich ein Textfeld mit mehreren Zeilen und dem Namen Comments from Approvers erstellt.

clip_image008

Wie Sie sehen, wird beim Auswählen einer neuen Spalte die Option Ändern (Modify) ebenfalls aktiviert. Für vorhandene Spalten ist diese jedoch deaktiviert.

Wenn Sie auf OK klicken, sind Sie mit der Zuordnungsspalte fertig. Auf der Oberfläche des Designers sehen Sie jetzt Adresse (Address) und Comments from Approvers.

clip_image009

Funktionsweise

Intern wird von der Zuordnungsspalte die Websitespalte verwendet. Daher sehen Sie die Schaltfläche Websitespalte auswählen (Select Site Column) auf der Benutzeroberfläche. Die Zuordnungsspalten werden (unabhängig davon, ob sie neu erstellt oder aus Websitespalten ausgewählt wurden) dauerhaft in der wfconfig-Datei gespeichert und können daher zur Entwurfszeit verwendet werden.

clip_image011

Wenn Sie jedoch vor dem Veröffentlichen des Workflows die wfconfig-Datei betrachten, finden Sie die folgende Felddefinition. Der Grund ist, dass wir zur Veröffentlichungszeit Websitespalten erstellen und die entsprechende Felddefinition in der wfconfig-Datei aktualisieren.

clip_image013

Wenn Sie die Zuordnungsspalte nach der Veröffentlichung erneut betrachten, sehen Sie den Unterschied: Neue Spalte (New Column) wurde in Vorhandene Spalte (Existing Column) geändert und kann nicht geändert werden.

clip_image014

Wenn der wiederverwendbare Workflow der Liste oder Dokumentbibliothek zugeordnet ist, fügen wir die Zuordnungsspalten der Liste und Dokumentbibliothek hinzu, damit der wiederverwendbare Workflow, der auf die Felder verweist, funktionsfähig ist.

Packen

Wenn Sie den wiederverwendbaren Workflow packen und auf einer anderen Website entpacken, werden die Zuordnungsspalten beibehalten, das heißt, die Zuordnungsspalten werden ebenfalls gepackt und entpackt. Andererseits werden benutzerdefinierte Basisinhaltstypen und benutzerdefinierte Websitespalten im Basisinhaltstyp nicht vollständig gepackt, das heißt, bei der Übertragung können Informationen verloren gehen.

Einschränkung

Wenn wir einen wiederverwendbaren Workflow einem Inhaltstyp zuordnen, werden die Zuordnungsspalten beim Hinzufügen des Inhaltstyps zur Liste oder Dokumentbibliothek der Liste oder Dokumentbibliothek hinzugefügt. Wir fügen die Zuordnungsspalten nicht direkt dem Inhaltstyp hinzu.

Es handelt sich hierbei um einen übersetzten Blogbeitrag. Sie finden den Originalartikel unter Association Columns.