Startseite Prozess-Engine Prozess-Engine: Datenübernahme von Formularfeldern

Prozess-Engine: Datenübernahme von Formularfeldern

In diesem Artikel erfahren Sie, wie Sie mittels der Prozess-Engine, Daten aus einem ausgefüllten Formular / Dokument automatisch in ein nachfolgendes Dokument übertragen können.

Mögliche Anwendungsfälle

Diese ist zum Beispiel in folgenden Szenarien sinnvoll:

  1. Wenn Sie komplexe Freigabeprozesse abbilden möchten, bei denen der erste Empfänger die Felder nachfolgender Empfänger nicht sehen soll – etwa weil es sich um vertrauliche Prüfkriterien handelt.

  2. Wenn nachfolgende Empfänger noch nicht zum Zeitpunkt des Dokumentenversands bekannt sind, sondern erst durch den ersten Empfänger angegeben werden.

  3. Wenn ein automatisch erstelltes Dokument – zum Beispiel ein Vertrag – Daten aus einem vorangegangenen Formular übernehmen soll

Das Fallbeispiel

Der in diesem Artikel beschriebene Anwendungsfall ist der folgende:
Eine Person füllt einen Urlaubsantrag aus. Alle eingesammelten Daten werden in ein zweites Dokument übertragen, in dem der Genehmiger anschließend seine Prüffelder ausfüllt.
In diesem Beispiel ist der Genehmiger immer die gleiche Person und kann somit fest definiert werden.

💡 Mehrere Empfänger bzw. ein Genehmiger lässt sich natürlich auch in einen Standard-Workflow integrieren. Die Prozess-Engine kommt hier nur zum Einsatz, damit der Antragsteller die Prüffelder nicht einsehen kann.

Sobald das Formular abgeschickt wird, erstellt die Prozess-Engine automatisch ein neues Dokument, basierend auf einem Template. Alle relevanten Daten aus dem Formular werden direkt in dieses Dokument übertragen. Der Genehmiger erhält das Dokument per E-Mail, sieht die bereits ausgefüllten Daten und muss nun seine Prüffelder ausfüllen.

Voraussetzungen & wichtige Regeln

1) Rechte

Damit Sie Prozesse zuverlässig anlegen/konfigurieren können, brauchen Sie ausreichende Rechte im Workspace (in der Praxis: Workspace-Inhaber).

2) Slugs sind die „Schlüssel“ für die Datenübernahme

Die Datenübernahme passiert über den technischen Namen (Slug) eines Feldes. Diese Slugs müssen im Formular und im Template identisch sein, sonst werden Werte nicht übernommen.

3) Editierbare Felder einstellen

Wenn übernommene Felder im Folge-Dokument nicht editierbar sein sollen, dann legen Sie diese Felder im Template ohne Empfänger-Zuweisung an (keinem Teilnehmer zugewiesen).

Zusätzliche Felder, die im Folge-Dokument ausgefüllt werden sollen (z. B. „Freigabe erteilt“), weisen Sie einem Teilnehmer zu.

Schritt-für-Schritt Anleitung

Schritt 1: Formular erstellen

  1. Erstellen Sie ein Formular mit allen notwendigen Feldern

  2. Ändern Sie den Namen des Empfängers z.B in "Antragsteller"

  3. Vergeben Sie passende Slugbezeichnungen

💡 Hinweise zur Vergabe von Slugs: Slugs werden automatisch generiert, können aber angepasst werden. Verwenden Sie für Slugs ausschließlich Kleinbuchstaben und Unterstriche.
Umlaute und Sonderzeichen können zu Fehlern führen.

Schritt 2: Template erstellen

Ziel: Das Template enthält alle Felder, die der Antragsteller ausfüllen soll (mit exakt den gleichen Slugs) inklusive der Prüffelder des Genehmigers.

  1. Erstellen Sie auf Basis des Formulars ein Template

    Hier erfahren Sie, wie Formularfelder schnell und einfach in Templates kopiert werden können

  2. Entfernen Sie die Empfänger-Zuweisung der Felder

💡 Damit der Empfänger die übernommenen Angaben nicht ändern kann, darf im Template kein Empfänger für die jeweiligen Felder zugewiesen sein. Der Zugewiesen-Status kann durch Öffnen des Dropdowns und Maus-Hover über das Icon auf der linken Seite neben dem Empfängernamen entfernt werden.

Schritt 3: Umsetzung des Prozesses

Der Prozess soll so konfiguriert werden, dass nach Abschluss des Urlaubsantrags ein Dokument auf Basis des Templates mit den Prüffeldern erstellt wird.
Der Startpunkt des Prozesses ist somit der Abschluss des Formulars Urlaubsantrag.

Erstellen Sie im Prozess-Tab in Paperless einen neuen Prozess über den Button + Prozess erstellen mit dem Trigger Bei Abschluss eines bestimmten Formulars.
Wählen Sie anschließend Ihr Formular aus.

Schritt 4: Node „Dokument hinzufügen“ konfigurieren

Da nach Abschluss des Formulars das Dokument mit den Prüffeldern verwendet werden soll.
Wird im nächsten Prozess-Schritt das Dokument hinzugefügt.

Klicken Sie auf das + unterhalb des Startpunkts, anschließend öffnet sich ein Fenster mit möglichen Prozessschritten.
Wählen Sie hier Dokument hinzufügen aus.

Konfiguration der einzelnen Dokumentenfelder

1. Template: Ihr zuvor erstelltes Template

2. Workspace: Workspace in dem das Template liegt

3. Nutzer : Name, welcher als Absender des Dokuments verwendet wird

4. Direkt versenden: Auf Aktiv stellen

💡 Dieser Prozess-Use-Case funktioniert nur korrekt, wenn das Dokument direkt versendet wird.
Hintergrund: Wenn „Direkt versenden“ deaktiviert ist, landet das Dokument in den Entwürfen – in dieser Konstellation funktioniert die Datenübernahme nicht.

5. Name des Dokuments: Bestimmen Sie einen Dokumenten-Namen z.B Prüfung Urlaubsantrag
Dokumentennamen können auch dynamisch generiert werden.

nodes.start.blocks.vorname.value + " " + nodes.start.blocks.nachname.value + " Urlaubsantrag"

Dokumentenname: Max Mustermann Urlaubsantrag

In diesem Beispiel würde der Vorname und Name des Ausfüllenden in den Dokumentennamen übernommen werden.

6. Empfänger:

Hier definieren Sie, wer das Dokument erhalten soll. In unserem Beispiel ist der Empfänger immer dieselbe Person, weswegen wir seine E-Mail direkt im Template hinzufügen können.

Wenn der Empfänger stets dieselbe Person ist, kann dieser im Template bereits im Voraus festgelegt werden. Öffnen Sie dazu das jeweilige Template im Editor und klicken Sie auf „Empfänger“.
Aktivieren Sie anschließend die Option „Vorbelegen“.

Daraufhin können Sie den Namen sowie die E-Mail-Adresse der entsprechenden Person hinterlegen. Zusätzlich besteht im Bereich „Angepasste E-Mail“ die Möglichkeit, eine individuelle Nachricht für diesen Empfänger zu definieren.

Alternativ können auch dynamische Empfänger hinzugefügt werden, die zum Beispiel aus Angaben innerhalb des Formulars stammen.

Hier kommen Sie zum Help-Center Artikel zu dynamischen Empfängern


Die Punkte 7. Platzhalter und 8. Blöcke werden für diesen Anwendungsfall nicht benötigt.


9. Daten übernehmen:

Hier findet die eigentliche Magie statt: Die Übertragung der Inhalte. Damit die Datenübernahme funktioniert, müssen die Slugs der Felder, wie Sie bereits wissen im Formular und im Template identisch sein.

Sie haben drei Möglichkeiten, die Übernahme zu steuern:

Option A: Alle passenden Felder übernehmen

Dies ist die einfachste Methode. Alle Felder mit identischem Slug werden automatisch befüllt.

[
  {
    submission_id: nodes.start.submission.id,
    slugs: { all: true }
  }
]

💡Hinweis: Dieser Code ist bereits beispielhaft im Prozess hinterlegt. Um ihn verwenden zu können, müssen Sie die Code Zeilen "auskommentieren" - sprich die Slash-Zeichen entfernen.

Option B: Alle Felder übernehmen - außer spezifische Ausnahmen

Nutzen Sie diesen Code, wenn fast alles übernommen werden soll, außer z.B sensible Daten wie interne Notizen.

[
  {
    submission_id: nodes.start.submission.id,
    slugs: { except: ['interne_notiz', 'gehalt'] }
  }
]

Option C: Nur explizit genannte Felder übernehmen

Wenn sie nur einzelne ausgewählte Daten übernehmen möchten können Sie den folgenden Code verwenden.

[
  {
    submission_id: nodes.start.submission.id,
    slugs: { only: ['vorname', 'nachname', 'abteilung'] }
  }
]

Häufige Fehler & Troubleshooting

1) „Teilnehmer wurde angelegt, aber Felder wurden nicht übernommen“

Fast immer:

  • Slug im Formular ≠ Slug im Template (Tippfehler, andere Benennung, Groß-/Kleinschreibung). 09-input-blocks
    Fix: Slugs abgleichen und neu testen.

2) „Im Code ist alles grün / Kommentar – ich bekomme Fehler“

Im Code-Editor sind Zeilen mit // Kommentare. Kommentare werden nicht ausgeführt. Sobald Sie aber „Pseudo-Code“ als echten Code einfügen, gibt es Fehler.

3) Prozess lässt sich nicht sauber anlegen / Trigger-Auswahl fehlt / UI wirkt „kaputt“

Das kann an fehlenden Workspace-Rechten liegen. Stellen Sie sicher, dass Sie die nötige Rolle (praktisch: Workspace-Inhaber/Owner) haben.

4) Dokument wird erstellt, aber bleibt Entwurf und Prozess wirkt „unvollständig“

Prüfe im Node:

  • Direkt versenden muss aktiv sein
Colin Portisch
Verfasst von Colin Portisch
Zuletzt am 03. Juni aktualisiert