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