Referentielle Listen in Sharepoint 2010

Sharepoint 2010 bringt eine langersehnte Neuerung mit: referentielle Listen mit der Option der Löschweitergabe bzw. Löschbeschränkung. Dadurch wird es möglich abhängige Listen zu definieren mit ein 1:n Beziehung. Die Funktion der referentiellen Integrität wird durch eine Spalte vom Typ Nachschlagen realisiert. Die referentielle Integrität, sprich die Löschweitergabe bzw Löschbeschränkung, kann sich dabei durchaus über mehrere in Beziehung stehende Tabellen hinweg strecken.

 

referentielle Integrität

 

Dazu ein kleines Beispiel:

Mitarbeiter werden in Abteilungen verwaltet und können in Sharepoint ihren Urlaub einbuchen. Dazu werden drei Listen benötigt: Mitarbeiter, Abteilungen und ein Urlaubskalender. 

image

 

Die Liste Abteilungen enthält 3 Werte…

image

.. die Liste der Mitarbeiter hat eine zusätzliche Nachschlagespalte, die auf die Abteilungen referenziert Außerdem wurde bei der Spalte die Löschweitergabe (siehe Bild oben) aktiviert..

 

Mitarbeiterliste

 

Der Urlaubskalender enthält nun ebenfalls eine Nachschlagespalte, die Werte aus der Liste der Mitarbeiter (Nachname) nachschlägt. Die Löschweitergabe wurde hier ebenso aktiviert.

 

Abteilungsliste

 

Nun die Probe aufs Exempel. Die Abteilung IT wird aus irgendwelchen Gründen aufgelöst. Daher sollten alle Mitarbeiter aus IT aus der Mitarbeiterliste und ebenso deren Urlaubseinträge verschwinden.

 

Löschen

..und es funktioniert… Alle Einträge die von IT Mitarbeitern erstellt wurden sind gelöscht.

 

Eregbnis

 

Natürlich sollte man sich es gut überlegen, ob man die Listeneinträge tatsächlich automatisch löschen lässt. Vielmehr bevorzuge ich die Einstellung, dass ein Löschen verhindert wird, da noch Einträge in anderen Listen vorhanden.

Übrigens: Nicht mit jeder Liste funktioniert das: So zum Beispiel lässt sich ein Eintrag aus einer regulären Kalenderliste nicht automatisch durch ref. Integrität löschen. 

Author: Fumus

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert