Bei vielen Firmen werden für verschiedene Anwendungsbereiche Journale geführt: Störungsmeldungen werden geloggt, externe Besucherinnen und Besucher vermerkt oder über besondere Vorkommnisse wird ein Journal geführt. Durch die vielen Ereignisse kommen im Jahr schnell mal Journaleinträge im drei- bis vierstelligen Bereich zusammen.
Die Anforderungen an das Journal sind meist ähnlich:
- Einfache und unkomplizierte Erfassung
- Schnelle Ladezeiten, gute Performance
- Einfache Schichtübergabe
- Aktuellste Ereignisse sollen zuerst angezeigt werden
- Sortier-, Filter- und Suchfunktionalitäten
- Gut überschaubar
- Auswertbar / Excel Export
- Zeitgesteuerte Berechtigungen
Alle diese Anforderungen sind mit SharePoint Listen und entsprechend formatierten Views gut, schnell und schön lösbar. Mit der Excel Export-Funktion lässt auch das Reporting kaum Wünsche offen.
Eine besondere Anforderung hingegen ist die zeitgesteuerte Bearbeitungsberechtigung. Die Anforderung ist, dass ich als Erfasser eines Journaleintrages den Eintrag erstellen und bei Bedarf innerhalb von einer Stunde noch bearbeiten darf. Danach wird der Eintrag gesperrt und steht nur noch im Lesemodus zur Verfügung.
Meine Teamkollegen dürfen meine Journaleinträge stets nur lesen, jedoch selber Journaleinträge erfassen und bei Bedarf ebenfalls innerhalb von einer Stunde anpassen.
Die eine Lösungsidee wäre, mittels Power Automate die nötigen Item Level Permissions zu vergeben, sodass der Flow nach Ablauf der 60 Minuten die Schreibrechte des Erfassers entzieht. Item Level Permissions bei vielen Tausend Einträgen kann dazu führen, dass die Liste extrem langsam und träge wird (-> Nummer 5 aus den 10 Power Platform Fettnäpfchen).
Eine viel einfachere Lösung bieten die erweiterten Einstellungen sowie die Überprüfungseinstellungen von SharePoint Listen.
Als Erstes muss man die erweiterten Einstellungen öffnen…
…und die Parameter bei Lesezugriff sowie Erstellungs- und Bearbeitungszugriff anpassen.
Diese Anpassungen bewirken, dass berechtigte Personen die Einträge lesen, aber nicht bearbeiten können. Der Ersteller des Eintrages hingegen kann einen Eintrag erstellen und vorerst auch noch editieren.
In den Überprüfungseinstellungen wird nun das Delta zwischen dem Erstellungs- und dem Änderungs-Zeitpunkt geprüft.
- Mit der Formel [=Modified-1<Created] kann der Ersteller den Eintrag innerhalb von einem Tag editieren.
- Mit der Formel [=Modified-0.042<Created] kann der Eintrag innerhalb von 60 Minuten bearbeitet werden und wird danach gesperrt.
Wenn man nach Ablauf der Bearbeitungsfrist versucht den Eintrag zu editieren, kommt die Benutzermeldung: Eintrag darf nicht mehr bearbeitet werden!
Das finale Journal könnte ähnlich wie das Beispiel hier aussehen:
Danke Flävu!
Wiedermal es super Artikel.