Teil 2: Gotcha, SharePoint! Nur 8 Nachschlagespalten in Listenansichten

Teil 2: Gotcha, SharePoint! Nur 8 Nachschlagespalten in Listenansichten

Teil 2: Gotcha, SharePoint! Nur 8 Nachschlagespalten in Listenansichten

Neben der in Teil 1 vorgestellten Fehlermeldung gibt es noch ein weitere, welche beim Aufruf von Listenansichten auftreten kann:

„Diese Ansicht kann nicht angezeigt werden, weil die Anzahl der darin enthaltenen Nachschlage- und Worflowstatusspalten den durch den Administrator durchgesetzten Schwellenwert (8) übersteigt.“

Auch hier ist der Grund für diesen festen Schwellenwert, dass mögliche Performance Engpässe von Beginn an vermieden werden. Wird die Spaltenanzahl über den Schwellenwert erhöht, steigt die Prozessorauslastung des SQL Servers exponentiell an – da für jede Nachschlagespalte in einer Ansicht eine JOIN Operation zur Abfrage hinzugefügt wird.

Dies betrifft alle Arten von Nachschlagespalten:

  • Managed Metadata
  • Personen und Gruppen (inkl. „Erstellt von“ und „Geändert von“)
  • Workflow Status

Analog zu den 5.000 Listeneinträgen verhält sich auch die Darstellung des Fehlers für User und Administratoren unterschiedlich. Ein Farmadministrator kann eine Listenansicht mit mehr als 8 dieser speziellen Spaltentypen erstellen und dann die Ansicht problemlos aufrufen, während ein User die oben genannte Fehlermeldung erhält. Aus diesem Grund ist es auch hier ratsam auf einen separaten Test-Account ohne Farmadministratorberechtigungen beim Testen von Ansichten zurückzugreifen.

Nicht nur in den Listenansichten tritt die Fehlermeldung auf. Auch bei clientseitigen Listenzugriffen, etwa durch das Client Object Model oder Webservices tritt die Fehlermeldung auf. Die Synchronisierung mit Office365 und SharePoint Workspace bei einer Liste mit mehr als 8 Nachschlagespalten funktioniert generell nicht.

 

Wie kann ich hierbei die Fehlermeldung umgehen?

  1. Im SharePoint On-Premise besteht die Möglichkeit den Schwellenwert zu erhöhen. Dies geschieht über die Zentraladministration für die jeweilige Web-Application unter dem Menü „Allgemeine Einstellungen“ im Menüpunkt „Ressourcensteuerung“. Dort kann im Feld „Schwellenwert für den Listenansicht-Nachschlagevorgang“ der gewünschte Wert eingetragen werden.
    Der Einsatz dieses Lösungsweges sollte gut überlegt sein. Wie oben schon gesagt erhöht sich die Auslastung auf die zugrunde liegenden SQL Server CPU Leistung exponentiell mit jeder weiteren Nachschlagespalte, die pro Listenansicht angezeigt werden soll. Und diese Option steht für SharePoint Online nicht zur Verfügung.
  2. Die Reduzierung der in einer Listenansicht angezeigten Nachschlagespalten stellt mit den einfachsten Weg dar, den Fehler zu vermeiden. Diese Einstellung kann schnell vorgenommen und getestet werden.
    Problematisch wird es nur, wenn dadurch die Ansicht mit allen gewünschten Daten nicht mehr zur Verfügung gestellt werden kann.
  3. Um den Nachteil aus 2. und auch die Synchronisierungsprobleme bei Office365 und SharePoint Workspace zu beheben, bietet es sich an, den Verweis über die Nachschlagespalten auf andere Listen über einen anderen Mechanismus zu realisieren. So können z.B. IDs aus der vermeintlichen Nachschlageliste in einer Spalte vom Typ Zahl als Fremdschlüssel gespeichert werden. Dadurch entfallen die Vorteile der Nachschlagespalte, wie Anzeige anderer Spalten aus der Nachschlagespalte und deren Aktualität.
    Darüber hinaus muss die Speicherung dieser Werte über einen eigenen programmatischen Mechanismus realisiert werden, wie z.B. die Erweiterung der Formularspeicherung mit dem Client Object Model oder die Nutzung von Workflows bzw. Event Receivern im Hintergrund des Speicherns.
    Dafür erhält man Listen, bei deren Nutzung man keine Sorgen haben muss, dass diese nicht synchronisiert werden können, oder auf deren Daten man problemlos clientseitig zugreifen kann.

Eine klare Empfehlung lässt sich für einen Standardfall aus den genannten Lösungsvarianten nicht ableiten.  Die Entscheidung hängt hier ebenfalls vom Einsatzzweck, den Hardware Ressourcen und der eingesetzten SharePoint Version ab.

Während mit der SharePoint On-Premise Lösung alle drei Punkte umgesetzt werden können, bietet sich beim Einsatz von Office365 die Lösung 3 an. Obwohl diese den größten Umsetzungsaufwand beinhaltet, bietet diese doch die größte Robustheit im Hinblick auf die Anzeige der Listenansicht und die Synchronisierung.

Schreibe einen Kommentar

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

Time limit is exhausted. Please reload the CAPTCHA.