Das Servlet verarbeitet bei der Maskenausführung zuerst die Maskenfelder, die mit den Steuerungszeichen "<<" und ">>" in das select_stmt eingefügt werden.
So wird z.B. bei der Anweisung
<#if (einFach.strukturStr = "Fach (intern)" && <>=10 )>
im Servlet zunächst die Variable "Aggregierung Fach " aufgelöst und dann erst startet der Freemarker-Parser. Für das o.g. Statement würde also zunächst:
<#if (einFach.strukturStr = "Fach (intern)" && 10=10 )>
ersetzt und dann die Freemarker-IF-Bedingung ausgewertet.
So können Sie z.B. auch Checkboxen auswerten, wenn sie nicht angekreuzt sind: nehmen wir an das Feld heißt "nur aktuelle Stg." und hat den Typ "char" und die art=10, dann wäre der Code:
<#if "<>" ="https://superxhosting.de/wiki/index.php/null">
select 'Beispiel: nur aktuelle Stg. nicht angekreuzt' from xdummy; #if>
Wenn das Feld nicht angekreuzt ist, macht der SuperX-Parser daraus zunächst
<#if "https://superxhosting.de/wiki/index.php/null" ="https://superxhosting.de/wiki/index.php/null">
und Freemarker würde diese if-Bedingung mit "wahr" beantworten und den SQL "select 'Beispiel: nur aktuelle Stg. nicht angekreuzt' from xdummy;" ausführen.
Wenn das Feld angekreuzt wird, macht der SuperX-Parser daraus zunächst
<#if "'true'" ="https://superxhosting.de/wiki/index.php/null">
und Freemarker würde diese if-Bedingung mit "falsch" beantworten und den SQL "select 'Beispiel: nur aktuelle Stg. nicht angekreuzt' from xdummy;" nicht ausführen.