Überschreiben von EDI-Headern
Beim Senden eines EDI-codierten Austauschs basiert der auf die Nachricht angewendete EDI-Umschlag normalerweise auf den EDI-Eigenschaften der Empfangsvereinbarung oder auf den Eigenschaften der Ausweichvereinbarung. Häufig empfiehlt es sich jedoch, die Eigenschaften des EDI-Umschlags auf der Grundlage der zur Laufzeit generierten Werte festzulegen.
In BizTalk Server können Sie die EdiOverride-Kontexteigenschaften verwenden, um die Werte anzugeben, die zum Generieren des EDI-Umschlags für ausgehende Dokumente verwendet werden.
Verwenden von EdiOverride-Kontexteigenschaften
Mit den EdiOverride-Kontexteigenschaften können die Werte zum Generieren des EDI-Umschlags teilweise oder vollständig überschrieben werden. Die EDI-Sendepipeline verwendet eine EdiOverride-Kontexteigenschaft mit einem gültigen Wert, um den Umschlag zu erstellen. Bei einer nicht aufgefüllten Eigenschaft verwendet die Pipeline den in Vereinbarungseigenschaften oder Ausweichvereinbarungseigenschaften (wenn keine Vereinbarung definiert ist) angegebenen Wert. Wenn eine Eigenschaft einen ungültigen Wert enthält, wird die Nachricht von der Pipeline angehalten, und ein Überprüfungsfehler wird gemeldet.
Hinweis
Die in der EdiOverride-Auflistung angegebenen Werte werden nur verwendet, wenn die EdiOverride.OverrideEdiHeader
Eigenschaft in den Kontext einer Nachricht geschrieben wird und den Wert "True" enthält.
Der Standardwert ist nicht festgelegt.
EdiOverride-Eigenschaften für X12-Umschlagwerte
In der folgenden Tabelle werden die EdiOverride-Kontexteigenschaften und der entsprechende X12-Umschlagheader aufgeführt:
Header | Eigenschaften |
---|---|
Austauschkontrollheader (ISA) | ISA01, ISA02, ISA03, ISA04, ISA05, ISA06, ISA07, ISA08, ISA09, ISA10, ISA11, ISA12, ISA13, ISA14, ISA15, ISA16 |
Funktionsgruppenheader (GS) | GS01, GS02, GS03, GS04, GS05, GS06, GS07, GS08 |
Transaktionssatzheader | ST02 |
EdiOverride-Eigenschaften für EDIFACT-Umschlagwerte
In der folgenden Tabelle werden die EdiOverride-Kontexteigenschaften und das entsprechende EDIFACT-Umschlagsegment aufgeführt:
Segment | Eigenschaften |
---|---|
Dienstmeldungszeichenfolge (UNA) | UNA1, UNA2, UNA3, UNA4, UNA5, UNA6, UNA6Suffix |
Austauschkontrollheader (UNB) | UNB1_1, UNB1_2, UNB2_1, UNB2_2, UNB2_3, UNB3_1, UNB3_2, UNB3_3, UNB4_1, UNB4_2, UNB5, UNB6_1, UNB7, UNB8, UNB9, UNB10, UNB11 |
Funktionsgruppenheader (UNG) | UNG1, UNG2_1, UNG2_2, UNG3_1, UNG3_2, UNG4_1, UNG4_2, UNG5, UNG6, UNG7_1, UNG7_2, UNG7_3, UNG8 |
Nachrichtenheader (UNH) | UNH1 |
Da die UNA- und UNG EDIFACT-Segmente optional sind, können die Eigenschaften GenerateUNA und GenerateUNG verwendet werden, um zu bestimmen, ob diese Header generiert werden, unabhängig von der Einstellung UNA-Segmentvereinbarung anwenden . In den folgenden Tabellen sind die Werte aufgeführt, bei denen diese Segmente generiert werden:
GenerateUNA-Kontexteigenschaft | Vereinbarungseinstellung "UNA-Segment übernehmen" | Engine-Verhalten |
---|---|---|
true | AKTIVIERT | UNA generieren |
true | NICHT AKTIVIERT | UNA generieren |
FALSE | AKTIVIERT | UNA nicht generieren |
false | NICHT AKTIVIERT | UNA nicht generieren |
Nicht vorhanden (OverrideEDIHeader ist auf "false" festgelegt) | AKTIVIERT | UNA generieren |
Nicht vorhanden (OverrideEDIHeader ist auf "false" festgelegt) | NICHT AKTIVIERT | UNA nicht generieren |
GenerateUNG-Kontexteigenschaft | Vereinbarungseinstellung "UNG-Segmente erstellen" | Engine-Verhalten |
---|---|---|
true | AKTIVIERT | UNG generieren |
true | NICHT AKTIVIERT | UNG generieren |
FALSE | AKTIVIERT | UNG nicht generieren |
false | NICHT AKTIVIERT | UNG nicht generieren |
Nicht vorhanden (OverrideEDIHeader ist auf "false" festgelegt) | AKTIVIERT | UNG generieren |
Nicht vorhanden (OverrideEDIHeader ist auf "false" festgelegt) | NICHT AKTIVIERT | UNG nicht generieren |
Gruppenumschläge
Gruppenumschläge stellen eine besondere Herausforderung dar, da am Austausch mehrere Gruppe beteiligt sein können. Um dieser Herausforderung gerecht zu werden, kann die EDI-Sendepipeline beim Austausch den Umschlag entweder für alle Gruppen übernehmen oder den Umschlag auf die einzige Gruppe im Austausch anwenden.
Bei Einzeltransaktionen können alle GS- oder UNG-Felder überschrieben werden, während bei Batchaustauschvorgänge lediglich die folgenden Felder überschrieben werden können:
GS04
GS05
UNG4_1
UNG4_2
Batching
Das Überschreiben der Transaktionssatz-Kontrollnummer für Nachrichten im Batchmodus wird von der Batchverarbeitungsorchestrierung behandelt. Die folgenden Eigenschaften können in den Kontext einer beliebigen Nachricht im Batchmodus geschrieben werden, um die Transaktionssatz-Kontrollnummer zu überschreiben:
ST02 (für X12-Nachrichten)
UNH1 (für EDIFACT-Nachrichten)
Hinweis
Wenn mehrere eingehende Nachrichten dieselbe Kontrollnummer in derselben Gruppe enthalten, werden Nachrichten mit mehrfach vorhandenen Nummern angehalten.
Hinweis
Die EdiOverride Kontexteigenschaften ISA, UNA, GS und UNG dürfen nicht für Nachrichten höher gestuft werden, die im Batchmodus verarbeitet werden sollen. Wenn Sie diese Eigenschaften überschreiben müssen, stufen Sie sie vor dem Senden an die EDI-Sendepipeline in der Ausgabenachricht der Batchorchestrierung höher.
Trennzeichenkonflikte
Trennzeichen, z. B. die UNA-Header, müssen einen eindeutigen Wert für jedes Feld enthalten. Beim Überschreiben von Trennzeichenwerten (z. B. der UNA-Header) müssen Sie sicherstellen, dass jeder Trennzeichenwert nicht nur für die überschriebenen Werte eindeutig ist, sondern auch für alle Trennzeichenwerte, die in den Vereinbarungs- oder Ausweichvereinbarungseinstellungen verwendet werden.
Wenn Sie beispielsweise UNA1, UNA2, und UNA4 überschreiben und UNA3, UNA5, UNA6 und UNA6Suffix aus Vereinbarungseigenschaften stammen, muss jede Eigenschaft in Bezug auf die anderen Eigenschaften einen eindeutigen Wert aufweisen.