Zum Hauptinhalt springen

Formeln

Formula-Felder in Copera Boards erstellen berechnete Spalten, deren Werte automatisch aus anderen Daten in Ihren Zeilen abgeleitet werden. Angetrieben von der Copera Formula Engine -- einer eigenen Formelsprache mit Parser und Evaluator -- bauen Sie alles von einfacher Arithmetik bis zu komplexer bedingter Logik und Datumsberechnungen.

Überblick über die Formelsprache​

Copera-Formeln nutzen eine Syntax ähnlich wie Tabellenkalkulationen. Jede Formel wird pro Zeile ausgewertet und hat Zugriff auf alle Spaltenwerte derselben Zeile. Die Formula Engine unterstützt:

  • Arithmetische Operatoren: +, -, *, / für Rechenoperationen
  • String-Konkatenation: & zum Verketten von Textwerten
  • Vergleichsoperatoren: =, !=, >, <, >=, <=
  • Logische Operatoren: AND, OR, NOT zum Kombinieren von Bedingungen
  • Feldreferenzen: Andere Spalten referenzieren, indem Sie den Spaltennamen in geschweifte Klammern setzen, z. B. {Column Name}
  • Verschachtelte Funktionen: Funktionen können als Argumente anderer Funktionen dienen

Basissyntax​

{Price} * {Quantity}

Diese Formel multipliziert den Wert der Spalte „Price“ mit der Spalte „Quantity“ für jede Zeile.

IF({Status} = "Done", "Complete", "Pending")

Diese Formel gibt „Complete“ zurück, wenn die Status-Spalte „Done“ ist, andernfalls „Pending“.

Funktionsreferenz​

Die Copera Formula Engine stellt über 100 Funktionen in den folgenden Kategorien bereit. Unten finden Sie die am häufigsten genutzten Funktionen.

Mathematische Funktionen​

FunktionBeschreibungBeispiel
ABS(number)AbsolutwertABS({Balance})
CEIL(number)Aufrunden auf nächste ganze ZahlCEIL({Score} / 10)
FLOOR(number)Abrunden auf nächste ganze ZahlFLOOR({Price})
ROUND(number, decimals)Auf angegebene Nachkommastellen rundenROUND({Average}, 2)
MIN(a, b, ...)Kleinster WertMIN({Estimate}, {Budget})
MAX(a, b, ...)Größter WertMAX({Score1}, {Score2})
SUM(a, b, ...)Summe der WerteSUM({Q1}, {Q2}, {Q3}, {Q4})
AVERAGE(a, b, ...)Arithmetisches MittelAVERAGE({Test1}, {Test2})
MOD(number, divisor)Rest nach DivisionMOD({Row Number}, 2)
POWER(base, exponent)PotenzierenPOWER({Side}, 2)
SQRT(number)QuadratwurzelSQRT({Area})

Textfunktionen​

FunktionBeschreibungBeispiel
CONCAT(a, b, ...)Textwerte verbindenCONCAT({First Name}, " ", {Last Name})
LEFT(text, count)Vom Anfang extrahierenLEFT({Code}, 3)
RIGHT(text, count)Vom Ende extrahierenRIGHT({Phone}, 4)
MID(text, start, count)Aus der Mitte extrahierenMID({ID}, 2, 4)
LEN(text)ZeichenanzahlLEN({Description})
LOWER(text)In Kleinbuchstaben umwandelnLOWER({Email})
UPPER(text)In Großbuchstaben umwandelnUPPER({Code})
TRIM(text)Führende/abschließende Leerzeichen entfernenTRIM({Input})
REPLACE(text, old, new)Vorkommen ersetzenREPLACE({URL}, "http", "https")
SEARCH(find, text)Position einer Teilzeichenkette findenSEARCH("@", {Email})

Datumsfunktionen​

Die Formula Engine integriert eine umfangreiche Datumsbibliothek für Manipulation und Vergleich.

FunktionBeschreibungBeispiel
TODAY()Aktuelles DatumTODAY()
NOW()Aktuelles Datum und UhrzeitNOW()
YEAR(date)Jahr extrahierenYEAR({Created})
MONTH(date)Monat extrahieren (1–12)MONTH({Due Date})
DAY(date)Tag des Monats extrahierenDAY({Birthday})
WEEKDAY(date)Wochentag (0–6)WEEKDAY({Start Date})
WEEKNUM(date)KalenderwocheWEEKNUM({Created})
QUARTER(date)Quartal (1–4)QUARTER({Close Date})
DATEADD(date, count, unit)Zeit zu einem Datum addierenDATEADD({Start}, 14, "days")
DATEDIFF(date1, date2, unit)Differenz zwischen DatenDATEDIFF({Start}, {End}, "days")
IS_BEFORE(date1, date2)Prüfen, ob date1 vor date2 liegtIS_BEFORE({Due Date}, TODAY())
IS_AFTER(date1, date2)Prüfen, ob date1 nach date2 liegtIS_AFTER({Due Date}, TODAY())
IS_SAME_DAY(date1, date2)Prüfen, ob derselbe TagIS_SAME_DAY({Created}, TODAY())
IS_TODAY(date)Prüfen, ob das Datum heute istIS_TODAY({Due Date})
IS_WEEKEND(date)Prüfen, ob WochenendeIS_WEEKEND({Delivery Date})
START_OF_MONTH(date)Erster Tag des MonatsSTART_OF_MONTH({Date})
END_OF_MONTH(date)Letzter Tag des MonatsEND_OF_MONTH({Date})
START_OF_WEEK(date)Erster Tag der WocheSTART_OF_WEEK({Date})
END_OF_WEEK(date)Letzter Tag der WocheEND_OF_WEEK({Date})
ADD_BUSINESS_DAYS(date, days)Nur Werktage addierenADD_BUSINESS_DAYS({Start}, 5)
DIFF_BUSINESS_DAYS(d1, d2)Werktage zwischen DatenDIFF_BUSINESS_DAYS({Start}, {End})

Logische Funktionen​

FunktionBeschreibungBeispiel
IF(condition, then, else)Bedingter WertIF({Amount} > 1000, "High", "Low")
SWITCH(expr, val1, result1, ...)Gegen mehrere Werte abgleichenSWITCH({Priority}, "P0", "Critical", "P1", "High", "Normal")
AND(a, b, ...)Wahr, wenn alle Bedingungen wahr sindAND({Complete}, {Approved})
OR(a, b, ...)Wahr, wenn eine Bedingung wahr istOR({Urgent}, {Overdue})
NOT(value)Booleschen Wert invertierenNOT({Archived})
ISBLANK(value)Prüfen, ob leerISBLANK({Notes})

Häufige Formelbeispiele​

Namen verketten​

CONCAT({First Name}, " ", {Last Name})

Kombiniert Vor- und Nachnamenspalten mit einem Leerzeichen dazwischen.

Tage bis zum Fälligkeitsdatum​

DATEDIFF(TODAY(), {Due Date}, "days")

Gibt die verbleibenden Tage bis zum Fälligkeitsdatum zurück. Negative Werte bedeuten Überfälligkeit.

Bedingte Status-Labels​

IF(IS_BEFORE({Due Date}, TODAY()), "Overdue",
IF(DATEDIFF(TODAY(), {Due Date}, "days") <= 3, "Due Soon", "On Track"))

Gibt „Overdue“ für überfällige Elemente, „Due Soon“ bei Fälligkeit innerhalb von 3 Tagen und „On Track“ sonst zurück.

Prozentberechnung​

ROUND({Completed Tasks} / {Total Tasks} * 100, 1)

Berechnet den Fortschritt in Prozent, gerundet auf eine Nachkommastelle.

Verbleibende Werktage​

DIFF_BUSINESS_DAYS(TODAY(), {Deadline})

Berechnet die Anzahl der Werktage (ohne Wochenenden) zwischen heute und einer Deadline.

Fehlerbehandlung​

Enthält eine Formel Fehler, zeigt Copera in der Zelle einen Fehlerindikator statt eines Werts. Häufige Fehler:

  • Syntaxfehler -- Ungleiche Klammern, fehlende Operatoren oder unbekannte Funktionsnamen.
  • Typkonflikte -- Arithmetik auf Textwerten oder Datumsoperationen auf Zahlen.
  • Null-Referenzen -- Bezug auf eine Spalte ohne Wert in der aktuellen Zeile. Nutzen Sie ISBLANK() für optionale Felder.
  • Division durch null -- Division durch eine Spalte mit dem Wert null. Mit IF absichern: IF({Total} = 0, 0, {Part} / {Total}).

Der Formeleditor zeigt eine Live-Vorschau des Ergebnisses während der Eingabe – so finden und beheben Sie Fehler vor dem Speichern.

KI-unterstützte Formelerstellung​

Wenn Sie unsicher sind, wie eine Formel geschrieben wird, bietet Copera einen KI-gestützten Formelassistenten. Beschreiben Sie in natürlicher Sprache, was berechnet werden soll; der Assistent generiert eine Formel. Sie können den Vorschlag prüfen, bearbeiten und verfeinern, bevor Sie ihn auf die Spalte anwenden.

Nächste Schritte​