Rollen - benutzerspezifische Sichten auf ein Datenblatt

Einsatzzweck für Rollen

Die Informationen, die ein Benutzer auf einem Datenblatt sieht, werden vom aktuellen Layout des Datenblatts bestimmt. Der Modellierer kann unterschiedliche Layouts mit einer unterschiedlichen Menge an sichtbaren Feldern erstellen, zwischen denen Benutzer mit Admin-Rechten wechseln können: Jeder Wechsel wirkt sich jedoch immer auf die Sicht aller Benutzer auf ein Datenblatt aus. Möchten wir erreichen, dass unterschiedliche Benutzer / Benutzergruppen auch unterschiedliche Felder zur selben Zeit sehen können, so können wir hierfür das Rollenkonzept verwenden. Ein Benutzer nimmt dabei eine bestimmte "Rolle" (z. B. die des Einkaufs) ein und sieht das Datenblatt deshalb mit einem speziell für diese Rolle erstellten Layout.

Wie bekommt ein Benutzer eine Rolle zugewiesen?

Die Zuweisung von Benutzerrollen ist eine typische Aufgabe für das Rechtemanagement einer Anwendung. Da die Ermittlung von Rechten auf einem Element bei REWOO Scope indirekt über das Beziehungsnetzwerk eines Benutzers gesteuert wird, werden über denselben Mechanismus auch die jeweiligen Benutzer-Rollen automatisch ermittelt. Bekommt beispielsweise ein Benutzer über eine Beziehung vom Typ "Einkauf2Bestellung" ein Lese-Recht auf eine Bestellung, so wird davon ausgegangen, dass er diese aus der Sicht des Einkäufers betrachtet. Kommt er darüber hinaus noch über andere Beziehungspfade zum betreffenden Element, so bekommt er weitere Rollen zugewiesen, aus denen er bei der Betrachtung des Datenblatts frei wählen kann.

Modellierungsbeispiel

Anlegen unterschiedlicher Layouts

Im Designer müssen zunächst die unterschiedlichen Layouts für die verschiedenen Rollen definiert werden.

In unserem Beispiel soll ein Artikel mit den unterschiedlichen Rollen "Mitarbeiter" und "Verwaltung" betrachtet werden. Hierfür werden die folgenden Layouts innerhalb des Aspekttyps "Artikel" definiert:

Das Layout "Mitarbeiter" welches einige Standardfelder enthält (hier: der Name, Kategorie, Hersteller, Lieferant und Artikelnummer des Artikels)

Definition Layout Mitarbeiter

Das Layout "Verwaltung", welches zusätzlich den Einkaufspreis und den Verkaufspreis enthält

Definition Layout Verwaltung
Anlegen der Rollendefinitionen

Anschließend müssen die unterschiedlichen Rollen definiert werden. Hierzu wird im Registerreiter "Rollen" im Datenblattdesigner zunächst ein sogenanntes Rollen-Set angelegt, welches dann die eigentlichen Rollen beherbergt. Ein Typ kann beliebig viele unterschiedliche Rollensets aufweisen, wobei ein Element immer nur ein Rollenset zu einem Zeitpunkt verwenden kann. Nach dem Anlegen des Rollensets müssen für die neuen Rollen jeweils ein zuvor angelegtes Layout mit einem oder mehreren Beziehungstypen in Verbindung gebracht werden. Die Zuordnung wird dann noch mit einem Namen versehen, der dem Benutzer später anzeigt, unter welcher "Rolle" er gerade das Datenblatt betrachtet.

Das Beispiel definiert ein Rollen-Set namens "artikel". Innerhalb dieser Struktur werden die beiden Rollen "Ansicht Mitarbeiter" und "Ansicht Verwaltung" erstellt. Jede neue Rolle weist einem (im vorherigen Schritt angelegten) Layout einen entsprechenden Beziehungstypen zu. Das Anlegen der Rollen-Sets erfolgt über die "Plus"-Schaltfläche. Zugehörige Rollen können anschließend über den "Speichern"-Button erstellt werden.

Definition der Rollen
Anschalten der rollenbasierten Layouts am Element

Um rollenbasierte Layouts für ein Element zu aktivieren, muss die entsprechende Option im "Layout ändern..."-Dialog gesetzt sein. Hier wird auch das zu verwendende Rollen-Set ausgewählt. Der Benutzer muss Admin-Rechte auf dem Element besitzen, um diese Änderung durchzuführen. Der folgende Screenshot zeigt dies für das Element "Stromkabel 3m" in unserem Beispiel:

Rollenbasierte Layouts aktivieren
Zuweisen der Rollen

Damit die rollenbasierten Layouts für die jeweiligen Benutzer angezeigt werden, müssen diese das Element über eine Beziehung vom entsprechenden Typ erreichen. Im Beispiel wurden hierzu je eine Beziehung vom Typ "alleRead" (für den Mitarbeiter Max Mustermann) und eine Beziehung vom Typ "stammdatenverwaltung" erstellt (für Gabi Geschäftsführung). Der Dialog zur Anzeige der beteiligten Benutzer gibt auch Aufschluss darüber, welcher Benutzer mit welcher Rolle das Datenblatt angezeigt bekommt.

Anzeige der Benutzer und ihrer Rollen
Anzeige des Datenblatts

Öffnet nun ein entsprechender Benutzer Scope, sieht er das Element gemäß seiner durch das Beziehungsnetz ermittelten Rolle. In unserem Fall sieht Gabi Geschäftsführung also Layouts für die Verwaltung und für die Mitarbeiter, Max Mustermann hingegen bekommt nur das Layout Mitarbeiter angezeigt.

Auswahl einer Rolle