2026-06-14 10:53:56 +02:00

MeinVLN-Vorlagen — TG-Vorlagensystem

Self-Service-Word-Vorlagen für Teilnehmergemeinschaften (TG) im MeinVLN-Portal (https://mein.vlnsachsen.de, Modul 0_meinvln/vorlagen/).

Mit dem Modul erzeugen TG und Verband aus DOCX-Vorlagen fertige Briefe und Dokumente mit automatisch eingesetzten Stammdaten, eigenen Eingabefeldern, QR-/GiroCodes, verknüpften Kopf-/Fußbausteinen und Serienbrief-Funktion. Ausgabe als DOCX oder PDF.


Sinn & Zweck

Jede Teilnehmergemeinschaft schreibt immer wieder dieselben Standarddokumente (Anschreiben, Vereinbarungen, Bescheide …). Bisher hieß das: Word-Datei suchen, Adressen und Namen von Hand eintragen, Tippfehler riskieren.

Das TG-Vorlagensystem dreht das um:

  • Der Verband stellt geprüfte Standardvorlagen zentral bereit (globale Vorlagen) jede TG sieht sie automatisch.
  • Jede TG pflegt zusätzlich ihre eigenen Vorlagen und kann eine globale Vorlage bei Bedarf durch eine eigene Fassung ersetzen (Override).
  • Stammdaten werden automatisch eingesetzt: TG-Adresse, Vorsitz, Ansprechpartner, Datum usw. müssen nie wieder abgetippt werden.
  • Beim Erzeugen fragt das System nur noch die wirklich variablen Werte ab und liefert das fertige Dokument als DOCX oder PDF.

Das Modul liefert dabei nur Oberfläche, Speicherung und die TG-Standardplatzhalter das eigentliche Befüllen, Verknüpfen, die DOCX→PDF-Wandlung und der Serienbrief laufen über die bestehende Word-Engine require/require-word.php (PHPWord).


Rollen / Wer darf was

Rolle Rechte
Verbandsmitarbeiter (is_verbandsmitarbeiter()) verwaltet die globalen Vorlagen für alle TGen; die TG-Auswahl dient nur als Datenkontext zum Testen
TG-Vorsitz / Sachbearbeiter (is_tg() + tg_access(vkz)) pflegt eigene Vorlagen und kann globale Vorlagen durch eigene Fassungen überschreiben

Arten von Vorlagen

Geltungsbereich (scope)

  • global vom Verband bereitgestellt, für alle TGen sichtbar.
  • tg eigene Vorlage einer einzelnen TG.
  • Override eine eigene TG-Vorlage ersetzt gezielt eine globale (override_of).

Die effektive Vorlagenliste einer TG = globale Vorlagen (ohne überschriebene) + eigene Vorlagen.

Typ (typ)

  • einzel eigenständige Vorlage.
  • teil Baustein (z. B. Kopf-/Fußzeile) zum Einbetten oder Anhängen.
  • master verknüpfte Vorlage, die Bausteine einbettet oder aneinanderhängt (siehe Verknüpfte Vorlagen).

Die DOCX-Dateien selbst liegen im zentralen Dateisystem (Ordner <VKZ>/Vorlagen bzw. 0/Vorlagen für globale); in der Datenbank (TG_VORLAGE) stehen nur die Metadaten.


Platzhalter

Im Word-Dokument werden Platzhalter als Text in der Form ${NAME} geschrieben. Beim Erzeugen ersetzt das System sie durch die passenden Werte.

Automatisch befüllt (Standardplatzhalter)

TG-Stammdaten ${TG_NAME} · ${TG_KURZ} · ${TG_VKZ} · ${TG_STRASSE} · ${TG_PLZ} · ${TG_ORT} · ${TG_PLZORT} · ${TG_TELEFON} · ${TG_FAX} · ${TG_MAIL} · ${TG_ADRESSE}

Personenrollen je Rolle derselbe Feldsatz _ANREDE, _ANREDEKOMPLETT, _NAME, _VORNAME, _NACHNAME, _MAIL, _TELEFON, _MOBIL, _DURCHWAHL, _FUNKTION, kombiniert mit:

Präfix Person
VORSITZ_… Vorsitz der TG
STELLV1_… / STELLV2_… 1. / 2. Stellvertretung
ANSPRECH_… Ansprechpartner
NUTZER_… aktuell angemeldete:r Benutzer:in

Beispiel: ${VORSITZ_NACHNAME}, ${ANSPRECH_MAIL}, ${NUTZER_FUNKTION}.

Datum/Zeit (Zeitzone Europe/Berlin) ${HEUTE} · ${HEUTE_LANG} · ${WOCHENTAG} · ${TAG} · ${MONAT} · ${JAHR} · ${UHRZEIT}

Eingabe beim Erzeugen

  • Freie Platzhalter jeder weitere ${X} im Dokument wird beim Erzeugen automatisch als Eingabefeld angeboten.
  • Eigene (typisierte) Felder im „Bearbeiten"-Dialog lassen sich Felder mit Label und Typ definieren (text, zahl, select mit Auswahlwerten). Sie werden im Erzeugen-Dialog typgerecht gerendert. Der Button „Aus Dokument" liest die erkannten freien ${…} aus und legt passende Feldzeilen an.

Bild-Platzhalter (QR / Barcode / GiroCode)

Auch als Text ${NAME} ins Dokument schreiben beim Erzeugen wird der Platzhalter durch das erzeugte Bild ersetzt:

Platzhalter Inhalt
${QRCODE} beliebiger QR-Code
${BARCODE} Strichcode
${GIROCODE} SEPA-Überweisungs-QR (EPC069-12, ECC-Level M) mit IBAN/BIC/Betrag/Verwendung

Registriert werden sie pro Vorlage über settings.bilder; die konkreten Werte (z. B. Betrag, Verwendungszweck) erfasst der Erzeugen-Dialog.


Verknüpfte Vorlagen

Eine master-Vorlage kann Bausteine (teil) zusammenführen:

  • Einbetten die Master-DOCX enthält ${KOPF} / ${FUSS}; die gefüllten Bausteine werden an diese Stellen eingebettet (mit LibreOffice-Round-Trip für Word-Strict-Konformität).
  • Merge mehrere Teil-Vorlagen werden jeweils gefüllt und dann aneinandergehängt.

So lassen sich z. B. einheitliche Kopf-/Fußzeilen einmal pflegen und in vielen Vorlagen wiederverwenden.


Serienbrief

Ein Dokument für viele Empfänger aus einer Tabelle:

  1. XLSX hochladen (wird nur transient verarbeitet, nicht dauerhaft gespeichert).
  2. Spalten → Platzhalter zuordnen.
  3. Ausgabe als ZIP (einzelne Dateien), DOCX (Sammeldokument) oder PDF.

Die TG-Standardplatzhalter bleiben dabei für alle Zeilen konstant, die zugeordneten Spalten variieren je Empfänger.

Bild-Platzhalter je Zeile lassen sich an XLSX-Spalten binden typischer Fall Beitragsbescheid: jeder Empfänger erhält einen GiroCode mit individuellem Betrag und Verwendungszweck, während IBAN/BIC fester Default bleiben. Beträge werden robust geparst (deutsche „1.234,56" wie englische „1234.56").


Alt-Vorlagen mit Feldfunktionen (MACROBUTTON)

Der historische VLN-Vorlagenbestand nutzt MACROBUTTON-Feldfunktionen mit Anzeigetext [ Label ] statt ${…}. Diese werden von der Engine nicht erkannt und müssen vor dem Einsatz in echte ${…}-Platzhalter umgewandelt werden.

Beim Hochladen erkennt das System solche Feldfunktionen automatisch und öffnet einen Konvertier-Dialog: Da die Labels oft mehrdeutig sind (viele [ Name ] für TG/Bauträger/Vorsitz …), erfolgt die Zuordnung kontextbezogen Feld für Feld. Die konvertierte DOCX ersetzt die alte; Nicht-Standard-Felder werden direkt als eigene Felder hinterlegt.

Beispiel im Ordner beispiel/: Finanzierungsvereinbarung_Kostenbeteiligung_TG.docx (58 Body- + 4 Kopfzeilenfelder → 28 Platzhalter).


Ausgabe & Download

  • Erzeugen und Serienbrief liefern eine fertige Datei zum Download (Streaming mit Content-Disposition, temporäre Dateien werden danach aufgeräumt).
  • DOCX → PDF über LibreOffice (soffice) im Container.
  • Rohvorlage herunterladen die gespeicherte, unbefüllte DOCX (mit ${…}-Platzhaltern) lässt sich herunterladen, in Word anpassen und wieder hochladen.
  • Downloads laufen ohne target="_blank" (PWA-Geisterfenster-Falle).
S
Description
No description provided
Readme 32 KiB