📄 PDF-Erstellung in propform

propform kann nach Formular-Absendung PDF-Dokumente erzeugen — z.B. Geldwäsche-Dokumentationen, Notarbeauftragungen, Übergabeprotokolle, Reservierungs-Bestätigungen — und diese in onOffice ablegen, an die Mail anhängen oder beides.


Inhalt


Konzept: PDF über onOffice-Vorlagen

propform nutzt für PDF-Erstellung den onOffice-PDF-Designer. Beim Submit fordert propform onOffice auf, die ausgewählte Vorlage zu rendern, und legt das Ergebnis im gewünschten Datensatz ab.

⚠️ Wichtige API-Limitation: Es gibt aktuell nur den PDFExposé-API-Aufruf, kein PDFBrief. Auch Geldwäsche-Dokus, Notarbeauftragungen etc. werden deshalb als „Exposé" angelegt — aber inhaltlich sind sie ganz normale PDF-Dokumente. propform hat seit Jahren bei onOffice nach einem dedizierten Brief-API-Aufruf gefragt, aber es ist noch nicht implementiert.


PDF-Vorlage in onOffice anlegen

  1. In onOffice → BearbeitenPDF-Designer
  2. Neue Vorlage erstellen → „PDF-Exposé erstellen" auswählen (auch wenn es keine Immobilien-Anzeige werden soll)
  3. Alle Standard-Seiten herauswerfen
  4. Neue Seite → „Textseite" einfügen
  5. Im Textseiten-Editor genauso arbeiten wie in einem PDF-Brief

Wichtig: Vorlage „aktivieren"

Vorlage muss explizit „aktiviert" werden — sonst kann der API-User sie nicht lesen:

  • PDF-Designer → Vorlage öffnen → unten „PDF-Exposé aktivieren"
  • Auswahl „Für alle" — sonst sieht der API-User die Vorlage nicht

Tipp: Eigene Master-Vorlage als Basis

Logo-Größe, Seitenränder, Schriftarten musst du in jeder neuen Vorlage einzeln einstellen — das ist umständlich. Lege dir eine Master-Vorlage an mit deinem Standard-Setup (Logo oben, Ränder, Schriften), und kopiere die jedes Mal, statt eine neue von Grund auf anzulegen.


Tabellen-Layout für Felder

Wenn das PDF die Formularwerte als Liste ausgibt, sieht das als Fließtext schnell hässlich aus. Besser: Tabellen-Layout.

Quick-Trick: Felder per Klick aus propform übernehmen

Bei der Konfiguration der Mail in propform → bei Body „Formularfelder als Makros hinzufügen" anklicken → propform schreibt alle Feld-Makros der Reihe nach in den Mail-Body.

Diesen Block kopierst du dir (Strg+C) und fügst ihn in die PDF-Vorlage ein. So hast du alle Makros mit korrekter Schreibweise schon zusammen — sparst manuelles Heraussuchen.

Tabelle in der PDF-Vorlage

  1. PDF-Designer → Textseite → Tabelle einfügen mit 2 Spalten
  2. Anzahl Zeilen = Anzahl Felder, die du anzeigen willst
  3. Layout aus dem Beispiel-Picker wählen (gestreift / mit Rahmen / nur Linien)
  4. Pro Zeile: links die Beschriftung („Vertragspartner"), rechts das Makro (_xVertragspartner)
  5. Per Strg+X / Strg+V die Makros aus dem zuvor kopierten Block in die rechte Spalte einsetzen

Ergebnis: sauberes, lesbares PDF mit zwei Spalten.


Datei erstellen und ablegen

In den Formulareinstellungen → „Datei erstellen und ablegen" konfigurierst du:

Einstellung Was
PDF-Vorlage aus dem onOffice-Vorlagen-Dropdown auswählen
Speicherort Adresse oder Immobilie (oder beide)
Dokumentenmerkmal optional — z.B. „Geldwäsche-Doku", „Reservierung", „Übergabeprotokoll"
Dateiname Klartext mit Makros, z.B. Geldwaesche_Doku_<_Vorname>_<_Name>
PDF-Schutz optional, verhindert nachträgliche Bearbeitung

Automatisch an Mail anhängen

Bei der E-Mail-Konfiguration → Häkchen „Formular abgesendete Dateien anhängen" aktivieren. Auch erstellte Dateien zählen als „abgesendete Datei" und werden automatisch mitgeschickt.

💡 Workflow: Submit → Datei wird im Hintergrund erstellt (1-3 Sekunden) → Datei landet im Datensatz → Mail wird mit Datei im Anhang an Empfänger versendet.

Dropdown zeigt die Vorlage nicht?

Die Felder/Vorlagen werden täglich morgens aktualisiert. Wenn du gerade eben eine neue Vorlage in onOffice angelegt hast:

  1. Formularübersicht im propform-Account aufrufen → triggert Aktualisierung im Hintergrund
  2. 10–20 Sekunden warten
  3. F5 im Form-Editor → Vorlage sollte jetzt im Dropdown sein

Mehr zu diesem „Refresh-Trick" siehe Felder werden nicht angezeigt.


Pre-Makros für PDF-Vorlagen

In PDF-Vorlagen, die per Mailversand erzeugt werden, läuft die Makro-Auflösung auf den Empfänger der Mail — nicht auf den Anfragenden. Das führt zu leeren Feldern, wenn der Empfänger ein interner Kollege ist.

Lösung: Pre-Makros

Pre-Makro Bedeutung
_Kaeufer / _Buyer greift auf den im Formular verknüpften Käufer zu
_Eigent / _Owner greift auf den im Formular verknüpften Eigentümer zu
_Mieter / _Renter greift auf den im Formular verknüpften Mieter zu

⚠️ Schreibweise: Pre-Makro und Feldname werden ohne Unterstrich dazwischen geschrieben — also _KaeuferVorname, nicht _Kaeufer_Vorname.

Beispiel im PDF:

Käufer: _KaeuferVorname _KaeuferName
Anschrift: _KaeuferStrasse, _KaeuferPlz _KaeuferOrt

Eigentümer: _EigentVorname _EigentName

So werden die korrekten Daten gezogen — unabhängig vom Mail-Empfänger.

📖 Mehr zu Adress-Verknüpfungen: Mehrere Datensätze verbinden und Werte werden nicht ans PDF übergeben.


Unterschriften & Datei-Pfad-Makros einbinden

Wenn das PDF Unterschriften, Ausweis-Scans oder andere Bilder aus Datei-Feldern enthalten soll, nutze die Datei-Pfad-Makros:

_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)

Parameter (Reihenfolge wichtig, semikolon-getrennt):

  • Feldname: interner onOffice-Datei-Feldname
  • Breite: Wert in der gewählten Einheit (typisch 400 für Unterschriften, 600 für Ausweise)
  • Höhe: fester Wert oder variabel (proportional)
  • Einheit: px oder mm
  • Typ: mail oder html

Für Immobilien-Datei-Felder: _dateipfadObjektfeld(...) mit gleicher Syntax.

Multi-Sig: mehrere Unterschriften pro Datensatz

Bei Notarverträgen oder Übergabeprotokollen mit mehreren Käufern/Eigentümern: Datei-Pfad-Makro innerhalb der Adress-Loop-Schleife verwenden — pro Käufer ein eigenes Datei-Feld:

Vertragspartner:
_buyerbrek_1_
- _BuyerVorname _BuyerName
  Unterschrift: _ifEmpty(unterschrift_kaeufer;"";"_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)")
_buyererek_1_

🔒 _ifEmpty(...) immer wrappen: Wenn ein Käufer noch nicht unterschrieben hat (Datei-Feld leer), würde das Makro sonst einen Platzhalter ausgeben. Mit dem _ifEmpty-Wrapper bleibt die Stelle einfach leer — das PDF sieht ordentlich aus.

Tipp: Ausweise (Vorderseite + Rückseite)

Da ein Datei-Feld nur eine Datei speichert, brauchst du für Ausweis-Vorder- und -Rückseite zwei separate Datei-Felder (z.B. ausweis_vorne und ausweis_hinten). Im PDF dann beide nacheinander einbinden — ideal mit Tabelle und je 600 px Breite.


Häufige Stolperfallen

Schalter „Datei erstellen" aktiviert, aber keine Vorlage ausgewählt

Wenn der Schalter „Datei erstellen und ablegen" an ist, aber keine Vorlage ausgewählt: passiert silent nichts. Keine Fehlermeldung, kein PDF.

Lösung: Vorlage immer explizit auswählen. Wenn du temporär keine PDF willst, lieber den Schalter ausschalten.

Falsche Makro-Schreibweise (CamelCase vs. lowercase)

  • Adress-Makros: CamelCase mit großem Anfang (_Name, _Vorname, _Strasse)
  • Immobilien-Makros: komplett klein (_objektart, _ort, _plz)

Falsche Schreibweise → Feld bleibt leer im PDF. Mehr unter Werte werden nicht ans PDF übergeben.

Vorlagen-Ordner-Datensatzrechte

Wenn die Vorlage in propform nicht im Dropdown erscheint, prüfen:

  1. Datensatzrechte der Vorlage selbst
  2. Datensatzrechte des Vorlagen-Ordners ← oft vergessen!
  3. API-User-Rechte: „PDF-Vorlagen → lesen → alle"

Mehr unter Mein Formular schreibt keine Daten Punkt 6.

PDF wird nicht erstellt nach Submit

  • API-User hat keine Schreibrechte auf das Modul (Adresse oder Immobilie, je nach Speicherort)
  • API-User hat keine Rechte zum Anlegen von Dokumenten
  • onOffice-API ist temporär nicht erreichbar — wenn das wiederholt passiert, schreib uns

Verwandt