Mapping Nachbearbeitungen
Anveo EDI Connect verfügt über ein leistungsstarkes integriertes EDI-Workflow-System. Für die Standardfälle sollten Sie die Geschäftsvorfälle verwenden. Wenn Sie Ihren Workflow nicht damit modellieren können, gibt es auch das Konzept unserer so genannten Post-Processings, die direkt aus Mapping aufgerufen werden und jeden Mapping modellieren können.
Wie im Abschnitt Modellierung von Mapping beschrieben, verwenden wir normalerweise mehrere Mappings, um eingehende oder ausgehende Daten zu verarbeiten. In den folgenden Abschnitten beschreiben wir die verschiedenen Möglichkeiten, ein anderes Mapping (oder einen anderen Geschäftsvorgang) aus dem aktuellen heraus zu starten.
Eine Nachbearbeitung wird auf einer Tabellenschleife in einem Mapping definiert. Je nach Konverter gibt es auch die Möglichkeit, ein Mapping mit einem Befehl zu starten, aber in diesem Abschnitt gehen wir davon aus, dass Sie ein Mapping haben und die Tabellendaten nachbearbeiten wollen.
Lassen Sie uns ein typisches Beispiel nehmen: Sie erhalten eine Datei, die mehrere Dokumente enthält. Das erste Mapping parst die Datei und erstellt mehrere Datensätze in unserem EDI Dokument. Der Zeilenaufbau wird ebenfalls in die EDI Dokumentenzeile geschrieben. Da Sie in der Regel jeden Beleg einzeln bearbeiten wollen, definieren Sie die Nachbearbeitung in der Belegkopftabelle: EDI Dokument. Die Mapping der Kopfstruktur kann die Zeilen erhalten, indem ein geeigneter DataItemLink angewendet wird.
Die Nachbearbeitungsaktion wird für jeden Datensatz ausgeführt, der im Mapping verarbeitet wird. Für eine Tabelle im Schreibmodus bedeutet dies jeden Datensatz, der geschrieben wird. Bei einer Tabelle im Lesemodus wird sie für jeden gelesenen Datensatz ausgeführt. Bei Tabellen im Aktualisierungsmodus, wenn Sie Daten gruppieren, sollten Sie es normalerweise vermeiden, eine Nachbearbeitung zu definieren, da die Nachbearbeitungsaktion für jede Aktualisierung und nicht für jeden einzelnen Datensatz ausgeführt wird. Wir haben in der Rubrik Tipps & Tricks eine Möglichkeit beschrieben, wie Sie dies handhaben können.
Definieren einer Nachbearbeitungsaktion
Im Mapping müssen Sie die richtige Tabellenschleife finden und die Eigenschaften der EDI Mapping-Zeile aufrufen. Es gibt eine Eigenschaft namens Post-Processing. Benutzen Sie bitte die Schaltfläche AssisEdit rechts neben dem Wert, um den Editor zu öffnen. Sie können mehrere Nachbearbeitungen erstellen, mit denen Sie z. B. eine Bestätigungsnachricht versenden und gleichzeitig die Daten in Anveo EDI Connect bearbeiten können. Bitte verwenden Sie auch im Listeneditor die Schaltfläche AssisEdit, um die aktuellen Eigenschaften der Nachbearbeitung zu definieren.
Sie können die allgemeine Art der Nachbearbeitung wählen. Die folgenden Optionen sind verfügbar:
Das Postprocessing sollte ein weiteres Mapping mit den aktuellen Tabellendaten durchführen.
Wenn Sie diesen Wert auswählen, werden andere Eigenschaften verfügbar.
Markieren Sie den aktuellen Datensatz für die Verarbeitung durch eine Batch-Aktion für einen Geschäftsvorgang. Sie können dies z.B. in einem Mapping verwenden, das einen Systembeleg nimmt und den Pufferbeleg erstellt, um anzugeben, dass der Pufferbeleg an die Batch-Aktion übergeben werden soll. Sie können nur einen Datensatz in einer Mapping als Stapelverarbeitungssatz markieren.
Dieser Typ hat keine zusätzlichen Eigenschaften.
Startet einen neuen Unterprozess mit dem aktuellen Datensatz. Ein Unterprozess erfordert einen aktiven Geschäftsvorgang und wird als Kind des aktuellen Prozesses angezeigt. Außerdem muss der Unterprozess die gleichen Tabellendaten verwenden wie die aktuelle Tabellenschleife. Ein Unterprozess wird den aktuellen Partner verwenden und nur die Referenznummer aus den aktuellen Daten setzen.
Wenn Sie diesen Wert auswählen, wird eine Eigenschaft verfügbar.
Startet einen neuen Geschäftsvorgang mit dem aktuellen Datensatz. Der Geschäftsvorfall muss die gleichen Tabellendaten verwenden wie die aktuelle Tabellenschleife. Der EDI Kommunikationspartner wird wie in der Geschäftsvorgangsart definiert ermittelt.
Wenn Sie diesen Wert auswählen, wird eine Eigenschaft verfügbar.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf Start Sub-Process (BT) oder Start New Business Transaction eingestellt ist. Gibt den EDI Geschäftsvorfall Typ an, der verwendet werden soll.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Ein Code, der in der EDI Verarbeitungswarteschlange der Tabelle gespeichert wird und zum Filtern der Tabelle verwendet werden kann.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Für jeden Datensatz dieser Zeile und Gruppe wird nur ein Nachbearbeitungsvorgang durchgeführt. Wenn Sie also mehrere Nachbearbeitungen mit der gleichen Gruppe definieren, wird nur die erste, die erfolgreich ist, ausgeführt.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Die Beschriftung ist mehrsprachenfähig. Es wird in der EDI Verarbeitungswarteschlange angezeigt und wenn der Benutzer ein Dokument erneut bearbeiten möchte.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. In dieser Eigenschaft können Sie das EDI Projekt des Mapping angeben.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Diese Eigenschaft gibt das EDI Format des Mapping an.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Gibt den Code des Mapping an, der verwendet werden soll.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping gesetzt ist und Sie Anveo EDI Connect 4.00 oder neuer verwenden. Gibt an, ob die Nachbearbeitung Teil des aktuellen Geschäftsvorfalls ist. Sie können diese Option auf False setzen, um Nachbearbeitungen durchzuführen, die nicht direkt mit den Geschäftsvorgängen zusammenhängen.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Wenn Sie diese Eigenschaft auf den Wert True setzen, wird die Aktion nicht automatisch ausgeführt und erfordert eine Benutzerinteraktion. Dies ist für Tests nützlich.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist.
Versuchen Sie bitte, synchrone Nachbearbeitungen zu vermeiden, da sie zu Problemen mit Tabellensperren führen können und bei Fehlern schwerer zu verstehen sind.
Wenn Sie den Wert dieser Eigenschaft auf True setzen, wird die Nachbearbeitung in derselben Datenbanktransaktion ausgeführt wie das aktuelle Mapping. Wenn bei der Nachbearbeitung ein Fehler auftritt, wird dieser auf der aktuellen Mapping protokolliert. Auch die EDI Verarbeitungswarteschlange wird während der Ausführung der Nachbearbeitung gesperrt.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Wenn Sie diese Eigenschaft auf den Wert True setzen, wird die Nachbearbeitung mit einer höheren Priorität ausgeführt als bei denjenigen, bei denen diese Option nicht gesetzt ist. Damit können Sie die Reihenfolge der Ausführung steuern.
Diese Eigenschaft ist nur verfügbar, wenn die Eigenschaft Type auf den Wert Process Mapping eingestellt ist. Sie können eine Zeitspanne angeben, in der Sie erwarten, dass die Nachbearbeitung erfolgreich durchgeführt wird.
Tipps und Tricks
Wenn Sie ein anderes Mapping durchführen wollen und keine geeignete Tabellenschleife haben, können Sie die Systemtabelle Integer im Lesemodus hinzufügen und die Spalte „Number“ auf eins filtern. Definieren Sie die Nachbearbeitung dieser Tabelle.
Das Nachbearbeitungsprogramm Mapping muß den Nachbearbeitungssatz nicht abrufen und kann auch auf anderen Tabellen arbeiten.
Wenn Sie Nachbearbeitungsaktionen für Datensätze im Aktualisierungsmodus ausführen müssen, bei denen Sie Daten gruppieren, können Sie den folgenden Trick anwenden, um die Nachbearbeitung nur einmal pro Datensatz auszuführen: Suchen Sie ein unbenutztes Feld in der Tabelle und setzen Sie es auf einen Wert, der sonst nicht verwendet wird. Sie können dann am Ende des Mapping die Tabelle mit einem Filter auf dieses Feld und diesen Wert lesen und auf diese Weise nur Datensätze aus der aktuellen Mapping finden. Definieren Sie die Nachbearbeitung dieser Tabelle und ändern Sie den Wert direkt zurück, indem Sie eine weitere Aktualisierungszeile als Kind der Lesezeile einfügen. Da das gesamte Mapping in einer Datenbanktransaktion ausgeführt wird, sollten Sie nur die Daten verarbeiten, die Sie verarbeiten wollen, wenn Sie dieses Mapping nicht mehrmals gleichzeitig ausführen (was Sie wegen der Tabellensperre vermeiden sollten).