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


CSV-Datei per Suche erweitern oder neu erstellen

Interne ID: agorum.data.write.or.append.csv

Sie können mit diesem Knoten:

  • eine CSV-Datei anhand einer Pfadangabe und eines Namens suchen
  • eine gefundene CSV-Datei erweitern oder neue CSV-Datei erstellen
Aussehen des Knotens

Verhaltensweise


Die Verhaltensweise dieses Knotens variiert je nach vorhandenem Szenario und Anwendungsfall (CSV-Datei per Suche erweitern oder neue CSV-Datei erstellen).

CSV-Datei per Suche erweitern

Erreicht das System den Knoten im Workflow, prüft das System die gesetzten Parameter. Anschließend sucht es die CSV-Datei anhand der Pfad- und Namensangabe. Falls das System eine Datei findet, erweitert es diese mit den Daten aus der Datenvariable. Die Ausgangsvariable enthält die erweiterte CSV-Datei.

CSV-Datei neu erstellen

Erreicht das System den Knoten im Workflow, prüft das System die gesetzten Parameter. Anschließend sucht es die CSV-Datei anhand der Pfad- und Namensangabe. Falls das System keine Datei findet, erstellt es eine neue CSV-Datei mit den Daten aus der Datenvariable. Die Ausgangsvariable enthält die erstellte CSV-Datei.

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
Ordner Definiert den Dateipfad des Ordners, in dem die CSV-Datei liegt oder das System sie anlegt.
  • Der Parameter dient als Basisordner für den im Parameter Pfad angegebenen Ordner.
  • Die im Parameter Pfad angegebene Ordnerstruktur legt das System unterhalb des hier gefundenen / angegebenen Ordners an und dient als detailliertere Angabe für die Suche oder Ablage des Objekts.
Ordner
Pfad (optional) Definiert den Pfad, den das System entweder unter dem Basisordner anlegt oder unter dem die angegebene CSV-Datei zu finden ist.
  • Das System wirft einen Fehler, wenn Sie in diesem Pfad Workflow-Variablen verwenden, die für Ordnernamen unzulässige Zeichen enthalten.
  • Formatieren Sie Strings mit :f, um die Sonderzeichen durch _ zu ersetzen.
Pfad
Name Definiert den Namen der CSV-Datei, den das System sucht und erweitert oder initial anlegt. Name
Datenvariable Definiert die Variable mit den Daten, die der Knoten verarbeitet. Die angegebene Variable muss ein Array enthalten.
  • Wenn Sie den Parameter Header automatisch generieren aktiviert haben, muss das Array zusätzlich Objekte enthalten.
  • Wenn Sie den Parameter Header automatisch generieren nicht aktiviert haben, genügt ein normales Array.
  • Der Aufbau einer Datenvariable ist identisch zum Aufbau einer Ausgangsvariable.
Datenvariable
Header-Informationen Steuert, welche Spaltennamen das System als Überschriften in die CSV-Datei einträgt.

Als Ergebnis erwartet das System ein Array.
Header-Informationen
Header automatisch generieren Definiert, ob das System den Header automatisch erzeugt.

Aktiviert
Überprüft die Datenvariable. Falls es sich bei dem ersten Element innerhalb des Arrays um ein Objekt handelt, verwendet das System die Keys als Header.

Deaktiviert
Überprüft die Datenvariable. Falls es sich bei dem ersten Element innerhalb des Arrays nicht um ein Objekt handelt, erzeugt das System abhängig von der Länge des Arrays oder des ersten enthaltenen Arrays einen generischer Header mit folgender Struktur:

Colum 1, Colum 2, Colum 3 ...
Header automatisch generieren
Trennzeichen Definiert, welcher Separator das System für das Trennen der Werte verwendet. Trennzeichen
Anführungszeichen für die übergebenen Werte Definiert, ob das System die Werte mit Anführungszeichen in die CSV schreibt.

Im Standard verwendet das System doppelte Anführungszeichen (").
Anführungszeichen für die übergebenen Werte
Zeichensatz Legt den Zeichensatz für die zu erstellende CSV-Datei fest.
  • Im Standard verwendet das System das Format ISO-8859-15.
  • Der Workflow-Knoten erwartet als übergebenes Format einen String.
Zeichensatz
Ausgangsvariable für die erstellte CSV-Datei Definiert die Variable, in die das System die erstellte oder erweiterte CSV-Datei zur Verfügung stellt.

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

Ordner


Im Editor

Im Editor geben Sie eine ID aus agorum core an (numerisch, UUID, Pfad …). Weitere Details siehe find, tryFind.

/agorum/roi/Files/Demo


Als Expression

Wenn Sie diesen Parameter als Expression angeben, muss das Ergebnis ein String enthalten und eine ID aus agorum core sein (numerisch, UUID, Pfad …).

'/agorum/roi/Files/Demo'

Sie können auch den Inhalt einer Variable angeben, die die ID enthält.

token.variables.zielOrdner

Dieses Beispiel liefert etwa die ID des Zielordners.

Pfad


Im Editor

Im Editor geben Sie den Pfad an.

Ordner1/Unterordner1

In diesem Beispiel legt das System die Ordner Ordner1/Unterordner unterhalb des Basisordners an oder sucht dort nach der angegebenen CSV-Datei.

Der vollständige Pfad lautet folgendermaßen:

<Basisordner>/Ordner1/Unterordner1


Datum als Platzhalter verwenden

Sie können im Editor das aktuelle Datum als Platzhalter verwenden:

Ordner1/${date:yyyy/MM/dd}

In diesem Beispiel legt das System folgende Ordnerstruktur an (am Beispiel 17.09.2020)

Ordner1/2020/09/17


Workflow-Variable als Platzhalter verwenden

Sie können im Editor Workflow-Variablen als Platzhalter verwenden:

Ordner1/${nameDerVariable:f}

Wenn die Workflow-Variable nameDerVariable etwa den Inhalt Test: Ein Ordner enthält, legt das System diesen Ordner an:

Ordner1/Test_ Ein Ordner

Die Funktion :f ersetzt automatisch nicht erlaubte Pfad-Zeichen durch _. Für die Variablen-Ersetzung verwendet das System die Standardfunktion der JavaScript-Bibliothek common-templates.


Als Expression

Wenn Sie diesen Parameter als Expression angeben, muss das Ergebnis den Pfad als String enthalten. Sie können dabei auch eine Berechnung durchführen.

'Ordner1/' + new Date().getFullYear()

Das Ergebnis dieser Expression lautet (im Jahr 2020):

Ordner1/2020

In diesem Beispiel legt das System die Ordner Ordner1/2020 unterhalb des Basisordners an oder sucht dort nach der angegebenen CSV-Datei.

Der vollständige Pfad lautet:

${Basisordner}/Ordner1/2020

Name

Wenn Sie etwa keinen statischen Namen angeben möchten, sondern den Namen abhängig von einem geladenen Metadatum machen möchten, verwenden Sie die bekannte Schreibweise des Editors oder einer Expression:


Im Editor

RE-${ag_invoice_number} (${date:yyyy_MM_dd})


Als Expression

'RE-' + token.variables.ag_invoice_number

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.


Parameter „Header automatisch generieren“ aktiviert

Das Array muss Objekte enthalten, wie folgendes Beispiel demonstriert:

[
  {
    "LastName" : "Reinhold",
    "FirstName" : "Herbst",
    "E-Mail" : "reinhold.herbst@muster.com",
    "Mobile" : "+49123456789",
    "Street" : "Musterweg 5",
    "PLZ" : "12345",
    "City" : "Musterstadt",
    "Country" : "Deutschland",
    "Telephone" : "0711123456789"
  }, 
  {
    "LastName" : "Fischer",
    "FirstName" : "Evelin",
    "E-Mail" : "evelin.fischer@muster.com",
    "Mobile" : "+49123456789",
    "Street" : "Musterstraße 5",
    "PLZ" : "12345",
    "City" : "Musterstadt",
    "Country" : "Deutschland",
    "Telephone" : "0711789996789"
  }, 
  {
    "LastName" : "Müller",
    "FirstName" : "Lisa",
    "E-Mail" : "lisa.mustermann@muster.com",
    "Mobile" : "+493333456789",
    "Street" : "Musterweg 5",
    "PLZ" : "54435",
    "City" : "Musterlingen",
    "Country" : "Deutschland",
    "Telephone" : "071117776789"
  }
]


Parameter „Header automatisch generieren“ deaktiviert

Ein normales Array genügt, wie folgendes Beispiel demonstriert:

['Max Mustermann', 'Musterstraße 1', 'Musterstadt']


Im Editor

Im Editor geben Sie den Namen der Workflow-Variable an, die das zu verwendende Array enthält. 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'

Header-Informationen


Im Editor

Im Editor tragen Sie die einzelnen Spaltennamen der Reihe nach ein.

Spalte 1
Spalte 2
Spalte 3
Spalte 4

Die eingetragenen Spaltennamen gibt das System in Form eines Arrays an den Knoten weiter.


Als Expression

Wenn Sie die Spaltennamen als Expression angeben, muss das Ergebnis ein Array sein. Das Array muss die Namen für die Spalten enthalten. Sie können sowohl feste Werte als auch Variablen des aktuellen Tokens verwenden.

["Column 1", "Column 2", "Column 3", "Column 4"]
token.variables.headerArray

Wenn Sie mehrere Kopfzeilen benötigen, geben Sie diese etwa wie folgt an:

[
["Row 1: Column 1", "Row 1: Column 2", "Row 1: Column 3", "Row 1: Column 4"],
["Zeile 2: Spalte 1", "Zeile 2: Spalte 2", "Zeile 2: Spalte 3", "Zeile 2: Spalte 4"]
]

Header automatisch generieren


Im Editor

Im Editor aktivieren oder deaktivieren Sie diese Funktion, indem Sie diese anhaken oder den Haken entfernen.

Im Standard ist diese Option deaktiviert.


Als Expression

Wenn Sie diesen Parameter als Expression angeben, muss das Ergebnis einen Boolean-Wert (true = wahr oder false = nicht wahr) enthalten. Sie können sowohl feste Werte als auch Variablen des aktuellen Tokens verwenden.

true
false
token.variables.generateHeader

Trennzeichen


Im Editor

Im Editor wählen Sie über die Auswahlbox das Trennzeichen. Sie können ebenfalls eigene Werte in das Auswahlfeld eintragen.

 , 
1234


Als Expression

Wenn Sie das Trennzeichen als Expression angeben, muss das Ergebnis einer Zeichenkette entsprechen, wie sie der Editor erwartet. Sie können sowohl feste Werte als auch Variablen des aktuellen Tokens verwenden. Für eine tab-getrennte CSV-Datei übergeben Sie die Expression '\t'.

';'
'\t'
' , '
' , '

Anführungszeichen für die übergebenen Werte


Im Editor

Im Editor wählen Sie über die Auswahlbox die Möglichkeiten für die Anführungszeichen. Sie können ebenfalls eigene Werte in das Auswahlfeld eintragen.

-
+


Als Expression

Wenn Sie diesen Parameter als Expression angeben, muss das Ergebnis einer Zeichenkette entsprechen, wie sie der Editor erwartet. Sie können sowohl feste Werte als auch Variablen des aktuellen Tokens verwenden. Wenn Sie vor und nach dem Wert einen Tab als Formatierung verwenden möchten, übergeben Sie bei der Expression '\t'.

'_'
'\t'

Zeichensatz


Im Editor

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

ISO-8859-15

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