Strukturformeln | | |
if(condition,then) | Wenn die Bedingung wahr ist, dann liefere then Wert | if(1==1, "wahr") liefert “wahr” |
ifElse(condition,then,else) | Wenn die Bedingung wahr ist, dann liefere then Wert, ansonsten else Wert | ifElse(1==1, "wahr", "falsch") liefert “wahr”, ifElse(1==2, "wahr", "falsch") liefert “falsch” |
Logische Operatoren | | |
== | Gleich | 1 == 2 liefert false |
&& | Und | 1 == 1 && 2 == 2 liefert true |
| | | Oder | 1 == 1 | | 2 == 3 liefert true |
< | Kleiner als | 1 < 2 liefert true |
> | Größer als | 1 > 2 liefert false |
!= | Ungleich | 1 != 2 liefert true |
<= | Kleiner gleich | 1 <= 2 liefert true |
>= | Größer gleich | 1 >= 2 liefert false |
Rechensymbole | | |
+ | Plus, Addition, Verbindung von zwei Texten | 1 + 2 liefert 3, "Hallo " + "Welt" liefert “Hallo Welt” |
- | Minus, Subtraktion | 1 - 2 liefert -1 |
* | Mal, Multiplikation, Wiederholung von Text | 2 * 3 liefert 6, "Hallo " * 3 liefert “Hallo Hallo Hallo “ |
/ | Geteilt, Division | 6 / 2 liefert 3 |
% | Modulo, Restwert einer Teilung | 5 % 2 liefert 1 |
Mathematische Funktionen | | |
ceil(number) | Aufrunden | ceil(3.1) liefert 4 |
floor(number) | Abrunden | floor(3.9) liefert 3 |
round(number) | Runden | round(3.499) liefert 3, round(3.511) liefert 4 |
abs(number) | Betragsfunktion | abs(-4) liefert 4 |
decimalRound(number,decimalPlaces) | Runden auf bestimmte Anzahl von Nachkommastellen | decimalRound(3.1789,2) liefert 3.19, decimalRound(3.2911,3) liefert 3.291 |
Datumsformeln | | (Beispiel Berechnungszeitpunkt: 15.06.2021 (Dienstag) um 8:00 Uhr) |
formatDate(date, "format") | Formatiert ein Datum (Bezug auf Baustein Datum) in die gewählte Formatierung (s. Formatierungsmöglichkeiten Datum) | formatDate(today(), "dd.MM.yyyy") liefert 15.06.2021 |
date(year,month,day) | Intern nutzbares Datum aus gegebenem Jahr, Monat und Tag | date(2021,06,15) liefert 15.06.2021 00:00:00.000000 |
parseDate(text) | Erstellt Datum aus Text im Format “dd.mm.yy” oder “dd.mm.yyyy” | Aufruf von “parseDate(15.06.2021)” liefert 15.06.2021 00:00:00.000000 |
tryParseDate(value) | Versucht ein Datum aus value zu machen. Tritt ein Fehler auf wird defaultDateTime zurück gegeben | tryParseDate(\"11.11.24\") liefert 2024-11-11 00:00:00.000; tryParseDate(1k.02.24) liefert 1970-01-01 00:00:00.000 |
defaultDateTime | Gibt das Datum 00:00 01.01.1970. Dieses Datum wird nicht angezeigt | defaultDateTime liefert 1970-01-01 00:00:00.000 |
today() | aktuelles Datum | 15.06.2021 00:00:00.000000 |
now() | aktueller Zeitpunkt | 15.06.2021 08:00:00.000000 |
calendarWeek(date) | Kalenderwoche des gegebenen Datums | 24 |
currentWeek | aktuelle Kalenderwoche | 2021-W24 |
startOfWeek() , endOfWeek() | Beginn/Ende der aktuellen Kalenderwoche | 14.06.2021 00:00:00.000000, 20.06.2021 00:00:00.000000 |
currentMonth | Aktueller Monat | 2021-06 |
startOfMonth() , endOfMonth() | Beginn/Ende des aktuellen Monats | 01.04.2021 00:00:00.000000, 30.06.2021 00:00:00.000000 |
startOfQuarter() , endOfQuarter() | Beginn des aktuellen Quartals | 01.04.2021 00:00:00.000000, 30.06.2021 00:00:00.000000 |
startOfYear() ,endOfYear() | Beginn/Ende des aktuelles Jahres | 01.01.2021 00:00:00.000000, 31.12.2021 00:00:00.000000 |
datesBetween(date,date,[optionen]) | Daten zwischen den zwei gegebenen Daten | [15.06.2021, 16.06.2021, 17.06.2021, 18.06.2021] Bei Angabe vom 18.06.2021 als zweites Datum |
addMinutes(date,minutes) , subtractMinutes(date,minutes) | Minuten addiert/subtrahiert auf einen Zeitpunkt | Aufruf von “addMinutes(today(),1)” ergibt 15.06.2021 8:01:00.000000 |
addHours(date,hours) , subtractHours(date,hours) | Stunden addiert/subtrahiert auf einen Zeitpunkt | Aufruf von “addHours(today(),1)” ergibt 15.06.2021 9:00:00.000000 |
addDays(date, days) , subtractDays(date, days) | Tage addiert/subtrahiert auf einen Zeitpunkt | Aufruf von “addDays(today(),1)” ergibt 16.06.2021 8:00:00.000000 |
addWeeks(date, weeks) , subtractWeeks(date, weeks) | Monate addiert/subtrahiert auf einen Zeitpunkt | Aufruf von “addWeeks(today(),1)” ergibt 22.06.2021 8:00:00.000000 |
addMonths(date, months) , subtractMonths(date, months) | Monate addiert/subtrahiert auf einen Zeitpunkt | Aufruf von “addMonths(today(),1)” ergibt 15.07.2021 8:00:00.000000 |
Textkonstanten/Daten vom aktuellen Nutzer | | |
currentUserName | Name des aktuellen Benutzers | “Max Mustermann” |
currentUserId | ID des aktuellen Benutzers | “123abc123abc123abc123abc1231” |
currentUserEmail | E-Mail des aktuellen Benutzers | “max.mustermann@mail.de” |
currentUserTeamName | Name des aktiven Teams des aktuellen Benutzers | “Team 1” |
currentUserTeamId | ID des aktiven Teams des aktuellen Benutzers | “123ab123” |
currentUserRoleName | Name der aktiven Rolle des aktuellen Benutzers | “Admin” |
currentUserRoleId | ID der aktiven Rolle des aktuellen Benutzers | “1234abcd” |
Textformeln | | |
toText(value) | Wandelt einen nicht textuellen Wert in eine textuelle Darstellung des Wertes um | toText(123) liefert “123” |
toNumber(value) | Wandelt einen Text in eine numerische Darstellung des Wertes um | toNumber("123") liefert 123 |
contains(text,sub) | Gibt Ja/Nein abhängig davon zurück, ob der Text sub im Text text vorhanden ist. | contains("Hallo Welt","Welt") liefert true |
textLength(value) | Gibt die Textlänge inklusive Leerzeichen aus | textLength("Hallo Welt") liefert 10 |
substring(text,start, [end]) | Liefert den Ausschnitt aus text, welcher an Zeichen start - 1 beginnt und an end endet. Wird end nicht angegeben, so wird der Text ab start bis zum Ende zurückgegeben. | substring("Hallo Welt", 2, 5) liefert “llo” |
firstLetters(value,count) | Liefert die ersten count Zeichen vom Anfang des Textes | firstLetters("Hallo Welt",5) liefert “Hallo” |
lastLetters(value,count) | Liefert die letzten count Zeichen vom Ende des Textes | lastLetters("Hallo Welt",4) liefert “Welt” |
firstWords(value,count) | Liefert die ersten count Wörter vom Anfang des Textes. Als Wörter zählen solche, die durch nur ein Leerzeichen getrennt sind. | firstWords("Hallo du große Welt",2) liefert “Hallo du”, firstWords("Hallo, du große Welt",2) liefert “Hallo du” |
lastWords(value,count) | Liefert die ersten count Wörter vom Anfang des Textes. Als Wörter zählen solche, die durch nur ein Leerzeichen getrennt sind. | Der Stopp der Zählung erfolgt nach einem Leerzeichen und nur nach einem Leerzeichen |
getFirst(regexpText,text,[groupIndexOrName]) | Sucht in text nach dem ersten Treffer von regexText. Mit groupIndexOrName kann eine spezifische Capture Group zurückgegeben werden, andernfalls wird der gesamte Treffer zurückgegeben. Wenn kein Treffer gefunden wird, gibt es einen leeren String zurück. | getFirst("xy", "xyz") liefert “xy”; getFirst("(\d+)", "abc 123 def", 1) liefert “123”; getFirst("(?<letters>[a-z]+)", "abc123", "letters") liefert “abc”. |
getAll(regexpText,text) | Durchsucht text nach allen Vorkommen von regexText und gibt eine Liste von Maps zurück, in denen der Key die jeweilige Capture Group repräsentiert. | getAll(\"([a-z]+)(\\d+)\", \"abc123abc123\") liefert "[{full: abc123, 1: abc, 2: 123}, {full: abc123, 1: abc, 2: 123}]" |
replace(text,find,sub) | Ersetzt jedes vorkommen des Textes find im Text text mit sub | replace("Hallo Welt", "Welt", "Mond") liefert “Hallo Mond” |
replaceRegExp(text,regexpText,sub) | Ersetzt jedes vorkommen von regexpText in text mit sub | replaceRegExp("xyz 123 xyz", "xyz", "zxy") liefert “zxy 123 zxy” |
formatNumber(number, decimalCount, thousandSeparator) | Formatiert die Nummer zu gewünschtem Format | formatNumber(1000,2,true) das Ergebnis 1.000,00 |
randomString(length) | Erzeugt eine zufällige Zeichenkette (bestehend aus Kleinbuchstaben und Zahlen) mit gegebener Länge | randomString(10) könnte z.B. “f49gf623bk” liefern |
toUpperCase(text) | Konvertiert den gegebenen Text auf Großbuchstaben | toUpperCase("Hallo Welt") liefert “HALLO WELT” |
toLowerCase(text) | Konvertiert den gegebenen Text auf Kleinbuchstaben | toLowerCase("Hallo Welt") liefert “hallo welt” |
parseJson(text) | Konvertiert einen Json-String zu einem Json-Objekt | parseJson("{id:123}") liefert {id:123} |
jsonEncode(value) | Wandelt value in einen JSON String um | jsonEncode({"text": "foo", "value": 2}) liefert {“text”:”foo”,”value”:2} |
basicAuth(username, password) | Kodiert Nutzername und Passwort | basicAuth("Univelop","uni123!") liefert “VW5pdmVsb3A6dW5pMTIzIQ==” |
base64Encode(text) | Kodiert den gegebenen Text mithilfe des base64 Verfahrens | base64Encode("Hallo, Welt!") liefert “SGFsbG8sIFdlbHQh” |
base64Decode(text) | Dekodiert einen mit dem base64 kodierten Text zurück in den Ursprung | base64Decode("SGFsbG8sIFdlbHQh") liefert “Hallo, Welt!” |
toCharCode(text) | Wandelt das gegebene Zeichen in dessen numerischen Zeichencode um | toCharCode("a") liefert “97” |
fromCharCode(number) | Wandelt den gegebenen numerischen Zeichencode in dessen repräsentierendes Zeichen um | fromCharCode(97) liefert “a” |
toRadixString(number, number) | Wandelt die gegebene Zahl in die Darstellung des entsprechenden Zahlensystems um (2: Binär, 16: Hexadezimal, 8: Oktal, 36: Base36) | toRadixString(10,2) liefert “1010” |
fromRadixString(text, number) | Wandelt die gegebene Zahl des entsprechenden Zahlensystems zurück in den Ursprung um | fromRadixString("1010",2) liefert 10 |
trim(text) | Entfernt führende oder nachgestellte Leerzeichen von text | trim(" Hallo Welt ") liefert “Hallo Welt” |
Listenformeln | | |
listToText(list, separator) | Listet alle Elemente einer Liste auf, getrennt durch einen optionalen Separator (Wenn nicht angegeben, wird standardmäßig , genommen). | joinLists([1,2,3], '--') liefert 1–2–3 |
addToList(list, element) | Fügt einer Liste ein Element hinten an | addToList([1,2], 3) liefert [1,2,3] |
removeFromList(list, element) | Entfernt ein Element aus einer Liste | joinLists([1,2,3], 3) liefert [1,2] |
joinLists(list, list2) | Verbindet zwei Listen, in dem die zweite Liste der ersten angehängt wird | joinLists([1,2], [3,4]) liefert [1,2,3,4] |
count(list) | Zählt die Elemente einer Liste/eines dynamischen Wertes | count([1,2,4]) liefert 3 |
parseList(valie) | Parst einen String in eine Liste, getrennt durch einen optionalen Separator. | parseList("1; 2; 3", "; ") liefert [1, 2, 3] |
listIntersection(list1, list2) | Gibt die Schnittmenge zweier Listen zurück. | listIntersection([1, 2], [2, 3]) liefer[2] |
listUnion(list1, list2) | Gibt die Vereinigung zweier Listen zurück. | listUnion([1, 2], [2, 3]) liefert [1, 2, 3] |
listDifference(list1, list2) | Gibt die Differenz zweier Listen zurück. | listDifference([1, 2, 3], [2, 3]) liefert [1] |
listSymmetricDifference(list1, list2) | Gibt die symmetrische Differenz zweier Listen zurück | listSymmetricDifference([1, 2], [2, 3]) liefert [1, 3] |
listEquals(list1, list2) | Gibt Ja/Nein abhängig davon zurück, ob zwei Listen gleich sind | listEquals([1, 2], [1, 2]) liefert true |
get(map/list, key, [defaultValue]) | Holt den Wert von key aus map/list. defaultValue kann optional angegeben werden und wird zurück gegeben wenn ein Fehler auftritt | get([0,1,2,3], 2) liefert 2, get({"Fahrrad": 2, "Auto": 4}, "Auto") liefert 4, get({“F”: 2, “A”: 4}, “Auto”, 0)` liefert 0 |