Entitätssektionen
Entitätssektionen sind die Kacheln, die auf Vorgangs-, Personen-, Firmen- und Ressourcen-Seiten im Web Client angezeigt werden. Sie können die Sektionen entsprechend den Anforderungen der Benutzer in Ihren Geschäftsprozessen anordnen.
Das Grid ermöglicht es Ihnen, die Sektionen anzuordnen und zu gruppieren sowie ihren Anzeigezustand für die folgenden Seiten zu definieren:
- Vorgangsseite
- Vorgangserstellungsseite
- Personenseite
- Firmenseite
- Ressourcenseite
Die Konfiguration wird im Seitenanpassungsattribut sectionsGrid der jeweiligen Seite im JSON-Format gespeichert.
Standardmäßig werden alle Sektionen in einer einzelnen Spalte angezeigt und sind ausgeklappt.
Verfügbare Sektionen
Die verfügbaren Sektionen hängen vom jeweiligen Seitentyp ab.
| Seite | Verfügbare Sektionen |
|---|---|
| Vorgangserstellungsseite | Detaildaten, Kontakte, Kommentar |
| Vorgangsseite | Detaildaten, Kontakte, Verknüpfte Vorgänge, Verknüpfte Ressourcen, Historie, Attachments, Zeitbuchung, Kalender |
| Personenseite | Detaildaten, Vorgänge, Kommentare und Attachments, Verknüpfte Ressourcen, Verknüpfte Kontakte, Kalender, Historie |
| Firmenseite | Detaildaten, Personen, Vorgänge, Kommentare und Attachments, Verknüpfte Kontakte, Verknüpfte Ressourcen, Historie, Kalender |
| Ressourcenseite | Detaildaten, Kommentare und Attachments, Verknüpfte Ressourcen, Verknüpfte Kontakte, Verknüpfte Vorgänge, Kalender, Historie |
Grundlegende Aufgaben
Definnieren des Layouts
Einfache Layouts können auf der Seite Entitätssektionen definiert werden. Für jeden unterstützten Seitentyp gibt es einen eigenen Tab.
Gehen Sie wie folgt vor, um ein Layout zu definieren:
- Wählen Sie den gewünschten Tab aus (z. B. Vorgangsseite).
- Klicken Sie auf Neuer Container, um eine oder mehrere Sektionen hinzuzufügen.
- Definieren Sie den initialen Zustand jeder Sektion (Erweitert, Eingeklappt oder Versteckt).
- Klicken Sie auf Erstellen, um den Container zum Grid hinzuzufügen.
- Verschieben Sie den Container per Drag-and-drop an die gewünschte Position.
- Optional können Sie mit Nach links erweitern / Nach rechts erweitern festlegen, wie viele Spalten der Container einnehmen soll.
- Speichern Sie das Layout durch Klicken auf Layout speichern.
Container definieren sowohl die vertikale Reihenfolge als auch die horizontale Positionierung:
- Container, die nebeneinander platziert werden, erzeugen Spalten.
- Container, die untereinander platziert werden, erweitern die Seite nach unten.
- Wenn mehrere Sektionen zu einem Container hinzugefügt werden, teilen sie sich dieselbe Grid-Zelle.
Mehrspaltige Layouts werden nur angewendet, wenn der Bildschirm des Benutzers ausreichend Platz bietet. Auf kleinen Bildschirmen wird automatisch auf eine einspaltige Ansicht zurückgegriffen.
Sektionen, die nicht explizit konfiguriert sind, werden am Ende des Grids platziert.
Alle JSON-Validierungsmeldungen werden auf Englisch angezeigt.
Layouts, die von Rollen, Queues oder anderen Bedingungen abhängen, müssen über ein Skript definiert werden, siehe Arbeiten mit Skripten.
Die Sektion Zeitbuchung wird bis Version 6.19 ignoriert.
Erweiterte Aufgaben
Verstehen der Syntax der JSON-Konfiguration
Die im Feld Sektionskonfiguration gespeicherte JSON-Struktur entspricht der visuellen Grid-Konfiguration. Beim Definieren der Layout-Konfiguration gelten die folgenden allgemeinen Prinzipien:
- Die Konfiguration wird als JSON-Array gespeichert.
- Jeder Eintrag repräsentiert eine Sektion.
sectionIdidentifiziert die Sektion.rowdefiniert die vertikale Position (beginnend bei 1).coldefiniert die horizontale Position (beginnend bei 1).- Sektionen mit identischen
row- undcol-Werten teilen sich dieselbe Grid-Zelle. positionInCelldefiniert die Reihenfolge innerhalb einer gemeinsamen Zelle.- Gültige Zustände sind
expanded,collapsedundhidden.
Beispiel:
[
{"sectionId":"details","row":1,"col":1,"state":"expanded"},
{"sectionId":"contacts","row":2,"col":1,"state":"expanded"},
{"sectionId":"related_cases","row":2,"col":2,"state":"expanded"},
{"sectionId":"history","row":3,"col":1,"state":"collapsed"}
]
In den meisten Fällen ist eine manuelle Bearbeitung der JSON-Datei nicht erforderlich, da der Layout-Editor die Konfiguration automatisch erzeugt.
Arbeiten mit Skripten
Wenn das Layout von dynamischen Bedingungen wie Benutzerrollen, Queues oder Geschäftslogik abhängen soll, muss es über ein Skript vom Typ Seitenanpassung definiert werden.
Sie können im Feld Skript des Abschnitts Skript und Rohdaten ein Skript auswählen. Das Skript muss die Layout-Konfiguration in dem Format zurückgeben, das in Verstehen der Syntax der JSON-Konfiguration beschrieben ist.
Wenn ein Skript definiert ist, überschreibt es das im Grid definierte Layout. Wenn sowohl eine Grid-Konfiguration als auch ein Skript definiert sind, hat die Skriptkonfiguration Vorrang.
Sie können Mit Admin-Berechtigungen ausführen anhaken, wenn das Skript erweiterte Zugriffsrechte benötigt.
Beispiel: Anpassung des Layouts an die Rolle des Benutzers
Das folgende Beispiel zeigt, wie abhängig von einer Rolle unterschiedliche Layouts zurückgegeben werden können:
def role = roleService.getById('consultant');
def engineer = engineerService.getById(engineer_id);
if (getRolesForEngineer(engineer).contains(role)) {
return [config:"""[
{sectionId:details,row:1,col:1,state:expanded},
{sectionId:history,row:2,col:1,state:expanded}
]"""]
} else {
return [config:"""[
{sectionId:details,row:1,col:1,state:expanded},
{sectionId:attachments,row:2,col:1,state:collapsed}
]"""]
}