Mithilfe des erweiterten Modus können Sie komplexere Regeln für intelligente Gruppen oder intelligente Standorte erstellen, mit logischen Operatoren ‘and’/‘or’(und/oder) verschachtelten Operationen und zusätzlichen Funktionen zur Datumsformatierung.
Der erweiterte Modus verwendet einen Texteditor, um code-ähnliche Abfragen zu erstellen.
Allgemeine Syntax
Eine einfache Regel sieht folgendermaßen aus:
user.firstname.in(“Peter”), wobei:
- user das Objekt (object) ist, auf das Du verweist
- firstname die Eigenschaft (property) ist (ein Platzhalter für das Nutzerprofilfeld)
- ist der Operator (operator) ist, den Du auf die Eigenschaft anwenden möchtest
- (“Peter”) eine Liste von Werten (values) ist, gegen die die Objekteigenschaft geprüft werden soll
Die allgemeine Syntaxregel lautet also wie folgt: object.property.operator(values)
Für Datumsprofilfelder unterstützen wir auch die Formatierung. Die Syntax wird wie object.property.format(format).operator(values) aussehen.
Die Details der Datumsformatierung werden weiter unten beschrieben.
Syntax für Dropdown-Profilfelder
Intelligente Gruppen und Standorte unterstützen auch Dropdown-Profilfelder. Im folgenden Beispiel verwenden wir den visuellen Editor, um einen der möglichen Werte für das Dropdown-Profilfeld „Funktion“ auszuwählen.
Wenn wir zum erweiterten Modus wechseln, sehen wir, dass die Auswahloption in eine Zahl übersetzt wurde. In diesem Beispiel „2“:
Die den Optionen der Dropdown-Profilfelder zugewiesenen Nummern stellen die Zeilennummer dar, in der sie erstellt wurden. Diese Nummer ändert sich nicht, wenn die Reihenfolge der Optionen geändert wird. Sie können die aktuelle Reihenfolge der Dropdown-Profilfelder überprüfen, indem Sie zu Einstellungen/Profilfelder navigieren und das gewünschte Feld bearbeiten.
Beachten Sie, dass Optionsnummern als Text in Anführungszeichen angegeben werden müssen.
Syntax für Datumsprofilfelder
Die erweiterte Modus unterstützt auch verschiedene Operationen für Datumsprofilfelder wie „am oder vor dem“, „am oder nach dem“, „zwischen“ und Datumsformatierung.
Um den Unterschied zwischen den verschiedenen Operationen zu verdeutlichen, betrachten wir Beispiele mit dem Profilfeld hire_date. Nehmen wir an, dieses Feld enthält Informationen darüber, wann ein Mitarbeiter eingestellt wurde.
Beachten Sie, dass bei Verwendung des erweiterten Modus die Daten im Format YYYY-MM-DD angezeigt werden. In diesem Format steht YYYY für das Jahr, MM für den Monat und DD für den Tag. Sowohl MM als auch DD enthalten, wenn nötig, eine führende 0. Zum Beispiel würde der 7. Januar 2025 als „2025-01-07“ geschrieben werden.
Ist/Ist nicht
Die Funktion ist/ist nicht prüft, ob der Wert eines Datumsprofilfelds mit den angegebenen Argumenten übereinstimmt. Zum Beispiel schließt user.hire_date.is(„2025-03-31“, „2024-12-01“) Nutzer ein, deren Einstellungsdatum genau der 31. März 2025 oder der 1. Dezember 2024 ist. Im Gegensatz dazu schließt isNot Nutzer aus, die an diesen bestimmten Daten eingestellt wurden.
Am oder vor dem
Die Syntax user.hire_date.onOrBefore(„2025-03-31“) kann verwendet werden, um alle Nutzer zu erfassen, deren Einstellungsdatum vor oder an einem bestimmten Datum liegt. In diesem Beispiel bezieht sich „hire_date“ auf das Datumsprofilfeld, ‚onOrBefore‘ ist die Operation und „2025-03-31“ ist das Datumsargument. Diese spezielle Funktion erfasst alle Nutzer, die am oder vor dem 31. März 2025 eingestellt wurden.
Am oder nach dem
Die Syntax user.hire_date.onOrAfter(„2025-03-31“) kann verwendet werden, um alle Nutzer zu erfassen, deren Einstellungsdatum nach oder an einem bestimmten Datum liegt. In diesem Beispiel bezieht sich „hire_date“ auf das Datumsprofilfeld, ‚onOrAfter‘ ist die Operation, und „2025-03-31“ ist das Datumsargument. Diese spezielle Funktion erfasst alle Benutzer, die am oder nach dem 31. März 2025 eingestellt wurden.
Zwischen
Die Syntax „user.hire_date.between(“2025-03-01„, “2025-03-31„)“ kann verwendet werden, um alle Nutzer zu finden, deren Datumsprofilfeldwert in einen bestimmten Datumsbereich fällt. In diesem Beispiel werden alle Nutzer erfasst, deren Einstellungsdatum am oder nach dem 1. März 2025 und am oder vor dem 31. März 2025 liegt. Mit dieser Funktion werden also alle Nutzer gefunden, die im März 2025 eingestellt wurden.
Datumsformatierung
Der erweiterte Modus ermöglicht eine flexible Datumsformatierung, die besonders nützlich ist, wenn Sie nur eine der Komponenten des Datumsfeldes verwenden müssen. Zum Beispiel gibt die Syntax user.hire_date.format("yyyy-MM").between("2025-01", "2025-03")
- format("yyyy-MM") gibt das Format für das Profilfeld "hire_date" an
- between("2025-01", "2025-03") ist eine Funktion, die 2 Argumente benötigt, die im gleichen Format wie in format("yyyy-MM") angegeben werden müssen.
Diese Regel findet alle Nutzer, die zwischen Januar und März 2025 eingestellt wurden, unabhängig vom genauen Tag der Einstellung.
Die folgenden Formate sind für jedes Datumsprofilfeld verfügbar:
- yyyy-MM-dd: Das vollständige Datum einschließlich Jahr, Monat und Tag, mit führenden Nullen.
- yyyy: Das Jahr.
- yyyy-MM: Das Jahr und der Monat.
- yyyy-ww: Das Jahr und die Wochennummer.
- ww: Die Wochennummer für ein bestimmtes Datum, mit einer führenden 0.
- MM: Die Monatsnummer, mit einer führenden 0.
- MM-dd: Der Monat und der Tag, mit führenden 0s.
- dd: Die Tageskomponente eines Datumsprofilfeldes, mit einer führenden 0.Between
Die Datumsformatierung kann für alle datumsbezogenen Operationen wie is, isNot, onOrBefore, onOrAfter und between verwendet werden.
Das Muster ww steht für die ISO-Wochennummer, die dem ISO-8601-Standard entspricht. Diesem Standard zufolge
- Eine Woche beginnt am Montag
- Die erste Woche des Jahres (Woche 01) ist die Woche, die den ersten Donnerstag des Jahres enthält
- Fällt der 1. Januar auf einen Montag, Dienstag, Mittwoch oder Donnerstag, gehört er zur Woche 1 des neuen Jahres
- Fällt der 1. Januar auf einen Freitag, Samstag oder Sonntag, gehört er zur letzten Woche des vergangenen Jahres.
Unterstützte Operatoren & Verschachtelung
Wenn Sie Regeln miteinander kombinieren möchten, fügen Sie && (für und) oder || (für oder) zwischen den Regeln ein. Beispiele:
-
user.firstname.in(“Peter”)
&&user.lastname.in(“Mustermann”) trifft auf alle Nutzer zu, deren Name Peter Mustermann lautet -
user.firstname.in(“Peter”)
||user.lastname.in(“Mustermann”) trifft auf alle Peter und alle Mustermanns zu
Im erweiterten Modus können Sie Regeln auch verschachteln, um komplexere Regeln zu erstellen. Beispiel:
-
user.firstname.in(“Peter”)
||user.lastname.in(“Mustermann”) )&&user.department.in(“Verkauf”) trifft auf alle Peter und alle Mustermanns zu, die Mitglieder der Verkaufsabteilung sind
Hinweis: Wenn Ihre erweiterten Regeln Syntaxelemente verwenden, die vom visuellen Editor nicht unterstützt werden, können Sie nicht zum visuellen Editor zurückkehren.
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.