Schleifen und Bedingungen in pdfMachine merge

Liquid ermöglicht die Anwendung von Formatierungen, die Durchführung von Schleifen, Bedingungen usw. basierend auf den Werten aus Ihrer Datenquelle. Die Standard-Filter und -Tags werden unterstützt, wie in Liquid For Designers und DotLiquid For Designers beschrieben.

Hinweis: Um Liquid Templating Tags im E-Mail-Text zu verwenden, muss der E-Mail-Text-Editor immer im "Source"-Modus sein. Der "wysiwyg"-Modus bewahrt die Liquid Tags nicht.

Beispiele zur Formatierung von Seriendruckfeldern finden Sie hier.

Liquid Tags - Bedingungen

Bedingte Ausgabe ermöglicht die Steuerung der Anzeige von Inhalten basierend auf dem Wert des Seriendruckfeldes. Dies kann mithilfe der Standard-Liquid-Tags wie dem 'if/else'- oder 'unless'-Tag in einer HTML-Vorlage/im E-Mail-Text oder in einer Word-Vorlage erfolgen.

Tags sind die Programmierlogik, die Vorlagen mitteilt, was zu tun ist. Tags sind in {% %}-Zeichen eingeschlossen.

z.B. Das Folgende wird nur ausgegeben, wenn die Zelle "name" in der Datenquelle Daten enthält:

            Eingabe:
                    {% if name != "" %}
                        Hello {{ name }}
                    {% endif %}
            Ausgabe:
                    Hello John
            



z.B. Das Folgende wird nur ausgegeben, wenn die Zelle "age" in der Datenquelle einen Wert größer oder gleich 18 hat:

            Eingabe:
                    {% unless age >= 18 %}
                         Parent / Guardian signature is required.
                    {% endif %}
            Ausgabe, wenn der Wert von age größer als 18 ist:
                    Parent / Guardian signature is required.
            

Schleifen

Das Durchlaufen von Zeilen zur Anzeige von Positionselementen kann mit einer der folgenden Methoden in einer HTML-Vorlage erfolgen:

Wenn Sie Seriendruckfelder für Schleifen referenzieren, verwenden Sie Kleinbuchstaben für das Seriendruckfeld. Zum Beispiel sollte {{row.name | repeat_row}} verwendet werden, nicht {{row.Name | repeat_row}}. Alles nach dem . muss in Kleinbuchstaben sein.

Sehen Sie sich das Beispielprofil an, das zeigt, wie Zeilen durchlaufen und Positionselemente in einer Word-Vorlage erstellt werden hier.

Die repeat_row-, repeat_par-Filter

repeat_row

Wiederholt die aktuelle Tabellenzeile. Funktioniert mit HTML- und Word-Vorlagen. Beispiel ansehen.

repeat_par

Für HTML-Dokumente: Wiederholt die aktuellen P-, LI- oder DIV-Blöcke.
Für Word-Dokumente: Wiederholt den aktuellen Absatz.

Dies kann verwendet werden, wenn die "Zeilen zu E-Mails-Methode" auf "Eine oder mehrere Zeilen generieren eine E-Mail" eingestellt ist, was den Effekt hat, Zeilen basierend auf einem Seriendruckfeld, meist der E-Mail-Adresse, zu gruppieren.

HINWEIS: Sie setzen den Filter auf genau ein Datenelement in der Zeile oder dem Absatz, den Sie wiederholen.

Beachten Sie im Beispiel, dass den Seriendruckfeldnamen "row." vorangestellt werden muss.

repeat_row Beispiel

            Eingabe:
                             
Name Amount
{{row.name | repeat_row}} {{row.amount}}
Ausgabe:
Name     Amount
Dave     1230
Dave     1000

repeat_par Beispiel

                    "=""> Eingabe:
                    
Name: {{ row.name | repeat_par }}
Amount: {{ row.amount }}
Ausgabe:
Name: Dave
Amount: 1230
Name: Dave
Amount: 1000

Diese Filter sind eine Abkürzung für die Liquid 'for'-Schleife. Konkret wird der Liquid-Tag "{% for row in _rows %}" um den Absatz oder die Zeile platziert. Die Liquid for-Schleife funktioniert nicht gut mit visuellen HTML-Editoren, wenn sie um Tabellenzeilen verwendet wird, daher ist dies die bevorzugte Option.

Liquid Tags - Schleifen mit der 'for'-Schleife

Tags sind die Programmierlogik, die Vorlagen mitteilt, was zu tun ist. Tags sind in {% %}-Zeichen eingeschlossen.

            Eingabe:
                {% for row in _rows %}
                    
Name: {{ row.name }}
Amount: {{ row.amount }}
{% endfor %} Ausgabe:
Name: Dave
Amount: 1230
Name: Dave
Amount: 1000

Wenn Sie Hilfe oder weitere Informationen zu dieser Funktion benötigen, kontaktieren Sie bitte [email protected]



word_table Tag

Definiert eine Tabelle in Word, die für wiederholende Zeilen verwendet wird. Sehr ähnlich dem repeat_row-Filter, nimmt aber einen Parameter an, der die zu iterierende Sammlung darstellt. Für jedes Element in der Sammlung wird eine Zeile erstellt. Nach der Tabelle muss ein "endword_table"-Tag geschlossen werden.

z.B.

Eingabe

Ausgabe


Wenn Sie Seriendruckfelder für word_table-Tags referenzieren, verwenden Sie Kleinbuchstaben für das Seriendruckfeld. Zum Beispiel sollte {{row.invoice_id}} verwendet werden, nicht {{row.Invoice_Id}}. Alles nach dem . muss in Kleinbuchstaben sein.