TEMPLATING
TEMPLATING
Mit TEMPLATING verwalten Sie Vorlagen (z.B. für Vertrags-PDFs).
Eine Vorlage legt fest:
- Welcher Text wo steht (Anrede, Klauseln, AGB)
- Welche Datenfelder eingesetzt werden (Mieter-Name, Vertrags-Nummer, Inventarliste …)
- Optional: spezielle Inventar-Zeilen / Layout-Bausteine
TEMPLATING unterstützt die System-Dokument-Typen VERTRAG (Seed V34) und RECHNUNG (Seed V62) sowie mandantenindividuelle eigene Dokument-Typen (seit M27-06, V63). Pro Typ wird genau ein Standard-Template gepflegt.
- Eine Vorlage anlegen (Typ
VERTRAG,RECHNUNGoder eigener registrierter Dokument-Typ) - Eigene Dokument-Typen anlegen, umbenennen oder löschen (M27-06)
- Vorlage als Standard pro Dokument-Typ markieren
- Template-Liste nach Typ filtern
- Vorlage in der Vorschau (pro Typ) ansehen
- Mehrere Varianten verwalten (z.B. „Vertrag deutsch“ vs. „Vertrag englisch“, Rechnungsvorlagen)
1) Vorlagen-Liste öffnen
- Admin → Templating (
/settings/admin/templating). - Optional per Query-Parameter nach Typ filtern:
?type=VERTRAGbzw.?type=RECHNUNG(ohne Parameter: alle Typen).
2) Neue Vorlage anlegen
1. „Neu" (/settings/admin/templating/new) — am besten aus der nach dem gewünschten Typ gefilterten Liste heraus: Der Typ wird beim Anlegen aus dem aktiven Typ-Filter übernommen (Default VERTRAG) und ist im Formular als Select sichtbar und änderbar.
2. Felder ausfüllen:
- Name
- Body / HTML mit Platzhaltern
3. Speichern (POST /settings/admin/templating).
> Verfügbare Platzhalter hängen vom Typ ab. Beispiel für Vertrag: {{vertrag.id}}, {{mieter.name}}, {{inventar}}. Wenn Sie unsicher sind: Vorschau benutzen.
> Eigene Dokument-Typen nutzen das generische Variablenmodell (Union aus VERTRAG und RECHNUNG).
3) Vorlage bearbeiten
- Eintrag öffnen (
/settings/admin/templating/{id}/edit) → Speichern (POST /settings/admin/templating/{id}).
4) Vorlage als Standard markieren
- Pro Typ kann genau eine Vorlage als Standard markiert werden.
POST /settings/admin/templating/{id}/default.- Diese wird beim PDF-Generieren benutzt, wenn keine andere ausgewählt ist.
5) Vorlage löschen
POST /settings/admin/templating/{id}/delete.- Standard-Vorlagen können nicht gelöscht werden, ohne vorher eine andere als Standard zu wählen.
6) Vorschau
POST /settings/admin/templating/preview(M27-08: ParameterdataSource=sample-vertrag/sample-rechnung/ UUID eines existierenden Vertrags,content, optionaltype= registrierter Dokument-Typ undlang=de/en) – zeigt, wie das fertige Dokument mit der Vorlage aussehen würde, ohne ein echtes PDF zu erzeugen. Beispieldaten (sample-vertrag/sample-rechnung) nutzen feste Musterdaten ohne Mandanten-Daten; bei einer Vertrag-UUID wird der live Vertrag gerendert. Der Typ-Parameter wirkt nur im UUID-Fall; bei Beispieldaten ist er durch die Quelle fixiert.
7) Eigene Dokument-Typen verwalten (M27-06)
- Die Template-Liste enthält einen eigenen Block „Dokument-Typen“ (
/settings/admin/templating). - Typ anlegen: Schlüssel (nur Großbuchstaben, Ziffern,
_, max. 32 Zeichen, z. B.GUTSCHEIN) + Anzeigename →POST /settings/admin/templating/document-types. - Typ umbenennen: „Bearbeiten"-Button in der Typ-Tabelle (links neben „Löschen"); öffnet das Inline-Formular (Speichern/Abbrechen). Nur die Anzeigebeschriftung ändert sich, der Schlüssel bleibt stabil →
POST /settings/admin/templating/document-types/{id}. - Typ löschen: nur möglich, solange keine Vorlagen dieses Typs existieren →
POST /settings/admin/templating/document-types/{id}/delete. - Die System-Typen
VERTRAGundRECHNUNGsind gesperrt (kein Umbenennen/Löschen). - Vorlagen dürfen nur Typen zuweisen, die in der Registry existieren; eigene Typen nutzen das generische Variablenmodell (Union aus
VERTRAGundRECHNUNG). - Beispielvorlagen für eigene Typen (Copy & Paste):
How-To/Templates/im Repository-Root — 17 kopierfertige Templates (u. a. Gutschein, Angebot, Kündigung, Rückgabe, Abholung, Kaution, Mängelprotokoll, Verlängerung, Zahlungserinnerung, Mahnung, Gutschrift, Storno, Zahlungseingang, Anfrage-/Buchungsbestätigung, Lieferschein, Inventarliste), inkl. README mit Schritt-für-Schritt-Anleitung.
„Mein Platzhalter wird nicht ersetzt“
- Schreibweise prüfen (Klammern, Punkte, Klein-/Großschreibung).
- Wert ist evtl. leer (z.B. Mieter ohne Telefon).
„PDF sieht zerschossen aus“
- HTML-/CSS-Fehler in der Vorlage. Vorschau benutzen.
- Bilder: müssen zugängliche URLs / eingebettete Daten sein.
„Welche Vorlage wird im Vertrag verwendet?“
- Seit M27-07 bestimmt der im Vertrag gespeicherte Dokument-Typ (Feld
„Dokument-Typ" im Vertrag-Formular, Default VERTRAG, V64): „PDF
generieren" rendert die Standard-Vorlage dieses Typs. Bei VERTRAG gilt
zusätzlich der Legacy-Flow (gespeichertes geschütztes PDF).
- Eine explizite Template-Auswahl pro Vertrag wurde entfernt; ad hoc geht es
über die Query-Parameter type/template von /pdf und /generate.
Admin (/settings/admin/templating):
GET /settings/admin/templating– Liste (optional:?type=)GET /settings/admin/templating/new– NeuPOST /settings/admin/templating– AnlegenGET /settings/admin/templating/{id}/edit– BearbeitenPOST /settings/admin/templating/{id}– SpeichernPOST /settings/admin/templating/{id}/delete– LöschenPOST /settings/admin/templating/{id}/default– als Standard pro Typ markierenPOST /settings/admin/templating/preview– Vorschau (M27-08:dataSource=sample-vertrag/sample-rechnung/Vertrags-UUID,content, optionaltype=,lang=de|en)POST /settings/admin/templating/document-types– Dokument-Typ anlegen (typeKey,label)POST /settings/admin/templating/document-types/{id}– Dokument-Typ umbenennen (label)POST /settings/admin/templating/document-types/{id}/delete– Dokument-Typ löschen
- TEMPLATING ist eng mit VERTRAG (Dokument-Generierung: Vertrag & Rechnung) verbunden.
- Verfügbare Dokument-Typen: System-Typen
VERTRAGundRECHNUNG(Standard-Templates via Flyway: V34 / V62) sowie mandantenindividuell registrierte eigene Typen (M27-06, Tabelletemplating_document_type, V63). - Vorlagen dürfen nur registrierte Typen verwenden; eigene Typen erhalten das generische Variablenmodell (Union aus
VERTRAGundRECHNUNG). - Seit M27-07 (V64) trägt jeder Vertrag einen Dokument-Typ (
vertrag.document_type); „PDF generieren" im Vertrag rendert den Default-Template dieses Typs (nurVERTRAGnutzt den Legacy-Pfad mit gespeichertem PDF). - Halten Sie Vorlagen sauber und übersichtlich – „eine Standardvorlage pro Typ + ein paar Varianten“ ist meist besser als zehn fast identische Dateien.