Trennen Sie eine benutzerdefinierte Tabelle nach Domänen
Möglicherweise müssen Sie benutzerdefinierte Tabellen in separaten Domänen erstellen. Dieses Thema behandelt sowohl das Verfahren als auch das Konzept hinter der Domänentrennung einer benutzerdefinierten Tabelle.
1. Erstellen Sie ein sys_domain-Feld
- Erstellen Sie ein neues Feld als Typ domain_id.
- Spaltenname: sys_domain
- Andere Attribute: Automatisch definiert
- Sys_domain_path wird automatisch erstellt.
Der Spaltenname sys_domain ist in Now Platformreserviert, was bedeutet, dass das System ihn erkennt und automatisch den entsprechenden Feldtyp und die entsprechenden Attribute für Sie anwendet. Diese automatische Konfiguration erstellt auch ein entsprechendes Feld sys_domain_path.
- Legen Sie den Spaltennamen auf
sys_domain fest, anstatt die Bezeichnung zu verwenden. - Domänentrennung ist nicht für jede Tabelle geeignet. Wenn eine Tabelle Teil der Basisinstanz ist und diese Tabelle kein sys_domain -Feld enthält, sollten Sie dies im Allgemeinen so belassen.
Ein Feld sys_domain wird automatisch erstellt, wenn Sie ein Feld vom Typ „domain_id“ mit dem Namen „sys_domain“ erstellen.
2. Fügen Sie eine Geschäftsregel hinzu, um die Domäne festzulegen
- Ohne Geschäftsregeln
- Die Domäne wird auf die aktuelle Domäne des Benutzers festgelegt, der den Datensatz erstellt.
- Mit Geschäftsregeln
- Die Domäne wird mithilfe von geskripteter Logik zugewiesen, in der Regel basierend auf dem Feld „Unternehmen“.
Zusätzlich zu einem sys_domain-Feldbenötigen benutzerdefinierte Tabellen eine Geschäftsregel ähnlich wie Domäne - Domäne festlegen - Aufgabe, um den Wert des Domänenfelds festzulegen. Darüber hinaus benötigen Sie Domäne – Standard – Aufgabe, das Datensätze ohne Domäne in die Standarddomäne verschiebt, wenn die erste Regel keine Domäne zuweist.
Überprüfen Sie in der Aufgabentabelle die Geschäftsregeln für die Domäne. Achten Sie besonders auf das Feld Reihenfolge. Die Priorität der Ausführung wird durch das Feld Reihenfolge von niedrig nach hoch angegeben.
Die erste ausgeführte Regel, Domäne – Domäne festlegen – Aufgabe, versucht, die Domäne des Datensatzes basierend auf der Domäne des Unternehmens des Datensatzes festzulegen.
Wenn die erste Regel keine geeignete Domäne findet, wird die zweite Regel Domäne – Standard – Aufgabeausgeführt. Diese Regel legt die Domäne des Datensatzes auf die Standarddomäne fest.
Wenn sich schließlich die Domäne eines Aufgabendatensatzes ändert, ändert die Geschäftsregel Domäne – Kaskadierende Domäne – Aufgabe die Domäne für alle Datensätze, die sich auf die Aufgabe beziehen, z. B. Workflows, Metriken, SLAs und Anhänge.
3. Fügen Sie eine Geschäftsregel hinzu, wenn Schritt 2 fehlgeschlagen ist
Wenn die anfängliche Geschäftsregel keine Domäne festlegen kann und die Domäne noch leer oder global ist, wird eine zweite Geschäftsregel ausgeführt. Diese Regel untersucht das Feld task_for, das auf dem Feld caller oder requested_for basiert. Diese Regel überprüft, ob Sie die Domäne des Datensatzes basierend auf der Domäne des Benutzers festlegen können. Wenn nicht, legt die Geschäftsregel die Domäne auf die Standarddomäne fest.
Es folgt ein Beispielskript für die Geschäftsregel:
/* essentially
If (task_for is set)
set the domain to the user's domain
ELSE
set the domain to the default domain
*/4. Domäne – kaskadierende Domäne – Aufgabe
Aufgaben können viele zugehörige Tabellen haben, die für Geschäftsziele zusammenarbeiten. Zu diesen zugehörigen Datensätzen gehören Workflow, SLA, Genehmigungen, Anhänge und E-Mail. Wenn sich die Domäne einer Aufgabe ändert, muss sich auch die Domäne der zugehörigen Datensätze ändern, damit sie für Benutzer in der neuen Domäne sichtbar bleiben.
Diese Kaskadenregel wird häufig ausgelöst, wenn Sie Datensätze aus der Standarddomäne löschen.
Die zugehörigen Datensätze für eine im Skript enthaltene kaskadierende Domäne werden ähnlich wie im folgenden Beispiel angezeigt:
/*
* Keep domains in sync w/related records for:
* workflow context
* workflow history
* approver tables and related workflows
* attachments
* emails
*/