Häufig gestellte Fragen / Anveo EDI Connect / Wie man Datenprüfungen und Datenverarbeitungen in NAV-Mappings einrichtet
This is an automatic translation. The original post is available in Englisch.

Wie man Datenprüfungen und Datenverarbeitungen in NAV-Mappings einrichtet

Dieser Artikel gilt für alle Importfälle, ob die Originalnachricht als XML-Datei, als EDIFACT-Datei usw. empfangen wurde. Ziel der Prüfungen und Verarbeitungen ist es, festzustellen, ob alle erforderlichen Daten in der Nachricht übertragen wurden (und wenn dies nicht der Fall ist, stoppen Sie die Verarbeitung), ob alle notwendigen Daten im lokalen NAV-System gefunden werden können (Kunde, Lieferant, Artikel usw.) und ob alle übertragenen Daten auch gültig sind (sind die Preise, die für diesen Artikel gesendet wurden, korrekt? Oder sind sie veraltet?). Für all diese Prüfungen und Verarbeitungen müssen Sie ein NAV-Typ-Mapping verwenden, da jede Datenmanipulation nur in einem NAV-Typ-Mapping erfolgen kann.

Die erste Möglichkeit ist der Befehl „TESTFIELD“. Wenn Sie eine neue Zuordnungslinie erstellen, stellen Sie den Typ auf „Befehl“ und den Befehlstyp auf „TESTFIELD“. Der häufig verwendete Vergleichstyp ist „Not Blank“, der prüft, ob ein Feld einen Wert enthält oder nicht. Dies ist nützlich für externe Positionsnummern oder GTIN-Nummern bei der Auftragsbearbeitung – die Nummer, die Sie nicht haben, kann nicht in die interne NAV-Positionsnummer übersetzt werden. Gleiches gilt für die Kunden- und Lieferantennummern. Wenn Sie eine Wertumrechnung für die Kontaktarten und einen Querverweis verwenden, um z.B. Kunden und Lieferanten über eine GLN aus der Datenbank zu holen, können Sie im Testfeld nachträglich überprüfen, ob das Feld „Interne Nummer“ im entsprechenden EDI-Kontakt gefüllt ist (z.B. der Kunde wurde gefunden) und zeigt einen Fehler an, wenn das Feld leer ist.
Sie können die anderen Vergleichstypen wie EQUAL / NOT EQUAL und GREATER / LESS verwenden, um ähnliche Prüfungen durchzuführen. Um am Beispiel der Preise zu bleiben: Ist der Preis aus der Nachricht gleich dem, der für diesen Artikel und diesen Kunden/Lieferanten in der aktuellen Periode in Ihrer Datenbank eingestellt ist? Es ist möglich, für jedes TESTFIELD einen eigenen Fehlertext zu verwenden, der während der (Test-)Konvertierung und in der Verarbeitungswarteschlange angezeigt wird.

Wenn Sie eine Bestellnachricht erhalten und die Artikelnummer des Herstellers in der Nachricht erhalten, möchten Sie möglicherweise den Artikel in Ihrer Datenbank identifizieren. Wenn Sie z.B. die Artikelnummern des Herstellers in Ihrer Positionstabelle pflegen, können Sie über eine NAV-Mapping unseren Artikel abrufen und seine Nummer in die EDI-Dokumentenzeile schreiben. Wie machst du das?
Zuerst schreiben Sie die Artikelnummer des Herstellers. in das Feld „Externe Positionsnummer“ in der Tabelle „EDI-Dokumentzeile in Ihrem Importmapping. Im folgenden NAV-Mapping richten Sie eine Schleife über alle EDI-Dokumentzeilen ein und fügen unterhalb der Schleife eine Schleife über die Tabelle „Item“ ein. In der Datenelementverbindung verbinden Sie die beiden Tabellen durch die Felder, die die gleichen Zahlen enthalten: „Externe Positionsnummer“ aus der Tabelle „EDI-Dokumentzeile“ und aus Ihrer Datenbank, wo Sie die Nummern pflegen. Wenn die Item-Tabellenschleife das entsprechende Item findet, können Sie die Item-Nr. schreiben. in die EDI-Dokumentenzeile, in das Feld „Nr.“, in einer Datenmappingzeile, die unterhalb der Positionstabellenschleife eingerückt ist.
Wenn du danach überprüfen möchtest, ob es wirklich eine Artikel-Nr. gibt. in Ihrer EDI-Dokumentenzeile können Sie die Funktion TESTFIELD auf dem Feld „No.“ verwenden und einen Fehler anzeigen, wenn er leer ist.

Sie müssen nicht alle Daten aus den NAV-Tabellen in das EDI-Dokument übertragen, wenn unser Modul die Datensätze in den NAV-Tabellen erstellt, wird jeder OnValidate-Trigger ausgeführt und alle automatisch aus der Datenbank gezogenen Daten werden vom System in den Verkaufsbeleg geschrieben.