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


DATEV-Buchungsstapel für mehrere Rechnungen erstellen

Interne ID: agorum.datev.export.csvs

Sie erstellen mit diesem Knoten einen ASCII-Buchungsstapel für mehrere Rechnungen. Dabei können Sie festlegen, ob das System die Rechnungen bündeln soll, d. h. nach Buchungsperiode und Wirtschaftsjahr, oder ob es für jede Rechnung einen einzelnen ASCII-Buchungsstapel erstellt.

Aussehen des Knotens

 

Voraussetzungen


Folgende Voraussetzungen müssen erfüllt sein, damit Sie diesen Knoten in der Toolbox des Workflow-Editors sehen können:

  • Die DATEV-Schnittstelle muss aktiviert sein.

Die DATEV-Schnittstelle aktivieren Sie über das agorum core support tool.

Folgende Einträge müssen Sie im agorum core support tool aktivieren:

  • DATEV CSV interface
  • DATEV CSV interface (with positions)
  • DATEV XML interface online
  • DATEV XML interface online (with positions)

Verhaltensweise


Erreicht das System den Knoten im Workflow, prüft es die gesetzten Parameter. Anschließend prüft das System, ob es die Rechnungen bündeln soll. Je nach hinterlegter Option transformiert das System die in der Datenvariable hinterlegten Daten gemäß dem eingegebenen Mapping, erzeugt die CSV-Dateien und legt sie in dem angegebenen Pfad ab, optional mit Verlinkung in einen anderen Ordnerpfad.

Suchfilter


Für diesen Knoten existiert der Filter Fehlgeschlagene Exportdateien (siehe Übersicht vorhandener Knoten).

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
Datenvariable Definiert die Variable, in der sich die Metadaten zu den Rechnungen befinden.
  • Die angegebene Variable muss ein Array mit Metadaten enthalten.
  • Die UUID muss pro Dokument enthalten sein, damit das System die verarbeiteten Dokumente kennzeichnen und Fehlerlogs und die erzeugten CSV-Dateien an die jeweiligen Dokumente anhängen kann.
  • Wenn Sie zuvor den Knoten Objekte sammeln und Daten laden verwenden, ist die UUID bereits automatisch enthalten. Sollten Sie diesen Knoten nicht verwenden, müssen Sie zwingend die UUID pro Dokument übergeben.
Datenvariable
Mapping für Dokumente ohne Positionen Definiert die Mappingdefinition, die das System dazu verwendet, um die Inhalte des Buchungsstapels zu erzeugen.
  • Das Ziel-Mapping muss zwingend DATEV ASCII Buchungsstapel lauten, damit das System die Daten korrekt transformieren kann.
  • Um das Quellmapping zu wählen, müssen Sie zuvor in der dazugehörigen metadata-collection.yml den jeweiligen Dokumententyp als mapping_source definieren.
  • Für das Definieren von Mappings siehe metadata-collection.yml definieren.
Mapping für Dokumente ohne Positionen
Mapping für Dokumente mit Positionen Mapping für Dokumente mit Positionen
Metadatum mit Positionen Definiert, wie das Metadatum lautet, in dem die Buchungspositionen gespeichert sind.
  • Diese Angabe benötigt der Knoten für das Zusammenführen der positionsbezogenen Daten und die Unterscheidung, welches Mapping der Knoten verwenden soll.
  • Falls das Metadatum in der Datenvariable enthalten ist, verwendet das System das positionsbezogene Mapping, ansonsten das Mapping ohne Positionen.
Metadatum mit Positionen
Beraternummer Definiert die DATEV-Beraternummer.
  • Diese Angabe finden Sie später in der CSV-Datei in der 1. Headerzeile (siehe DATEV-Dokumentation).
  • Die DATEV-Beraternummer können Sie entweder hier im Parameter oder innerhalb der Mappingdefinition angeben.
  • Wenn Sie im Mapping eine Beraternummer angeben, ignoriert das System die hier im Parameter angegebene Beraternummer.
Beraternummer
Mandantennummer Definiert die DATEV-Mandantennummer.
  • Diese Angabe finden Sie später in der CSV-Datei in der 1. Headerzeile (siehe DATEV-Dokumentation).
  • Die DATEV-Mandantennummer können Sie entweder hier im Parameter oder innerhalb der Mappingdefinition angeben.
  • Falls Sie die DATEV-Mandantennummer im Mapping angeben, ignoriert das System die im Parameter angegebene Mandantennummer.
Mandantennummer
Beleglink Definiert das DATEV-Beleglinkkürzel.
  • Diese Angabe finden Sie später innerhalb der einzelnen Einträge des Buchungsstapels (siehe DATEV-Dokumentation).
  • Das DATEV-Beleglinkkürzel können Sie entweder hier im Parameter oder innerhalb der Mappingdefinition angeben.
  • Falls Sie das DATEV-Beleglinkkürzel im Mapping angeben, ignoriert das System das im Parameter angegebene DATEV-Beleglinkkürzel.
  • Die Datenvariable muss zwingend die UUID der Rechnungen enthalten, für die das System den Beleglink erzeugen soll.
  • Wenn Sie etwa zuvor den Knoten agorum.accounting.items.collect verwendet haben, ist diese Information standardmäßig mit in der dortigen Ergebnisvariable enthalten.
Beleglink
Buchungsperiode Definiert die Buchungsperiode.
  • Diese Angabe finden Sie später in der CSV-Datei in der 1. Headerzeile (siehe DATEV-Dokumentation).
  • Im Standard verwendet das System eine monatliche Buchungsperiode.
Buchungsperiode
Rechnungen bündeln Aktiviert
Bündelt die übergebenen Rechnungen gemäß der Buchungsperiode und dem Wirtschaftsjahr zu einer CSV-Datei.

Deaktiviert
Bündelt die Rechnungen nicht, sondern übergibt sie einzeln.
Rechnungen bündeln
Basisordner (Ordner-ID oder Suche) Definiert einen Basisordner für die Ablage (wenn Haken die obige Eingabe ist eine Suche nicht gesetzt ist) oder ermöglicht eine Suche nach einem bestimmten Ordner (wenn Haken die obige Eingabe ist eine Suche gesetzt ist). Basisordner (Ordner-ID oder Suche)
Pfad Definiert den Pfad, den das System unter dem Basisordner anlegt. Pfad
Basisordner für zusätzliche Verlinkung der Ergebnis-Datei(en) Definiert optional einen Basisordner für die zusätzliche Verlinkung (wenn Haken die obige Eingabe ist eine Suche nicht gesetzt ist) oder ermöglicht eine Suche nach einem bestimmten Ordner für die Verlinkung (wenn Haken die obige Eingabe ist eine Suche gesetzt ist). Basisordner für zusätzliche Verlinkung der Ergebnis-Datei(en)
Pfad für die Verlinkung Definiert den optionalen Pfad für die Verlinkung, den das System unter dem Parameter Basisordner für zusätzliche Verlinkung der Ergebnis-Datei(en) anlegt. Pfad für die Verlinkung
Fehlerhafte Rechnungen überspringen Aktiviert
Schreibt Fehler in eine Log-Datei. Die Log-Datei befindet sich unter:
/agorum/roi/workspace/agorum.datev/log-files

Die fehlgeschlagenen Dateien können Sie über die beiden Filter Zum Sammeln markierte Dokumente und Fehlgeschlagene Exportdateien im agorum core information center einsehen. Dabei hängt das System die abgelegte Log-Datei zusätzlich an die betroffenen Dokumente an.

Deaktiviert
Wirft Fehler direkt aus.
Fehlerhafte Rechnungen überspringen

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

Datenvariable

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 verwendende Array enthält. Das System platziert die Variable automatisch in der Variable des Tokens (token.variables).

document.data


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.nameOfDocumentData'


UUID pro Dokument übergeben

[
  {
    uuid: 'ersteDokumentenUUID',
    agorum_accounting_document_number: 12345,
    ... weitere Metadaten des ersten Dokuments für das Mapping.

  },
  {
    uuid: 'zweiteDokumentenUUID',
    agorum_accounting_document_number: 14592,
    ... weitere Metadaten des zweiten Dokuments für das Mapping.
  }
]

Mapping für Dokumente ohne Positionen


Im Editor

Im Editor wählen Sie das gewünschte Mapping.

agorum.datev.csv.with.positions
agorum.datev.csv.without.positions

Über öffnen Sie den Mapping-Editor und können dort das Mapping bearbeiten und neue Mappings anlegen.


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variablen an, in der das zu verwendende Mapping hinterlegt ist.

token.variables.mappingDefinition

Mapping für Dokumente mit Positionen


Im Editor

siehe Mapping für Dokumente ohne Positionen


Als Expression

siehe Mapping für Dokumente ohne Positionen

Metadatum mit Positionen


Im Editor

Im Editor tragen Sie das Metadatum ein, das die Positionen enthält.

agorum_accounting_document_item_list


Als Expression

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

token.variables.positionVariable
'agorum_accounting_document_item_list'

Beraternummer


Im Editor

Im Editor geben Sie die DATEV-Beraternummer ein. 

12345


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in der die DATEV-Beraternummer enthalten ist.

token.variables.consultantNumber

Mandantennummer


Im Editor

Im Editor geben Sie die DATEV-Mandantennummer an. 

12345


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in der die DATEV-Mandantennummer enthalten ist

token.variables.consultantNumber

Beleglink


Im Editor

Im Editor geben Sie das DATEV-Beleglinkkürzel an. 

Beleglink


Als Expression

Wenn Sie diesen Parameter als Expression angeben, geben Sie den vollständigen Pfad zur Variable an, in der das DATEV-Beleglinkkürzel enthalten ist.

token.variables.documentLink

Buchungsperiode


Im Editor

Im Editor wählen Sie die gewünschte Buchungsperiode. 

monatlich


Als Expression

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

Sie können diese Zahlenwerte übergeben:

Zahlenwert Beschreibung
0 monatlich
1 wöchentlich
2 täglich
token.variables.bookingPeriod
0

Rechnungen bündeln


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 übergeben, muss das Ergebnis einen Boolean-Wert (true = wahr oder false = nicht wahr) enthalten. Dabei können Sie sowohl feste Werte als auch Variablen des aktuellen Tokens verwenden.

true
false
token.variables.EnableAppend

Basisordner (Ordner-ID oder Suche)


Ordner-ID

Angabe eines Basisordners als ID im Editor (Haken die obige Eingabe ist eine Suche nicht gesetzt):

/agorum/roi/Files/Lieferantenakten/${test_lieferantennummer}

In diesem Beispiel wurde eine feste ID / ein fester Ordner inklusive Workflow-Variable als Platzhalter angegeben (${test_lieferantennummer}). Die Variable muss zuvor existieren, etwa können Sie die Variable in einem Skript-Knoten erstellen und befüllen:

/*global sc, sca, token, instance, outlets, inlet, parameters */

token.variables.test_lieferantennummer = '123456';

token.leave('');

Der Ordner /Lieferantenakten/123456 muss ebenfalls zu diesem Zeitpunkt schon bestehen, er wird also durch diesen Knoten nicht angelegt.
 

Suche

Angabe eines Basisordners im Editor (Haken die obige Eingabe ist eine Suche gesetzt):

identifier:lieferantenakte test_lieferantennummer:(${test_lieferantennummer})

In diesem Beispiel wurde die Suche aktiviert. Das System sucht nach allen Objekten, die den identifier lieferantenakte gesetzt haben. Außerdem wird der Ordner test_lieferantennummer mit der Nummer aus der Variablen test_lieferantennummer gefüllt. Der identifier und test_lieferantennummer sind Metadaten auf einem Objekt.

Sie können des Weiteren beliebige agorum core smart search-Anfragen beim Basisordner angeben.

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:

<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

Basisordner für zusätzliche Verlinkung der Ergebnis-Datei(en)


Im Editor

siehe Basisordner (Ordner-ID oder Suche)


Als Expression

siehe Basisordner (Ordner-ID oder Suche)

Pfad für die Verlinkung


Im Editor

siehe Pfad


Als Expression

siehe Pfad

Fehlerhafte Rechnungen überspringen


Im Editor

Im Editor wählen Sie die Funktion per Anhaken oder entfernen den Haken.


Als Expression

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

token.variables.failSilent
true