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


Dublettenprüfung: Duplikate finden

Interne ID: agorum.accounting.duplicateCheck

Mit diesem Knoten prüfen Sie, ob ein ähnliches oder gleiches Objekt schon im System vorhanden ist. Die Prüfung erfolgt anhand der Metadaten des Objektes.

Auf welche Metadaten das System prüft, können Sie individuell angeben.

Aussehen des Knotens

Verhaltensweise


Erreicht das System den Knoten, lädt es für den ersten Anhang, der sich in der Eingangsvariable befindet, die Metadaten (diese können nicht übergeben werden). Alle anderen Anhänge werden nicht berücksichtigt.

Anhand der geladenen Metadaten führt das System eine Suche durch. Standardmäßig werden hierbei Objekte ohne Pfad oder Objekte, die sich im Papierkorb befinden, ignoriert. Alternativ können Sie über den Parameter Extrasuche eine zusätzliche Suche angeben, etwa um in einem bestimmten Ordner zu suchen oder um noch weitere Variablen abzufragen, die sich etwa im Workflow befinden. Das übergebene Objekt wird in der Suche ebenfalls ignoriert.

Bei Metadaten mit Datumswerten wird der gesamte Tag gesucht, es wird also nicht auf die Uhrzeit geachtet.

Der Workflow liefert in der Ergebnisvariable eines der gefundenen Duplikate zurück.

Hinweis: Sie können Metadatennamen weglassen, wenn eine Extrasuche definiert ist. Dies hat den Vorteil, dass auch nur über die Suche gearbeitet werden kann.

Anwendungsbeispiel


Der Knoten hat 2 Hauptanwendungsfälle, erklärt am Beispiel einer Eingangsrechnung.

Start nach docform

  1. Dank agorum core docform sind bereits alle ausgelesenen Metadaten auf dem Objekt vorhanden.
  2. Am Anfang des Workflows wird geprüft, ob diese Rechnung schon vorhanden ist.
  3. Der Knoten kann direkt nach dem Knoten Workflow Debugging eingesetzt werden.
  4. Per Ausgang (Outlet) oder Ergebnisvariable kann im Nachgang entscheiden werden, ob es im normalen Prozess weitergeht oder der Schritt beendet und die Rechnung als „Duplikat“ über etwa den Knoten Ablage abgespeichert wird.

Start nach einem Aktiven Ordner

  1. Nach dem Start hat das Dokument noch keine Metadaten, daher müssen diese erst abgefragt und auf das Dokument gespeichert werden.

    Beispiele
    a) Es könnte im Aktiven Ordner eine CSV-Datei ausgelesen werden, welche die Daten dem Workflow direkt als Parameter übergibt.
    b) Metadaten werden per Schnittstelle oder manuell durch die Angabe eines Benutzers zur Verfügung gestellt.
  2. Der Workflow würde nun direkt am Anfang die Daten aufbereiten oder prüfen.
  3. Die Daten werden als Metadaten auf das Dokument gespeichert.

    Tipp: Sollte nach dem Eingang eine Dublette auftauchen, sollten Sie einen commit des Prozesses auslösen, etwa per Knoten UI oder Verzögerung. Ansonsten kann die Suchmaschine Solr unter Umständen das aktuelle Objekt nicht direkt sehen.

  4. Die Dublettenprüfung erfolgt, liest die Metadaten der Rechnung aus und verwendet sie zur Suche. 
Grafisches Anwendungsbeispiel mit Knoten

Endpoints


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

Parameter


Parameter Beschreibung Beispiel
Extrasuche Schränkt die Suche ein, etwa um einen bestimmten Ablageort (Ordner) anzugeben, in dem das System explizit Dokumente suchen soll.

Die Extrasuche kann ein String oder ein Array von Strings sein.
Extrasuche
Metadaten (Liste) Definiert eine Liste von Metadaten, anhand denen geprüft werden soll, ob die Objekte Duplikate sind. Metadaten (Liste)
Ergebnisvariable Definiert die Variable, in der eines der gefundenen Duplikate zurückgegeben wird.
  • Es können daneben noch weitere Duplikate vorhanden sein.
  • Ein Ergebnis wird nur zurückgegeben, wenn eine Variable angegeben ist.
Ergebnisvariable
Eingangsvariable Definiert eine Eingangsvariable, die Objekte (Arrays) enthält.
  • Alle Objekte werden mit diesem Knoten abgearbeitet.
  • Wenn Sie die Variable nicht angeben, verwendet das System automatisch die Anhänge des Workflows aus der internen Variable sys_acw_attachments.
  • Geprüft wird nur das erste übergebene Objekt, da der Knoten kein internes forEach durchführt.
  • Der Aufbau einer Eingangsvariable ist identisch zum Aufbau einer Ergebnisvariable.

Extrasuche


Im Editor

Angabe einer Extrasuche im Editor:

nameextension:pdf
inpath:${ID:/agorum/roi/Files/Akten}
Angabe des Parameters Extrasuche im Editor

Metadaten (Liste)


Im Editor

Angabe von Metadaten im Editor:

agorum_demo_invoice_number
agorum_demo_creditor_number
Angabe des Parameters Metadaten im Editor


Beispiel

Sie geben etwa das Metadatum agorum_demo_invoice_number an, und auf einer Rechnung (Eingangsdokument) ist die Rechnungsnummer R2023 vorhanden. Findet das System nun Objekte, die das gleiche Metadatum besitzen, kennzeichnet es diese Objekte als Duplikate.

Besitzt die Rechnung (Eingangsdokument) keine Rechnungsnummer, kennzeichnet es alle anderen Rechnungen ohne Rechnungsnummer ebenfalls als Duplikate.

Ergebnisvariable

Die nachfolgenden Beispiele gelten ebenfalls für eine Eingangsvariable.

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


Im Editor

Angabe einer Variablen im Editor:

resultVariable


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