Zum Inhalt

Formulare

Zu jedem Datenschema erzeugt Pantarey ein Formular aus seinen Attributen. Es erscheint in der Datenbank, als Startformular und in Benutzeraufgaben von Prozessen und im Dashboard-Widget Datenobjekt anlegen. Wer mehr braucht, schreibt im Prozess Designer ein eigenes Formular im selben Format und nutzt dort zusätzliche Felder, etwa geladene Werte aus SQL oder eine Arbeitstage-Zählung.

Reiter Formulare

Reiter Formulare mit dem Eintrag Urlaubsantrag (Auto. generiert) und dem Knopf Formular öffnen
Reiter „Formulare“ mit dem automatisch erzeugten Formular.

Der Reiter listet die Formulare des Schemas, in der Regel genau eines: „‹Name› (Auto. generiert)“. Formular öffnen zeigt im Dialog „Formular exportieren“ die Definition als JSON, schreibgeschützt. Von dort wird sie kopiert, um im Prozess Designer ein eigenes Formular daraus zu machen. Das automatische Formular wird bei jeder Attributänderung neu erzeugt und lässt sich nicht direkt bearbeiten; Reihenfolge, Pflicht, Vorbelegung und Bedingungen kommen aus den Attributen.

Was das automatische Formular enthält

  • eine Überschrift mit dem Namen des Schemas,
  • je Attribut ein Feld in der Reihenfolge der Attributliste, versteckte Attribute fehlen, Objekte werden eingerückte Blöcke, Listen bekommen „‹Name› hinzufügen“,
  • Pflicht, Format E-Mail, Vorbelegung, Werteliste, berechnete Felder und Bedingungen aus dem Attribut,
  • die Prüfregeln des Schemas,
  • Verweisfelder nur, wenn die Person das Zielschema lesen darf; sonst steht dort „Ihre Berechtigungen erlauben den Zugriff auf dieses Feld nicht.“

Beispieldaten

Reiter Beispieldaten mit dem Eintrag Auto-generiert mit Badge automatisch, dem Knopf Anzeigen und dem Knopf Neuer Beispieldatensatz
Reiter „Beispieldaten“: der automatische Datensatz und eigene Fälle.

Der Reiter Beispieldaten hält Musterdatensätze zum Schema. Auto-generiert (Badge automatisch) entsteht aus den Beispielwerten der Attribute und wird bei jeder Schemaänderung erneuert; er ist schreibgeschützt. Neuer Beispieldatensatz legt eigene Fälle an, mit Bezeichnung („Standardfall“, „Sonderfall A“), Beschreibung und dem Datensatz als JSON; Anzeigen öffnet sie wieder. Der Dokumentennamen-Baukasten zeigt seine Vorschau mit diesen Daten, und sie dienen als Dokumentation, was ein typischer Datensatz enthält.

Eigene Formulare

Im Prozess Designer wählt eine Benutzeraufgabe oder ein Startereignis unter Formular entweder ein automatisches Formular, ergänzt es unter Formular (erweitert) um weitere Felder oder ersetzt es mit Benutzerdefiniert ganz; Formular-Designer öffnen bearbeitet die Definition mit Live-Vorschau und KI-Hilfe, siehe Prozesse und Formulare verknüpfen. Die Definition ist ein JSON-Array von Feldern mit key, type und props:

[
  { "key": "projekt", "type": "searchReference", "props": { "label": "Projekt", "dataSchema": "documents/projekte", "required": true } },
  { "key": "von", "type": "dateInput", "props": { "label": "Von", "required": true }, "defaultValue": "today" },
  { "key": "bis", "type": "dateInput", "props": { "label": "Bis", "required": true, "minKey": "von", "followMin": true } },
  { "key": "tage", "type": "workday-count", "props": { "label": "Arbeitstage", "fromKey": "von", "toKey": "bis" } }
]

Standardfelder

type Feld Wichtige props
input Text, Zahl, E-Mail type text/number/email/password
textarea mehrzeiliger Text rows
select, radio, multicheckbox Auswahl options als Liste von value/label, multiple
checkbox, toggle Ja / Nein
dateInput, dateTimeInput Datum, Zeitpunkt min, max (2026-01-01 oder today+7), minKey, maxKey (anderes Feld derselben Ebene), followMin (Feld springt mit, wenn das Minimum danach liegt); defaultValue today, today±N, now
numericInput Zahl subType integer/number; Zahlenfelder aus input type number werden automatisch dazu
user-select, user-group-select Person, Gruppe
template fester HTML-Text, etwa eine Erklärung template
repeat Liste von Feldern fieldArray, addText, x_inverseArrayOrder
fieldGroup mit Wrapper panel eingerückter Block fieldGroup

Verweise und Daten

type Feld Wichtige props
searchReference Verweis mit Suche, bis 25 Treffer dataSchema (Pflicht), referenceSort, allowNew, allowOpen
searchReferenceSql Verweis, dessen Auswahl eine SQL-Abfrage filtert sql mit den Spalten id, data_schema_id, document_name, search_string; siehe SQL-gefiltertes Referenzfeld
sql-values Werte laden, siehe unten sqlQuery, rows, maxRows
workday-count Arbeitstage, siehe unten fromKey, toKey, …
table Ergebnis einer SQL-Abfrage als Tabelle mit Filter und Export CSV, Excel, JSON sqlQuery mit {{param}}, parameter, label, excludeMetadata, excludeActions
single-value-card eine Kennzahl aus der ersten Zeile einer Abfrage sqlQuery
funnel Trichter aus Zählschritten steps, result
subForm, parentForm Datensatz eines Unter- oder Elternschemas anlegen oder wählen dataSchema, parentDataSchema

Dateien

type Feld Wichtige props
file Datei mimeType, multiple
pdf PDF mit „PDF ansehen & herunterladen“ allowRemove, multiple
image Bild mit Vorschau multiple
dropzone Ablagefläche zum Ziehen acceptPreset, dropzoneTitle, dropzoneSubtitle

Was ein Prozess mit hochgeladenen Dateien macht, steht unter Prozesse bauen.

Werte laden

Das Feld sql-values ist unsichtbar und holt beim Öffnen des Formulars Werte per SQL, mit den Rechten der Person, die das Formular ausfüllt. Platzhalter: @currentUserEmail, @currentUserSub, @currentDate, @currentYear. Der key ist nur der Name der geladenen Werte und wird nicht mitgespeichert; andere Felder lesen sie unter loaded.<key>.

{ "key": "me", "type": "sql-values",
  "props": { "sqlQuery": "SELECT resturlaub, abteilung FROM mitarbeiter WHERE email = @currentUserEmail", "rows": "first" } }

rows first liefert die erste Zeile als Objekt (loaded.me.resturlaub), all eine Liste bis maxRows (Standard 500). Findet die Abfrage nichts oder scheitert, ist loaded.me leer; das Formular bleibt bedienbar. Im Formular-Designer erscheint das Feld als Chip „Lädt Werte: me“ mit „1 Zeile geladen“ oder „keine Zeile gefunden“. Verwendet werden die Werte in Bedingungen (loaded.me.resturlaub < model.tage), im Feld Arbeitstage und in eigenen Prozessschritten.

Arbeitstage

Das Feld workday-count zeigt die Arbeitstage zwischen zwei Datumsfeldern nach dem Arbeitskalender des Accounts, inklusive der freien Tage, und rechnet bei jeder Änderung neu.

props Bedeutung
fromKey, toKey Pflicht: die Datumsfelder
halfStartKey, halfEndKey Ja/Nein-Felder für halbe Tage am Anfang und Ende
workdaysKey oder workdays Arbeitstage der Woche aus einem Feld oder fest, etwa ["Mo","Di","Mi","Do","Fr"]
remainingKey Feld oder geladener Wert mit dem verfügbaren Rest; zeigt „Danach bleiben … verfügbar.“ oder „Übersteigt die verfügbaren Tage um ….“
remainingByYearKey Rest je Jahr als Objekt {"2026": 9, "2027": 30}, für Zeiträume über den Jahreswechsel
showFreeDays freie Tage auflisten (Standard an)
label, unit, unitOne, description Beschriftungen

Pfade zeigen auf ein Feld derselben Ebene, auf den ganzen Datensatz oder auf loaded.…. Mit einem key landet die Zahl als Vorschlag im Datensatz; der Prozess rechnet mit $fn('date_workdays', von, bis) selbst nach.

Beispiel

Das Startformular „Urlaub beantragen“ der Musterfirma lädt mit sql-values den Resturlaub der Person, zeigt mit workday-count die beantragten Arbeitstage samt Rest und macht über eine Bedingung die Bemerkung zur Pflicht, wenn der Rest nicht reicht. Alles ohne eigenen Prozessschritt; der Prozess erhält den fertigen Antrag.

Häufige Fragen

Lässt sich das automatische Formular umsortieren oder umbenennen?

Nur über die Attribute: Reihenfolge per Ziehen, Beschriftung über den Anzeigenamen. Für alles andere ein eigenes Formular im Prozess Designer anlegen.

Ein Verweisfeld zeigt „Ihre Berechtigungen erlauben den Zugriff auf dieses Feld nicht.“

Der Person fehlt im Zielschema die Berechtigung Lesen. Siehe Rechte und Aktionen.

Werte laden liefert nichts.

Die Abfrage läuft mit den Rechten der Person: Sie braucht Abfragen auf das Schema, und die Bedingung muss auf ihre Datensätze passen. Die Abfrage mit derselben Person in der Datenanalyse testen.

Nächster Schritt

Vererbung und Hierarchien: gemeinsame Felder einmal pflegen, Kontakt für Person und Organisation.