IDM-Dokument-Workflow - Beispiel

In diesem Beispiel wird die Hintergrund-Task "OrderInvoicingCreditMemoLaser" erläutert. Es handelt sich um einen der vordefinierten Dokument-Workflows. Wenn ein Anwender eine Rechnung druckt, wird die OrderInvoicingCreditMemoLaser-Task ausgeführt. Wenn diese Task abgeschlossen ist, wird dieser Workflow ausgeführt, und die PDF-Datei wird zusammen mit den Metadaten, über die sie identifiziert wird, an Document Management gesendet, sodass Anwender dieses spezifische Dokument einfacher in Document Management finden können. In diesem Fall sind wir in Bezug auf die Metadaten an der Rechnungsnummer, der Kundennummer und dem Kundenauftrag interessiert, die mit der Rechnung verknüpft sind.

Wenn Sie die Rechnung generieren und in der Maske Aktive Hintergrund-Tasks die Parameter für die Hintergrund-Tasks betrachten, wird eine Liste mit kommagetrennten Parametern angezeigt. vKeyText-01 in diesem Workflow leitet den vierten Parameter in der Liste ab, also die Rechnungsnummer, und wandelt ihn in das entsprechende Format um.

Nachdem er die Rechnungsnummer erhalten hat, verwendet der Workflow das angegebene IDO (SLInvHdrs), um zusätzliche Informationen zu der Rechnung abzurufen, einschließlich der Kundennummer und dem Kundenauftrag, die mit der Rechnung verknüpft sind. Diese Informationen werden zum Filtern als Metadaten an Document Management weitergegeben.

Der Workflow bestimmt, wo die Dokumentdatei in Document Management in Abhängigkeit von den Informationen, die Sie über den externen Dokumenttyp (CS_SalesInvoice) und den Entitätstyp (InforSalesInvoice) bereitstellen, gespeichert wird. Sie können eine Dokumentbeschreibung einrichten, die Werte aus der KeyText-Variablen verwendet, um die Beschreibung nutzbar zu machen, z. B. 4677103_InforSalesInvoice.

In dieser Tabelle werden die Werte erläutert, die im Rahmen des OrderInvoicing CreditMemoLaser-Workflows definiert werden:

Feld Wert Beschreibung
TaskName OrderInvoicingCreditMemoLaser TaskName: Wird in der Maske Hintergrund-Task-Definitionen angezeigt.
vKeyText01 StartInvoice= Such-String.
vKeyText02 INSTR(E(eTaskParms1), V(vKeyText01)) + LEN(V(vKeyText01)) Suchen Sie die Startposition für StartInvoice= im String TaskParms1.
vKeyText03 SUBSTRING(E(eTaskParms1), V(vKeyText02), LEN(DBFUNCTION("ExpandKyByType", "InvNumType", "A1"))) Extrahieren Sie die Zeichen aus dem String TaskParms1 aus der Startposition zuzüglich der Länge der Rechnungsnummer (10 Zeichen).
vKeyText04 DBFUNCTION("ExpandKyByType", "InvNumType", V(vKeyText03)) Wandeln Sie den Wert des exportierten Strings in die Rechnungsnummer um.
vIdoName SLInvHdrs Name des IDO, das Daten für die Rechnungsnummer enthält.
vIdoFilter SUBSTITUTE("InvNum='{0}'", V(vKeyText04)) Der Filter sucht im IDO für einen Datensatz, zum Beispiel InvNum= " 4677103", wenn das Feld "vKeyText04" auf "4677103" gesetzt ist.
vIdoPropertyList CoNum,CustNum,InvNum Liste der IDO-Eigenschaften, die zu dem in vIdoName aufgeführten IDO gehören. Das Document Management-Dokument wird mit Attributen gekennzeichnet, die mit diesen IDO-Eigenschaftswerten übereinstimmen.
vExtDocName CS_SalesInvoice Der Document Management-Dokumenttyp, der zum Speichern des übermittelten Dokuments verwendet wird.
vExtMsgEntity InforSalesInvoice Infor Ming.le-Entitätstyp, der in JSON-Nachrichten verwendet wird.
vExtDocDescription SUBSTITUTE("{0}_{1}", V(vKeyText04), V(vExtMsgEntity)) Funktion, die zum Erstellen aussagekräftiger Dokumentbeschreibungen in der Maske " 4677103_InforSalesInvoice" verwendet wird, wenn vKeyText04 auf InvNum= 4677103 ausgewertet wird.