Felder
Textfelder
Verwendung von einfachen Textfeldern für die Datenintegration in Output.Rocks Vorlagen.
Textfelder bilden die Grundlage für die Datenintegration in Output.Rocks Vorlagen. Sie ermöglichen es, Daten aus JSON-Payloads an beliebigen Stellen im Dokument einzufügen und dabei die Formatierung des umgebenden Textes zu übernehmen.
Grundprinzip der Textsubstitution
Die einfachsten und oft nützlichsten Felder in einer Output.Rocks Vorlage sind diejenigen, die Daten nachschlagen und in das Dokument einfügen (im Wesentlichen eine 1:1-Übereinstimmung). Überall dort, wo ein Feld auftritt, fügt Output.Rocks den tatsächlichen Datenwert an dieser Stelle in das fertige Dokument ein.
Sehr geehrte(r) <<kunde.vorname>> <<kunde.nachname>>,
Ihre Kundennummer: <<kunde.kundennummer>>
Vertragskontonummer: <<vertrag.kontonummer>>Die eingefügten Daten übernehmen alle typografischen Eigenschaften, die auf das Feld angewendet werden, wie z.B. Schrifteinstellungen (fett, unterstrichen usw.) und Absatzeinstellungen (Abstand vorher/nachher usw.).
Output.Rocks ersetzt das Feld durch die gelieferten Daten, als ob diese ausgewählt und per Hand überschrieben wurden. Wenn die nachgeschlagenen Daten Zeilenumbruch-Zeichen enthalten, erstellt Output.Rocks neue Absätze im resultierenden Dokument.
Wenn kein Datenelement gefunden wird, das dem Feldnamen entspricht, wird das Feld entfernt.
Ausdrucksverarbeitung
Output.Rocks verfügt über eine leistungsstarke Ausdrucksverarbeitung, die es Benutzern ermöglicht, Felder zu erstellen, die Berechnungen innerhalb der Vorlage durchführen. Die Ausdruckssyntax unterstützt Literale, Datenabrufe, Operatoren und Funktionen.
Die Ausdrucksverarbeitung wird durch die Verwendung geschweifter Klammern aktiviert: <<{ und }>> innerhalb der normalen Feldtrennzeichen.
Sehr geehrte(r) <<{kunde.anrede + ' ' + kunde.vorname + ' ' + kunde.nachname}>>,
Ihre vollständige Adresse: <<{kunde.strasse + ', ' + kunde.plz + ' ' + kunde.ort}>>
Vertragsreferenz: <<{vertrag.typ + '-' + vertrag.nummer}>>Für erweiterte String-Manipulation und Formatierungsfunktionen siehe Text-Funktionen.
Syntax für einfache Feldnamen
Einfache Felder, die ein Datenelement nachschlagen, haben folgende Benennungsregeln:
Namensregeln für Textfelder:
• Muss mit einem Buchstaben beginnen
• Kann Buchstaben, Zahlen und Unterstriche enthalten
• Kann von eckigen Klammern [ und ] umgeben sein
• Unterstützt Punktnotation für verschachtelte Objekte
Variablen die mit <<$variable='foobar'>> deklariert sind, können einfach als <<$variable>> in Vorlagen wieder ausgegeben werden.
Bei Verwendung eines mit Bindestrich getrennten Namens wie "kunden-name" wird der Bindestrich in Ausdrücken mehrdeutig (er könnte als Subtraktionsoperator interpretiert werden). In diesem Fall sind die umgebenden Klammern <<[kunden-name]>> erforderlich.
<<kundenName>>
<<kundenName24>>
<<kunden_name>>
<<kunden-name>>
<<[kunden-name]>>
<<kunde.adresse.strasse>>
<<verbrauch.jahr2023.kwh>>
<<$variable='im Template deklariert'>>Dies wurde<<$variable>>Automatische Formattransformation
Die eingefügten Daten übernehmen automatisch die Formatierung des umgebenden Textes in der Vorlage:
Auch wenn das Feld in einer Tabellenzelle steht, behält es die Formatierung der Zelle bei.
Output.Rocks ersetzt das Feld durch die gelieferten Daten, als ob diese ausgewählt und per Hand überschrieben wurden. Wenn die nachgeschlagenen Daten Zeilenumbruch-Zeichen enthalten, erstellt Output.Rocks neue Absätze im resultierenden Dokument.
Technisch bestimmt nur das letzte Zeichen > der Felddeklaration die Formatierung.
Das ermöglicht es z.Bsp. im Dokument farbig hervorzuheben oder abzuschwächen, solange das letzte Zeichen wie der umgebende Text/Absatz/Tabellenzelle formatiert ist.
HTML-Inhalte einfügen
Output.Rocks unterstützt das Einfügen von HTML-Inhalten mit der speziellen html:-Präfix-Syntax:
Wichtiger Hinweis:
<<html:wichtigerHinweis>>
Formatierte Rechtsbelehrung:
<<html:rechtsbelehrung>>HTML kann beliebig komplex sein, aber nicht jedes HTML wird so gut in ein Dokument gerendert wie in einem Browser. Typischerweise erzielt die Verwendung von Inline-Stilen (anstelle von Stil-Deklarationen) gute Ergebnisse.