Textmarken für die docx-Schreibenerstellung

Zurück

Für die Definition von Textmarken stehen die folgenden Typen zur Verfügung (welche mit einem Gleichheitszeichen ans Ende der Textmarke gesetzt werden, z.B. =TEXT()): die unterschiedlichen Typen unterstützen optionale Parameter zur weiteren Konfiguration. Diese Parameter können z.T. auch kombiniert werden und werden semikolon-separiert in die runden Klammern geschrieben.
Die möglichen Parameter lauten Addition, Format, Default, Auswahl und Pflicht.

Textmarke Bedeutung
$...=DATE()$ Definition der Textmarke als Angabe eines Tagesdatums innerhalb der Vorlage.
Unterstützte Parameter:
  • Addition: Wert. Addiert die angebene Zahl an Tagen im fertigen Word-Dokument
  • Default: Heute. Im Textersetzungsdialog wird das Feld mit dem heutigen Datum vorausgefüllt. Das vorbelegte Datum lässt sich durch Angabe einer Zahl konfigurieren (z.B. ergibt Default: Heute +2 das Datum von Übermorgen)
  • Pflicht: true. Es handelt sich um ein Pflichtfeld, welches im Textersetzungsdialog in jedem Fall ausgefüllt werden muss
  • Format: Wert. Formatiert das ausgebene Datum in der Worddatei
Beispiele für die Textmarke $DATE befinden sich hier.
$...=DATETIME()$ Definition der Textmarke als Angabe eines Tagesdatums inklusive Uhrzeit. Unterscheidet sich nicht von Date() außer der Möglichkeit eine Uhrzeit anzugeben (alle dort genannten Parameter funktionieren hier analog)

Beispiele für die Textmarke $DATETIME befinden sich hier.
$...=TEXT()$ Definition der Textmarke als Textfeld.
Unterstützte Parameter:
  • Pflicht: true. Es handelt sich um ein Pflichtfeld, welches im Textersetzungsdialog in jedem Fall ausgefüllt werden muss
  • Auswahl: Auswahlmöglichkeiten. Anstatt eines Freitextes kann aus mehreren Möglichkeiten ausgewählt werden
  • Mehrfachauswahl: Anstatt eines Freitextes können aus mehreren Möglichkeiten beliebig viele Möglichkeiten ausgewählt werden, welche Komma-separiert eingefügt werden.
  • Default: Text. Der aufgeführte Text wird als Defaultwert im Textersetzungsdialog gesetzt
  • Regex: Regulärer Ausdruck. Auf den Wert der Textmarke wird der angegebene 'Reguläre Ausdruck' angewendet.
    Wenn ein fehlerhafter 'Regulärer Ausdruck' angegeben werden sollte, wird kein Fehler gemeldet, stattdessen wird der Wert der Textmarke unverändert übernommen.
    Daher ist es ratsam, die 'Regulären Ausdrücke' zuerst auf einer Webseite zu testen. Beispielsweise unter (z.B. regex-testdrive).
    Falls diese dort zu einem Testwert das gewünschte Ergebnis liefern, kann der 'Reguläre Ausdruck' in die Schreibenvorlage übernommen werden.
Beispiele für die Textmarke $TEXT befinden sich hier.
$...=TEXTAREA()$ Definition der Textmarke als mehrzeiliges Texteingabefeld.
Unterstützte Parameter:
  • Pflicht: true. Es handelt sich um ein Pflichtfeld, welches im Textersetzungsdialog in jedem Fall ausgefüllt werden muss
  • Default: Text. Der aufgeführte Text wird als Defaultwert im Textersetzungsdialog gesetzt
Beispiele für die Textmarke $TEXTAREA befinden sich hier.
$...=NUMBER()$ der Eintrag in das definierte Textfeld wird auf Zahlenwerte beschränkt.
Unterstützte Parameter:
  • Pflicht: true. Es handelt sich um ein Pflichtfeld, welches im Textersetzungsdialog in jedem Fall ausgefüllt werden muss
  • Format: Nummer. Das entsprechende Dialogfeld wird auf die maximale Eingabe von dort angebener Ziffer beschränkt
  • Addition: Wert. Addiert die angebene Zahl im fertigen Word-Dokument.
    Diese Eigenschaft erlaubt es ebenfalls Additionen von Textmarken vorzunehmen oder manuelle, frei vom Benutzer bestimmbare Werte auf bestehende Textmarken addieren zu können.
    Dabei ist natürlich darauf zu achten, dass nur Werte mit der gleichen Eigenschaft sinnvoll zu addieren sind.
Beispiele für die Textmarke $NUMBER befinden sich hier.
$...=EURO()$ Die Angaben innerhalb der Textfelder werden als Eurobetrag behandelt.
Unterstützte Parameter:
  • Pflicht: true. Es handelt sich um ein Pflichtfeld, welches im Textersetzungsdialog in jedem Fall ausgefüllt werden muss
  • Format: Nummer. Das entsprechende Dialogfeld wird auf die maximale Eingabe von dort angebener Ziffer beschränkt
  • Addition: Wert. Addiert den angebenen Betrag im fertigen Word-Dokument.
    Diese Eigenschaft erlaubt es ebenfalls Additionen von Textmarken vorzunehmen oder manuelle, frei vom Benutzer bestimmbare Werte auf bestehende Textmarken addieren zu können.
    Dabei ist natürlich darauf zu achten, dass nur Werte mit der gleichen Eigenschaft sinnvoll zu addieren sind.
Der Nachkommabereich ist dabei stets 2-stellig.
Beispiele für die Textmarke $EURO befinden sich hier.

Ersetzungsmarken für das Einfügen von Dateien bzw. Texten:
$EinfügenDatei='pfad\zur\Datei'.docx$ fügt dem Schreiben die angegebene Word-Datei ein. Es wird nur das Format docx unterstützt.
Durch die Eingabe dieser Marke, gefolgt von dem Pfad der einzufügenden Datei, kann das Word-Dokument um die angegebene Datei ergänzt werden.

Durch die Angabe von $EinfügenDatei=..\doc\{AMT_KZ}\signatur.docx$ kann der Pfad noch um das aktuell verwendete Verzeichnis ergänzt werden. Dieses ist mit dem Amtkennzeichen gleichzusetzen und wird durch die Eingabe der geschweiften Klammern ermöglicht.

Gleiches gilt für die Marke $EinfügenDatei={TEXTE}\...$. Diese ermöglicht die Einbindung von vorhandenen Dateien, die innerhalb des IFAS-Ablageverzeichnisses gespeichert werden und bei einer Schreibenerstellung mit ausgegeben werden können.

Diese Einfügemarke eignet sich um einen Text zum Abschluß des Dokumentes 'anzuhängen'.
Die Einbindung innerhalb eines Fließtextes (Text .... diese Einfügemarke ... Text) kann nicht vorgenommen werden.
In diesen Fällen ist die Textmarke $EinfügenDateiText$ zu verwenden.
$EinfügenDateiText='pfad\zur\Datei'.docx$ fügt dem Schreiben die angegebene Word-Datei ein.
Durch die Eingabe dieser Marke, gefolgt von dem Pfad der einzufügenden Datei, kann das Word-Dokument um die angegebenen Dateien ergänzt werden.

Im Gegensatz zur Marke $EinfügenDatei=...$ wird die ursprüngliche Formatierung des einzufügenden Textes nicht beibehalten. Diese Textmarke eignet sich dadurch besser, um Text aus einer anderen Word-Datei in einen bestehendem Text einzufügen.
Durch die Angabe von $EinfügenDateiText=..\doc\{AMT_KZ}\signatur.docx$ kann der Pfad noch um das aktuell verwendete Verzeichnis ergänzt werden. Dieses ist mit dem Amtkennzeichen gleichzusetzen und wird durch die Eingabe der geschweiften Klammern ermöglicht.


Beispiele für die Textmarke $DATE:
Parameter Bedeutung Textmarke
Addition; Default; Pflicht; Im Textersetzungsdialog wird der Wert mit dem heutigen Datum vorbelegt, es muss ein Datum ausgewählt werden, und im fertigen Worddokument werden zu diesem Datum 14 Tage aufaddiert. $BeispielDatum=DATE(Addition:+14; Default: heute; Pflicht:true)$
ohne Datumersetzung ohne Eingabe innerhalb des Ersetzungsdialoges (Wichtig, die Variable muss zwingend „Datum=“ benannt sein) $Datum=DATE$
Addition: Datumersetzung ohne Eingabe innerhalb des Ersetzungsdialoges + 8 Tage (Wichtig, die Variable muss zwingend „Datum=“ benannt sein) $Datum=DATE(Addition:+8)$
ohne Heutiges Datum dd.MM.yyyy ohne Eingabe innerhalb des Ersetzungsdialoges (Wichtig, die Variable muss zwingend „Datum=“ benannt sein) $Datum=DATE$ bzw. $Datum=DATE()$
Format; Default; Heutiges Datum vorbelegt yyyy-MM-dd $Heutiges Datum vorbelegt, Formatierung yyyy-MM-dd=DATE(Format:yyyy-MM-dd; Default: Heute)$
Format; Default; Heutiges Datum vorbelegt EE dd.MM.yyyy: $Heutiges Datum vorbelegt, Formatierung EE dd.MM.yyyy =DATE(Format: EE dd.MM.yyyy; Default: Heute)$
Default; Pflicht; Heutiges Datum Pflichtfeld ddMMyyyy $Heutiges Datum vorbelegt Formatierung ddMMyyyy, Pflichtfeld=DATE(Default: Heute; Pflicht)$
Addition; Heutiges Datum plus 8 Tage $Heutiges Datum plus 8 Tage =DATE(Addition: + 8)$
Addition; Default; Heutiges Datum minus 7 Tage $Heutiges Datum minus 7 Tage =DATE(Addition: - 7; Default: Heute)$
Addition; Default; Heutiges Datum plus 8 Tage vorbelegt $Heutiges Datum plus 8 Tage vorbelegt=DATE(Default: Heute; Addition: + 8)$

Beispiele für die Textmarke $DATETIME:
Parameter Bedeutung Textmarke
Format; Ausgabe des Datums in Form von tt.MM.JJJJ und hh:mm $BeispielDatumUhrzeit=DATETIME(Format: dd.MM.yyyy hh:mm)$
ohne Datum und Uhrzeit $DatumUndUhrzeitEingabefeld=DATETIME()$
Default; Datum und Uhrzeit $DatumUndUhrzeitEingabefeld vorbelegt=DATETIME(Default: Heute)$
Default; Format; Datum und Uhrzeit vorbelegt, Formatierung yyyy-MM-dd HH:mm $DatumUndUhrzeitEingabefeld vorbelegt Formatierung yyyy-MM-dd HH:mm =DATETIME(Default:heute; Format: yyyy-MM-dd HH:mm)$

Beispiele für die Textmarken $TEXT und $TEXTAREA:
Definition eines Auswahlfeldes mit verschiedenen Anreden als Pflichtfeld:
$Anrede=TEXT(Auswahl:/Sehr geehrte Damen und Herren/Sehr geehrter Herr/Sehr geehrte Frau; Pflicht)$.


Die folgenden Möglichkeiten stehen dann zur Auswahl:


Alternativ kann man die Auswahlliste auch ohne leeres Element erzeugen, dann ist immer der erste Eintrag vorausgewählt:
$Anrede=TEXT(Auswahl:Sehr geehrte Damen und Herren/Sehr geehrter Herr/Sehr geehrte Frau; Pflicht)$


Es besteht ebenfalls die Möglichkeit, das Feld als optionales Feld (es muss keine Auswahl getroffen werden) zu konfigurieren:
$Anrede=TEXT(Auswahl:Sehr geehrte Damen und Herren/Sehr geehrter Herr/Sehr geehrte Frau)$



Für den Fall, dass mehrere Einträge zur Auswahl in Betracht kommen, kann ebenfalls eine Mehrfachauswahl definiert werden.
$zutreffende Wochentage auswählen =TEXT(Mehrfachauswahl: Montag/Dienstag/Mittwoch/Donnerstag/Freitag)$


Parameter Bedeutung Textmarke
Default; Texteingabefeld mit Standardwert $Texteingabefeld vorbelegt=TEXT(DEFAULT:Geschäftsleitung)$
ohne Texteingabefeld ohne Standardwert $Texteingabefeld ohne Standardwert = TEXT()$
Pflicht; Texteingabefeld Pflichtfeld ohne Standardwert $Texteingabefeld Pflichtfeld = TEXT(Pflicht)$
Format; Texteingabefeld max. Länge 5 $Texteingabefeld max. Länge 5 = TEXT(Format: 5)$
Default; Mehrzeiliges Texteingabefeld mit Standardwert $Mehrzeiliges Texteingabefeld vorbelegt=TEXTAREA(DEFAULT:Geschäftsleitung)$
Default; Pflicht; Mehrzeiliges Texteingabefeld mit Standardwert und verpflichtender Angabe $BeispielTexteingabefeld=TEXTAREA(Default:Angaben zur Person; Pflicht)$
ohne Mehrzeiliges Texteingabefeld ohne Standardwert $Mehrzeiliges Texteingabefeld vorbelegt=TEXTAREA()$
Auswahl; Auswahlfeld mit 4 Werten $Auswahlfeld mit 4 Werten =TEXT(Auswahl:Auswahl 1/Auswahl 2/Auswahl 3/ und Auswahl 4)$
Auswahl; Default; Auswahlfeld mit 4 Werten vorbelegt $Auswahlfeld mit 4 Werten vorbelegt=TEXT(Auswahl:Auswahl 1/Auswahl 2/Auswahl 3/ und Auswahl 4; Default:Auswahl2)$
Auswahl; Auswahlfeld mit 1 Wert $Auswahlfeld mit 1 Wert=Text(Auswahl:Wert1)$
Mehrfachauswahl; Mehrfachauswahl mit 3 Werten $Auswahlfeld mit 3 Werten=Text(Mehrfachauswahl:Wert1/Wert2/Wert3)$
Mehrfachauswahl; Format; für die Gestaltung der Aufzählungsergebnisse $Auswahlfeld mit 3 Werten=Text(Mehrfachauswahl:Wert1/Wert2/Wert3; Format: •)$
für das Erscheinungsbild

   • Wert1
   • Wert2
   • Wert3

Möglich dabei ist eine Angabe von vorhandenen bzw. definierten Aufzählungszeichen.

$Beurteilungskriterien wählen=Text(Mehrfachauswahl:bestandene Sichtprüfung/Stressprüfung durchgeführt/Nachkontrolle beanstandungsfrei; Format: ✔)$

ergibt beispielsweise, nach Auswahl von 2 der 3 vorgeschlagenen Optionen:

   ✔ bestandene Sichtprüfung
   ✔ Nachkontrolle beanstandungsfrei
Regex; Anwendung eines 'Regulären Ausdrucks' auf die Betriebsstättennummer . Beispielsweise für eine gewünschte Formatierung ohne Amtangaben. $BS_NR=TEXT(Regex: [0-9]*)$ ==> aus einer Betriebsstättennummer DU 01234567 wird dann 01234567
Regex; Anwendung eines 'Regulären Ausdrucks' um den Wert der Textmarke auf die ersten n-Stellen zu begrenzen. Beispielsweise um nur das Amt einer Betriebsstätte zu erhalten, ohne die Nummer. $BS_NR=TEXT(Regex: ^.{3})$ ==> aus einer Betriebsstättennummer DU 01234567 wird dann DU

Beispiele für die Textmarke $NUMBER:
Parameter Bedeutung Textmarke
Format; das entsprechende Dialogfeld wird auf die maximale Eingabe von drei Ziffern beschränkt $BeispielZahl=NUMBER(Format:3)$
Format; Nur Zahlen erlaubt, max. 10 Vorkommastellen $Nur Zahlen erlaubt=NUMBER(Format:10)$
Format; Nur Zahlen erlaubt, max. 10 Vorkommastellen $Nur Zahlen erlaubt=Number(Format:10)$
Addition; Zifferneingabe + 100 $Zifferneingabe plus 100=NUMBER(Addition: + 100)$
Addition; Addition von frei definierten Textmarken. Beispielsweise Zahlbar bis Jahresfrist + *aktuelles Jahr* $Jahresfrist=NUMBER(Addition: {YYYY})$
Addition; Aditionsoperationen mit bestehenden Textmarken. Am Beispiel für den Wert des nächstes Jahres: $YYYY=NUMBER(Addition: 1)$
Addition; Aditionsoperationen mit frei definierten Textmarken. Am Beispiel für die Verstöße der letzten Jahre: $Verstoesse_letztes_Jahr=NUMBER()$
$Verstoesse_vorletztes_Jahr=NUMBER()$
$Verstoesse_dieses_Jahr=NUMBER(Addition: {Verstoesse_letztes_Jahr} {Verstoesse_vorletztes_Jahr})$

Beispiele für die Textmarke $EURO:
Parameter Bedeutung Textmarke
Format; Pflicht; das Dialogfeld wird auf die maximale Eingabe von sechs Ziffern beschränkt. Es handelt sich um ein Pflichtfeld.
Dadurch kann beispielsweise eine Fehleingabe von überhöhten Beträgen vermieden werden
$BeispielEurobetrag=EURO(Format:6; Pflicht)$
ohne Währung $Währung=Euro()$
Format; Währung, max. 99€ $Währung (max. 99€)=EURO(Format: 2)$
Format; Währung, max. 999€ $Währung (max. 999€)=EURO(Format: 3)$
Addition; Addition von frei definierten Textmarken in Kombination von bestehenden Textmarken:
Gesamtgebühr als Summe einzelner Positionen
$Bearbeitungskosten=EURO(Addition: {VerwarnbetragEUR} {Zustell})$
wobei $VerwarnbetragEUR$ und $Zustell$ falls vorhanden, vom Programm gefüllt werden.
Oder durch die Berechnung einer Summe von drei eingebaren Werten:
$Saeumniszuschlag=EURO()$
$Portokosten=EURO()$
Der zu entrichtende Betrag enthält die Kosten in Höhe von $Verwaltungsgebuehr=EURO(Addition: {Saeumniszuschlag} {Portokosten})$ €
Addition; Addition von bestehenden Textmarken:
Als Summe von Verwarnbetrag und Zustellgebühr:
$VerwarnbetragEUR=EURO(Addition: {Zustell})$
Addition; Addition von frei definierten Textmarken in Kombination von bestehenden Textmarken und einem festen Betrag:
Gesamtgebühr als Summe einzelner Positionen
$Bearbeitungskosten=EURO(Addition: {VerwarnbetragEUR} {Zustell} +35,00)$
wobei $VerwarnbetragEUR$ und $Zustell$ falls vorhanden, vom Programm gefüllt werden.

Im Modul Schaublattauswertungstehen spezielle Textmarken zur Verfügung:

Textmarke Bedeutung
$BGVListe$ (docx)
gibt innerhalb des erstellten Schreibens die Liste der festgestellten Verstöße aus.
Durch die Verwendung des Zusatzes =Schwere ($BGVListe=Schwere$) wird die Liste um die Angaben zur Schwere des jeweiligen Verstosses erweitert.
So wie innerhalb des nachfolgend abgebildeten Beispielfalles:


Ausschnitt aus einem erstellten Schreiben inklusive Angabe der Verstoßschwere

$BGGeldbuße$ durch die Angabe dieser Textmarke wird die Liste der festgestellten Geldbußen ausgegeben.
Zu jeder Tateinheit der Bußgeldberechnung wird die Höhe der Geldbuße zusammengefasst und ausgegeben.
Beipielsweise bei zwei festgestellten Tateinheiten in der nachfolgend abgebildeten Form:

Ausschnitt aus einem erstellten Schreiben

$BGVorlage$ diese Textmarke wird durch den Eintrag ersetzt, ob die jeweils festgestellten Verstöße der Tateinheit vorsätzlich oder fahrlässig begangen wurden.
So wie bei zwei festgestellten Tateinheiten im folgenden Beispiel:

In der Tateinheit 1 wurden sowohl fahrlässig als auch vorsätzlich begangene Verstöße festgestellt


Ersetzungsdialog und Formatierungsprüfung

Bei einer Schreibenerstellung erscheint gegebenenfalls ein Ersetzungsdialog, falls nicht alle Textmarken vom Programm gesetzt werden können, oder falls variable Textmarken existieren, die beispielsweise aktuelle Tagesdaten oder Fristen definieren.
Diese erscheinen dann innerhalb des Ersetzungsdialoges, in dem dann die fehlenden Angaben erfasst werden können und die Datumsangaben überprüft werden können.


Im rechten Bereich des Fensters befindet sich der Vorschau-Bereich des Schreibens, in dem die Schreibenerstellung bzw. die Textmarkenersetzungen überprüft werden kann.
Durch eine Betätigung der Schaltfläche Aktualisieren werden die getätigten Angaben in die Vorschau übernommen.
Gleichzeitig wird eine Überprüfung der Textmarkenformatierung durchgeführt. Auf diese Weise kann in Erfahrung gebracht werden, warum die durchzuführende Textmarkenersetzung nicht, oder nicht in der gewünschten Form erfolgt ist.
Der Fehler-Hinweis erscheint innerhalb des Tooltips und die Vorlagen können entsprechend korrigiert werden.
Innerhalb der folgenden Abbildung stimmt beispielsweise etwas nicht mit der Textmarke, die Uhrzeit und Datum ausgeben soll.
Im Eingabefeld befindet sich lediglich das Datum.

Ein "Tippfehler" verhindert hier die ordnungsgemäße Ersetzung



Probleme bei der Schreibenerstellung

Defekte docx-Dateien nach der Schreibenerstellung

Nach der Erstellung einer docx-Vorlage kann es zu folgendem "Phänomen" kommen: Es wird in einem der IFAS-Module ein Schreiben erstellt, ohne dass ein Fehler gemeldet wird. Anschließend öffnet sich Word mit der erstellten Datei und es erscheint so eine oder ähnliche Fehlermeldung:



In diesem Fall kann es helfen, ein neues, leeres Word-Dokument zu erstellen und den gesamten Inhalt der alten Vorlage über Copy and Paste in die neue Datei zu kopieren. Wird diese neue Datei anschließend unter dem gleichen Namen abgespeichert, ist anschließend eine Schreibenerstellung ohne Fehlermeldung in Word möglich.

Umschalten auf alternative Schreibenerstellung

Es gibt einige Elemente in Word-Vorlagen (z.B. Checkboxfelder oder Textmarken) welche zu Problemen in der fertigen Docx-Datei führen. Hier kann es zu einer zunächst fehlerfreien Erstellung der Docx-Datei kommen (weder IFAS noch Word meldet einen Fehler), aber in der fertigen Docx-Datei sind dann diese Elemente nicht mehr vorhanden.
Bei einfachen Docx-Vorlagen kann die Schreibenerstellunng auf eine andere Variante umgestellt werden: Hierzu muss hinter dem Namen der Vorlage innerhalb des Schreiben-Kataloges, beispielsweise BK_DOT, am Ende der Eintrag '=Formular' ergänzt werden:

Diese Variante funktioniert gut in einfachen Vorlagen (Vorlagen ohne Bilder, Tabellen, Kopf- und Fußzeilen), kann aber bei aufwendigeren Vorlagen zu Problemen führen. Hier hilft im Zweifelsfall ein Ausprobieren und evtl. kann durch ein Anpassen der Vorlage eine fehlerfrei Docx-Datei erzeugt werden.


Anpassen der VM-Dateien für neue SBA-Version

Um bei der SBA-Version Umlautfehler zu vermeiden, müssen an folgenden Vorlagedateien im Vorlageverzeichnis Ergänzungen durchgeführt werden: Von diesen 4 Dateien sind nicht unbedingt alle im Vorlagenverzeichnis vorhanden, da die vom SBA-Modul mitgelieferten Vorlagedateien genutzt werden. Diese fehlenden Dateien müssen nicht weiter beachtet werden.

Im Kopfbereich müssen in allen Dateien der HTML-Tag sowie ein HEAD-Tag ergänzt werden.
Der obere Teil der Datei muss so aussehen:
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"></meta>
</head>
Beispiel an einer Datei tateinheit.vm.

Alte VersionNeue Version

<html>
<body>
<b>Verstossliste $TATEINHEIT.getLfdNr()</b>
<br/>
#if($VELOCITYTOOLS.isNotEmpty($TATEINHEIT.getOwigVerstossVelocityDataList()))
    #foreach ($VERSTOSSLISTE in $TATEINHEIT.getOwigVerstossVelocityDataList())
        <br/>
        #set ($VERSTOSS = $VERSTOSSLISTE.get(0))
        #set ($TEMPLATE = "vorlagen/sba/owig/" + $VERSTOSSLISTE.get(0).getVmFile())
        #parse($TEMPLATE)
        <br/>
        Ordnungswidrigkeit im Sinne des $VERSTOSS.getOrdnungswidrigImSinne() 
        #if($VERSTOSS.getVerstossGegen())
        in Verbindung mit $VERSTOSS.getVerstossGegen()
        #end
        <br/><br/>
    #end
#end
<br/>
<br/>
</body>
</html>

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"></meta>
</head>
<body>
<b>Verstossliste $TATEINHEIT.getLfdNr()</b>
<br/>
#if($VELOCITYTOOLS.isNotEmpty($TATEINHEIT.getOwigVerstossVelocityDataList()))
    #foreach ($VERSTOSSLISTE in $TATEINHEIT.getOwigVerstossVelocityDataList())
        <br/>
        #set ($VERSTOSS = $VERSTOSSLISTE.get(0))
        #set ($TEMPLATE = "vorlagen/sba/owig/" + $VERSTOSSLISTE.get(0).getVmFile())
        #parse($TEMPLATE)
        <br/>
        Ordnungswidrigkeit im Sinne des $VERSTOSS.getOrdnungswidrigImSinne() 
        #if($VERSTOSS.getVerstossGegen())
        in Verbindung mit $VERSTOSS.getVerstossGegen()
        #end
        <br/><br/>
    #end
#end
<br/>
<br/>
</body>
</html>