PDF Templates

PDF Templates kommen innerhalb der DataEngine zum Einsatz um für bestimmte Module PDF Dateien zu generieren, welche Heruntergeladen oder Verschickt werden können. Für ein DataEngine Modul können mehrere Templates mit unterschiedlichen Inhalten, für unterschiedliche Zwecken konfiguriert werden. Innerhalb des Templates können Daten aus dem Modul eingesetzt werden, sowie auch Daten aus in Verbindung stehenden Modulen. Mit vereinfachten Bedingungen kann gesteuert werden wie eine PDF Datei aufgebaut wird.

Modul Einrichtung

Damit die PDF Template Funktion genutzt werden kann, muss das Modul entsprechend eingerichtet werden. Folge diesen Schritten:

  1. Gehe zum Admin Bereich und wähle „Developer Tools“ > „Dropdown Editor“ aus.
  2. Bearbeite das Dropdown mit dem Namen ‚pdf_template_type_dom‘.
  3. Gib den gewünschten Modulnamen im Feld ‚Item Name‘ ein, z.B. core_Deals.
  4. Trage den Namen ein, unter dem das Modul in der Auswahl erscheinen soll, im Feld ‚Display Label‘, z.B. Deals.
  5. Klicke auf den Button ‚Add‘, um beliebig viele Module hinzuzufügen.
  6. Übernehme die Änderungen durch Klicken auf den Button ‚Save‘.

Jetzt können PDF Templates für die konfigurierten Module angelegt werden.

Template Sektionen

Ein PDF Template besteht aus verschiedenen Sektionen:

  • Body: Diese Sektion wird generiert und über mehrere Seiten verteilt, wenn sie nicht auf eine Seite passt.
  • Header: Diese Sektion wird auf jeder Seite des generierten PDFs wiederholt, wenn es mehrere Seiten gibt.
  • Footer: Diese Sektion wird auf jeder Seite des generierten PDFs wiederholt, wenn es mehrere Seiten gibt.

Template Variablen

Im Editor können Variablen verwendet werden, die folgende Form haben: ‚$module_field‘. Der Editor zeigt während der Einrichtung alle möglichen Variablen zur Auswahl an.

Zusätzlich besteht die Möglichkeit, nach der Template-Variable einen Postprozessor durch den Einsatz des „|“ Symbols hinzuzufügen. Derzeit sind zwei Postprozessoren verfügbar:

  1. number(seperator;thousand;decimal): Dieser Postprozessor formatiert den Wert als Nummer und ermöglicht die Angabe von Dezimalzeichen, Tausendertrennzeichen und Nachkommastellen. Der Separator ist das Dezimaltrennzeichen. Das Dezimaltrennzeichen, entweder ein Punkt oder ein Komma, trennt den ganzzahligen Teil einer Dezimalzahl von ihrem Bruchteil. Thousand bezeichnet das Tausendertrennzeichen. Das Tausendertrennzeichen, oft ein Komma oder ein Punkt, wird verwendet, um Zahlen in Gruppen von drei Ziffern zu gliedern, um ihre Lesbarkeit zu verbessern.
    Beispiel: $module_field|number(,;.;2) formatiert den Wert als Nummer mit 2 Nachkommastellen in deutscher Schreibweise (2.314,65).
  2. date(format): Dieser Postprozessor formatiert den Wert als Datum entsprechend dem angegebenen Format. Beispiel: $module_field|date(m/d/y) formatiert den Wert als Datum im Format MM/TT/JJ (04/19/2024). Das verwendete Format basiert intern auf den PHP Datumsformaten, wie sie in der PHP Dokumentation beschrieben sind: PHP Datumsformat.

Template Bedingungen

PDF Templates unterstützen eine vereinfachte Bedingungssyntax. Diese kann genutzt werden, um bestimmte Sektionen im generierten PDF auszublenden. Zum Beispiel könnte ein Deal Report je nach Sales Stage unterschiedliche Informationen anzeigen.

Hier sind einige Beispiele für die Bedingungssyntax:

Einfacher Fall:

{% if $variable == 'test' %}
    Dann zeige diesen Teil an
{% endif %}

Fall mit ‚else‘:

{% if $variable == 'test' %}
    Dann zeige diesen Teil an
{% else %}
    Andernfalls zeige diesen Teil an
{% endif %}

Es ist möglich, Bedingungen im Header, Footer und Body Template zu verwenden. Derzeit wird nur der Operator ‚==‘ unterstützt. Alle Variablen des PDF Template Editors können verwendet werden. Beachte, dass Bedingungen derzeit nicht verschachtelt werden dürfen.