Neue Listenelemente durch eigene User hinzufügen lassen

Da die Einbindung von SharePoint in diversen Variationen mittlerweile zum guten Ton unter Domänenbetreibern gehört, erreichen uns auch immer mehr Fragen zu speziellen Konfigurationen, die von einer Großzahl von Nutzern herbeigesehnt werden. 
In diesem Beitrag möchte ich zeigen, welche Möglichkeiten bestehen, um es den Nutzern Ihrer SharePoint-Umgebung zu ermöglichen, eine bestehende Liste selbst zu erweitern. In einem angefragten Szenario wurde dies benötigt, um das selbsterstellte Feld „Firmenzugehörigkeit“ in einer Kontaktliste anzupassen. 
Um ein solches Verhalten zu ermöglichen gibt es mehrere Optionen, die jeweils Ihre eigenen Vor- und Nachteile haben. Auf die Umsetzung und die Eigenheiten werde ich nun im Folgenden eingehen. 
Alle Einstellungen die hier gezeigt werden, sind im Bereich der verwendeten Liste / App zu finden. Ich werde mich hier speziell auf die App Kontakte beziehen.
Ich habe das Vorgehen auf SharePoint Online ausprobiert, jedoch sollten die genannten Optionen auch alle in den on-Premise Pendants zu finden sein. 

Option 1: URL der Liste unterhalb der Auswahl anzeigen

Abbildung 1: Sollte die gewünschte Auswahl in der Dropdown-Liste nicht vorhanden sein, reicht ein Klick auf den Link in der Beschreibung

Abbildung 1: Sollte die gewünschte Auswahl in der Dropdown-Liste nicht vorhanden sein, reicht ein Klick auf den Link in der Beschreibung

Die erste und wohl einfachste Lösung ist das Hinzufügen eines Kommentars zu der entsprechenden Column, welche in meinem Fall den Namen „Firma URL“ trägt.  Dieser Kommentar enthält in meinem Beispiel den Hinweis, dass man manuell einen Eintrag hinzufügen kann und den entsprechenden Link zur Liste, welche verwendet wird um die Lookup Column zu füllen. 
Hierzu gehen wir wie folgt vor: 

  • Zuerst öffnen wir unter Site Contents die Contacts

  • In der Action Bar der Contacts sehen wir nun das Menü List, welches wiederum die List Settings enthält, welche wir öffnen

  • Hier sind alle Columns zu sehen, welche Contacts beinhaltet. Wir suchen an dieser Stelle nach „Firma URL“

  • Hier können wir nun unter Additional Column Settings eine Description hinzufügen

  • In der Beschreibung sollte ein Link enthalten sein, welcher auf die Liste verweist, die unter Get informationen from gelistet wird

Abbildung 2: Einstellungen der Column

Abbildung 2: Einstellungen der Column

Sollte nun der benötigte Eintrag fehlen, kann der Benutzer – wenn ausreichende Berechtigungen auf die Liste bestehen – einen neuen Eintrag für die benötigte Firma anlegen. Um versehentliche Duplikate zu vermeiden, können Sie wie im Beitrag unter [1] vorgehen, um die Einzigartigkeit von Einträgen zu erzwingen. 

Option 2: Selbstgewählte Werte mittels Choice-Column

Abbildung 3: Beispiel für die Verwendung einer Choice-Column

Abbildung 3: Beispiel für die Verwendung einer Choice-Column

Auch diese Lösung bietet sich je nach Verwendungszweck an. Der offensichtliche Nachteil dieser Lösung ist, dass verwendete Werte, die unter Specify your own value angegeben werden, nicht gespeichert werden. Demnach muss die Liste, die von der Dropdown-Liste verwendet wird, regelmäßig geupdatet werden und es können dennoch zwischenzeitig inkonsistente Werte entstehen. 
Um ein solches Verhalten zu erreichen, kann man wie im Folgenden beschrieben vorgehen: 

  • In den List Settings (wie unter Option 1 beschrieben) erstellen wir eine neue Column vom Typ Choice (menu to choose from)

  • Zusätzlich zu den Standardeinstellungen aktivieren wir die Option Allow „Fill-In“ choices

Option 3: Eigene Auswahl mittels Managed Term Sets

Abbildung 4: Ansicht in der Liste. Durch einen Klick auf die Schaltfläche mit den beiden Tags öffnet sich das Managed Term Set

Abbildung 4: Ansicht in der Liste. Durch einen Klick auf die Schaltfläche mit den beiden Tags öffnet sich das Managed Term Set

Abbildung 5: Das Managed Term Set kann hier durch die Benutzer erweitert werden

Abbildung 5: Das Managed Term Set kann hier durch die Benutzer erweitert werden

In dieser letzten Möglichkeit wird ein Managed Term Set erstellt, welches im Nachhinein von den berechtigten Benutzern bearbeitet werden kann. Hierzu kann man wie unter [2] beschrieben vorgehen. 
Danach geht es wie folgt weiter: 

  • In den List Settings (in Option 1 beschrieben) erstellen wir eine neue Column vom Typ Managed Metadata

  • Im Unterpunkt Term Set Settings wählen wir nun das soeben erstellte Managed Term Set als Quelle aus.

Egal welche dieser Optionen man wählt, am Ende steht ein Konstrukt, welches den Usern erlaubt neue Werte, die in den Listen verwendet werden sollen, schnell einzupflegen. Da jede dieser drei Möglichkeiten verschiedene Vor- und Nachteile hat, muss zuvor sorgfältig abgewägt werden, ob und falls ja, welche der Optionen die Passende für die eigene Umgebung ist. 

[1] https://www.escde.net/blog/sharepoint-quick-tip-erzwingen-von-einzigartigen-listeneintrgen
[2] https://support.office.com/en-us/article/create-configure-and-manage-groups-and-term-sets-e0104c0b-5267-458e-9b6b-dc36eca0c261