Open Source Dokumentenmanagement
Dokumentation

Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht

Navigation: Dokumentationen agorum core > agorum core workflow 3.0 > ACLs/Berechtigungen im Workflow setzen > DATEV XML-Schnittstelle online > Übersicht vorhandener Knoten


Datei mit fill-template erstellen

Interne ID: agorum.data.write.text.items

Mit diesem Knoten erstellen Sie eine Datei auf Basis eines Templates. Sie definieren zusätzlich einen Header, den das System oberhalb des Templates in die Datei schreibt. Die Datenvariable enthält verschiedene Daten, die das System für das Template verwendet.

Aussehen des Knotens

Verhaltensweise

Erreicht das System den Knoten im Workflow, prüft es die eingestellten Parameter. Das System nimmt die Daten aus der Datenvariable entgegen und erstellt mit deren Angaben eine Datei auf Basis eines Templates mit der gewünschten Dateiendung und dem Zeichensatz. Zusätzlich nimmt es die Variablen des Workflows, die Sie über den Editor mit ${variable} angeben, in diese Datei auf.

Wenn Sie ein Template angegeben haben, befüllt das System jedes enthaltene Element der Datenvariable mit diesem Template und fügt dieses Template zwischen dem Header und Footer ein.

Das System speichert die generierte Datei in die Ausgangsvariable.

Endpoints


Standard Veränderbar? Weitere Endpoints möglich?
Default (Inlet) Nein, kann nur ausgeblendet werden. nein, nicht nötig
Default (Outlet) Nein, kann nur ausgeblendet werden. nein, nicht nötig

Parameter


Parameter Beschreibung Beispiel
Header der Datei Definiert den Header der zu generierenden Datei.

Der Inhalt dieses Parameters muss zwingend ein String sein.
Header der Datei
Datenvariable Definiert die Variable, in der die Daten liegen, die das System für das Befüllen des Templates verwendet.
  • Wenn Sie die Variable nicht angeben, verwendet das System automatisch die Anhänge des Workflows aus der internen Variable sys_acw_attachments.
  • Der Aufbau einer Datenvariable ist identisch zum Aufbau einer Ausgangsvariable.
Datenvariable
Template für die Elemente Definiert das Template für die einzelnen zu generierenden Elemente.

Der Inhalt dieses Parameters muss zwingend ein String sein.
Template für die Elemente
Footer der Datei Definiert einen Footer für die zu generierende Datei.

Der Inhalt dieses Parameters muss zwingend ein String sein.
Footer der Datei
Zeichensatz Legt den Zeichensatz für die zu erstellende Datei fest.
  • Im Standard verwendet das System das Format UTF-8.
  • Der Workflow-Knoten erwartet als übergebenes Format einen String.
Zeichensatz
Dateiendung Definiert die Dateiendung der temporären Datei.
  • Die Dateiendung ist maßgebend dafür, wie agorum core die Datei indiziert und behandelt.
  • Wenn Sie diesen Parameter nicht angeben, verwendet das System die Dateiendung temp
  • Sie können alle ASCII basierten Formate angeben.
Dateiendung
Ausgangsvariable Definiert die Variable, in der das System die erstellte Datei zur Verfügung stellt.

Tipp: Verwenden Sie die Variablenauswahl, um einen Überblick über alle nutzbaren Variablen zu erhalten.

Header der Datei


Im Editor

Im Editor geben Sie den Header der Datei an.

<document>
<header attribute="headerAttribute">Header Information ${documentNumber}</header>
<items>

Der eingegebene String kann neben normalem Text auch Workflow-Variablen enthalten, die das System dynamisch durch den jeweiligen Text der Variable ersetzt.

In dem oben verwendeten Beispiel würde das System die documentNumber mit dem Wert der token.variables.documentNumber ersetzen.


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in die das System das Ergebnis schreibt.

  • Die übergebene Variable muss hierbei einen String enthalten.
  • Verwendete Workflow-Variablen ersetzt das System nicht automatisch. Dies muss bereits im Rahmen der Vorbereitung des Strings erfolgen.
token.variables.header

Datenvariable

Die nachfolgenden Beispiele gelten ebenfalls für eine Ausgangsvariable.

Für generelle Schreibweise von Variablen im Editor oder als Expression siehe Schreibweise von Variablen.


Im Editor

Im Editor geben Sie den Namen der Workflow-Variable an, die das zu benutzende Array mit Objekten enthält. Die Keys der einzelnen Objekte müssen hierbei den im Template verwendeten Platzhaltern entsprechen.

[
 {
  itemNr: 12345,
  itemName: "Item 1"
 },
 {
  itemNr: 54321,
  itemName: "Item 2"
 }
]

Das System platziert die Variable automatisch in der Variable des Tokens (token.variables).

dataVariable


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, von der das System den eigentlichen Namen der gewünschten Variable lesen soll.

'token.variables.nameOfDataVariable'

Template für die Elemente


Im Editor

Im Editor geben Sie das Template inklusive Platzhalter für die in der Datenvariable enthaltenen Items an, die das System befüllt.

Die Platzhalter, etwa ${itemNr}, dürfen nicht den gleichen Namen haben wie die dazugehörige Workflow-Variable (token.variables), da das System diese automatisch während der Laufzeit befüllt würde und Sie das Template nicht mehr verarbeiten können.


Beispiel
Sie haben etwa die Variable itemNr mit dem Wert 12345 zuvor in einem Skript-Knoten definiert. Diese befindet sich somit in der Workflow-Variable als token.variables.itemNr und dem Wert 12345.

Die Datenvariable hat in diesem Beispiel folgenden Inhalt:

[
 {
  itemNr: 12345,
  itemName: "Item 1"
 },
 {
  itemNr: 54321,
  itemName: "Item 2"
 }
]

Sie dürfen als Platzhalter nun nicht ${itemNr} verwenden, da das System sonst direkt den Wert der Variable (12345) als Platzhalter verwenden würde:

<item>
<itemNr attribute="itemAttribute">${itemNr}</itemNr>
<itemName>${itemName}</itemName>
​​​​​</item>

Benennen Sie die Variable itemNr im Skript-Knoten anders, um dieses Szenario zu vermeiden.


Als Expression

Wenn Sie den Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in die das System das Ergebnis schreiben soll. Die übergebene Variable muss hierbei einen String enthalten.

token.variables.itemTemplate

Footer der Datei


Im Editor

Im Editor geben Sie den Footer der Datei an.

</items>
<footer attribute="footerAttribute">Footer Information</footer>
<footerInformation>${footerInformation}</footerInformation>
</document>

Der eingegebene String kann neben normalem Text auch noch Workflow-Variablen enthalten, die das System dynamisch durch den jeweiligen Text der Variable ersetzt. In dem oben verwendeten Beispiel würde das System die footerInformation mit dem Wert der token.variables.footerInformation ersetzen.


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in die das System das Ergebnis schreiben soll.

  • Die übergebene Variable muss einen String enthalten.
  • Verwendete Workflow-Variablen ersetzt das System nicht automatisch. Dies muss bereits im Rahmen der Vorbereitung des Strings erfolgen.
token.variables.footer

Zeichensatz


Im Editor

Im Editor wählen Sie den Zeichensatz entweder aus der Auswahlbox oder tragen den gewünschten Zeichensatz ein.

UTF-8

Mehr zu den Zeichensätzen siehe https://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html.
 

Als Expression

Wenn diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in die das System das Ergebnis schreiben soll. Die übergebene Variable muss einen String enthalten.

token.variables.encoding

Dateiendung


Im Editor

Im Editor wählen Sie die Dateiendung.

xml


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in der die Dateiendung hinterlegt ist.

Wenn Sie die Werte für die Dateiendung als Expression angeben, übergeben Sie diese Werte:

  • txt= txt
  • xml = xml
  • json = json
'txt'
'.pdf'
token.variables.tempFile.extension