Anveo EDI Connect / Config / Mappings / Verwendung der Eigenschaften SourceExpr und DestExpr
This is an automatic translation. The original post is available in Englisch.

Verwendung der Eigenschaften SourceExpr und DestExpr

Im letzten Abschnitt haben wir besprochen, wie man Tabelleninstanzen zu einem Mapping hinzufügt. In diesem Abschnitt wird erläutert, wie Sie auf die Daten von Feldern in einer Tabelle zugreifen können. Und wie man konstante Werte und Filter verwendet.

Das Modul ermöglicht es Ihnen, Daten aus Feldern in Tabellen zu lesen, wenn es eine SourceExpr-Eigenschaft (Quellausdruck) gibt. Der SourceExpr kann auch verwendet werden, um konstante Werte anzugeben oder Funktionen aufzurufen. Sie finden diese Eigenschaft auf den Datenzeilen des Mappings vom Formattyp NAV und auf den Datenzeilen der Exportmappings. Diese Eigenschaft steht aber auch für Parameter der Custom-Funktion und zur Erweiterung von Fehlermeldungen zur Verfügung. Es gibt noch weitere Optionen, auf die wir später in diesem Abschnitt eingehen werden.

Um Daten in Tabellenfelder zu schreiben, gibt es eine weitere Eigenschaft namens DestExpr (destination expression). Diese Eigenschaft ermöglicht es Ihnen auch, Daten gegen einen bestimmten Filter zu prüfen, anstatt sie zu speichern. Wir werden gleich auf die Details eingehen. Es ist wichtig zu wissen, dass Sie Daten in jedes Feld einer Tabelleninstanz schreiben können, auch wenn der Mode auf Read gesetzt ist. Das Schreiben in eine Tabelle im Lesemodus ruft die Validierungslogik von NAV auf, aber wir ändern den Datensatz nicht. In unseren Puffertabellen können Sie damit einen Wert für eine bestimmte Zeit im Mapping speichern. Bei anderen Tabellen hängt es von der Validierungslogik ab, ob es sicher ist, eine Tabelle im Lesemodus zu verwenden, um Daten zwischenzuspeichern.

Die SourceExpr-Eigenschaft

SrcType

Der Quelltyp gibt an, welche Art von Daten Sie lesen möchten. Die zulässigen Werte sind:

Const

Ein konstanter Wert, der in das Mapping eingegeben wird.

Field

Ein Feld aus einer Tabelleninstanz, das eine der übergeordneten Mapping-Linien dieser Mapping-Linie ist. Wenn Sie ein Summenfeld lesen wollen, müssen Sie sich außerhalb der Tabelleninstanz befinden, aber darunter.

Function

Sie möchten Daten entweder von einer eingebauten oder einer benutzerdefinierten Funktion lesen.

Data Type

Diese Eigenschaft wurde in Anveo EDI Connect 4.00 hinzugefügt.

Diese Eigenschaft ist nur verfügbar, wenn der SrcType auf Const gesetzt ist. Diese Eigenschaft gibt den Datentyp des konstanten Wertes an. Sie müssen den Datentyp auswählen, um Fehler aufgrund unterschiedlicher Sprachumgebungen während des Setups und der Laufzeit zu vermeiden. In der älteren Version mussten Sie sicherstellen, dass das Gebietsschema während des Setups das gleiche wie zur Laufzeit war, um z.B. zu verhindern, dass Zahlen anders interpretiert werden.

Sie können aus den folgenden Datentypen wählen:

Text

Ein konstanter Textwert.

Text (Special)

Ein Text, der Sonderzeichen enthalten kann, wie z.B. ein Wagenrücklauf<CR> Es gibt eine Liste aller unterstützten Sonderzeichen.

Boolean

Ein boolescher Wert, wie True oder False.

Option

Ein Optionswert. Sie sollten den ganzzahligen Wert der Option in der Datenbank verwenden.

Integer

Ein ganzzahliger Wert (32 Bit).

Decimal

Ein dezimaler Wert.

BigInteger

Ein ganzzahliger Wert (64 Bit).

Duration

Der Wert enthält eine Dauer.

Code

Der Wert ist ein Dynamics-Code-Wert (nur Großbuchstaben, erlaubt nicht alle Zeichen).

Date

Stellt einen Datumswert dar.

Time

Stellt einen Zeitwert dar.

DateTime

Stellt einen kombinierten Datums- und Zeitwert dar.

DateFormula

Eine Datumsformel.

GUID

Eine globale eindeutige ID (GUID).

Value

Diese Eigenschaft ist nur verfügbar, wenn der SrcType auf Const gesetzt ist. Stellt den konstanten Wert dar, den Sie verwenden möchten.

Function

Diese Eigenschaft ist nur verfügbar, wenn der SrcType auf Function gesetzt ist. Mit dem AssistEdit können Sie das Objekt und die Funktion angeben. Wenn die Funktion Parameter benötigt, sind diese ebenfalls SourceExpr, unterstützen aber keine Verschachtelung von Funktionen.

Table

Diese Eigenschaft ist nur verfügbar, wenn der SrcType auf Field gesetzt ist. Wählen Sie die Tabelleninstanz aus, aus der die Daten gelesen werden sollen. Die Tabelle muss einer der Eltern der aktuellen Mapping-Linie sein, um die Daten eines Datensatzes zu lesen. Wenn Sie Summenfelder lesen wollen, müssen Sie sich unter der Tabelleninstanz befinden, aber nicht unter ihr.

Field

Diese Eigenschaft ist nur verfügbar, wenn der SrcType auf Field gesetzt ist. Wählt die Spalte / das Feld aus, aus der Sie lesen möchten.

Value Translation

Sie können eine Wertumsetzung angeben, um den ausgewählten Wert in einen anderen Sollwert zu ändern. Es gibt einen Abschnitt über die Einrichtung von Wertübersetzungen.

Name

Der Code der Wertübersetzung, die verwendet werden soll.

No Translation Action

Was passieren soll, wenn der Wert in der Wertumrechnung nicht gefunden wird.

Ignore

Das Modul tut nichts, wenn die Übersetzung fehlt. Es verwendet den Originalwert ohne Übersetzung.

Empty

Gibt einen leeren Wert aus.

Info

Fügen Sie einen Informationsprotokolleintrag hinzu und verwenden Sie den Originalwert.

Warning

Fügen Sie einen Warnprotokolleintrag hinzu und verwenden Sie den Originalwert.

Error

Brechen Sie das Mapping sofort ab und protokollieren Sie einen Fehler.

Error (Continue)

Erstellen Sie einen Fehlerprotokolleintrag und beenden Sie das Mapping nicht erfolgreich, sondern fahren Sie mit der Verarbeitung fort, um auch andere Fehler zu finden.

Advanced Validation

Diese Eigenschaft ist standardmäßig ausgeblendet. Sie können eine Liste der zulässigen Werte angeben und Fehler erstellen, wenn Sie versuchen, einen anderen Wert zu exportieren.

Allowed Values

Die Liste der zulässigen Werte. Sie können entweder den AssistEdit verwenden oder die Begriffe Komma getrennt eingeben.

Not Allowed Action

Was passiert, wenn der Quellwert nicht in der Liste der erlaubten Werte steht?

Ignore

Verwenden Sie nicht die erweiterte Validierung und ignorieren Sie alle Werte in der Liste.

Info

Erstellen Sie einen Informationsprotokolleintrag.

Warning

Erstellen Sie einen Warnprotokolleintrag.

Error

Brechen Sie das Mapping sofort mit einer Fehlermeldung ab.

Error (Continue)

Liefert einen Fehler bei der Ausführung des Mappings, verarbeitet das Mapping aber weiter, um auch andere Fehler zu finden.

Die DestExpr-Eigenschaft

DestType

Wählen Sie das Ziel für einen Wert aus. Die folgenden Werte sind gültig:

Leer bedeutet, dass der Wert ignoriert wird. Damit können Sie Felder beim Import überspringen oder z.B. einen Funktionsrückgabewert ignorieren.

Filter

Der Wert sollte gegen einen Dynamics-Filter geprüft werden. Wenn der Filter nicht übereinstimmt, wird der Wert nicht akzeptiert. Je nach Konverter führt dies zu einer Fehlermeldung oder zum Überspringen eines Abschnitts des Mappings. Mehr über den Einsatz von Filtern für bestimmte Konverter erfahren Sie in der Dokumentation zu jedem Konverter.

Field

Der Wert sollte in ein Feld einer Tabelleninstanz in diesem Mapping geschrieben werden.

Value

Diese Eigenschaft ist nur verfügbar, wenn der DestType auf Filter gesetzt ist. Der Dynamics-Filter filtert den Wert, gegen den geprüft wird. Der Wert wird als Textwert für die Anwendung des Filters interpretiert. Ein typisches Beispiel wäre „BY|IV“, um die Werte „BY“ und „IV“ zuzulassen.

Table

Diese Eigenschaft ist nur verfügbar, wenn der DestType auf Field gesetzt ist. Wählt die Tabelleninstanz aus, in die der Wert geschrieben werden soll. Die Tabelleninstanz muss einer der Eltern der aktuellen Mapping-Linie sein.

Field

Diese Eigenschaft ist nur verfügbar, wenn der DestType auf Field gesetzt ist. Der Feldname/Spaltenname des Zielfeldes auf der Tabelle.

Validate

Diese Eigenschaft ist nur verfügbar, wenn der DestType auf Field gesetzt ist. Diese Eigenschaft ist nur als erweiterte Eigenschaft verfügbar. Wenn Sie diese Eigenschaft auf False setzen, wird der Microsoft Dynamics 365 Business Central-Validierungstrigger für dieses Feld übersprungen.

Seien Sie sehr vorsichtig, wenn Sie False verwenden. Sie sollten die Validierung nur nach Rücksprache mit einem Programmierer deaktivieren. Sie sollten es in keiner der standardmäßigen Dynamics-Tabellen deaktivieren, außer, dass Sie wirklich wissen, was Sie tun. Sie können Microsoft Dynamics 365 Business Central unbrauchbar machen, indem Sie den Validierungscode überspringen.

Assignment Mode

Diese Eigenschaft ist nur verfügbar, wenn der DestType auf Field gesetzt ist und Sie den NAV-Konverter verwenden. Weitere Informationen finden Sie auf der Konverterseite.