EDIFACT Adapter
Der Adapter liest eine EDIFACT-Nachricht (Rohdaten und Stage 1–3, DIN ISO 9735-konform) und gibt sie als UTF-8-kodiertes XML-Dokument aus.
Eigenschaften (Properties)
Operation | Bestimmt, welche Operation der Funktions-Adapter durchführt Mögliche Werte:
|
Parameter
Adapter | Hauptklasse des Adapters (nicht verändern!) Mögliche Werte: |
Statuswerte
1 | Die Operation wurde erfolgreich ausgeführt. |
0 | Die Operation wurde erfolgreich ausgeführt, jedoch ohne Ergebnis (Input ist null). |
-1 | Die Operation ist aufgrund eines technischen Fehlers fehlgeschlagen. |
Input
Eine EDIFACT-Nachricht vom Typ INVOIC (Rechnung) könnte wie folgt aufgebaut sein:
UNA:+,? '
UNB+UNOC:2+FHPEDAL+HUBERGMBH+990802:1557+9908021557'
UNH+INVOIC0001+INVOIC:D:93A:UN'
BGM+380+9908001+9'
DTM+3:19990802:102'
RFF+ON:O0010001'
DTM+4:19999715:102'
NAD+SE++Fahrradhandel Pedal++Wagingerstr. 5+München++81549'
NAD+BY++Huber GmbH++Obstgasse 2+München++81549'
LIN+1++4711.001'
IMD+F++:::Fahrrad, Damen'
QTY+47:1:PCE'
MOA+66:750'
PRI+AAA:750'
LIN+2++4711.002'
IMD+F++:::Luftpumpe, Stand-'
QTY+47:1:PCE'
MOA+66:19,9'
PRI+AAA:19,9'
LIN+3++4711.003'
IMD+F++:::Ersatzventil'
QTY+47:3:PCE'
MOA+66:7,5'
PRI+AAA:2,5'
UNS+S'
MOA+79:777,4'
MOA+124:124,38'
MOA+128:901,78'
TAX+7+VAT+++:::16+S'
UNT+28+INVOIC0001'
UNZ+1+9908021557'
Output
Mit Operation ReadRaw
werden EDIFACT-Nachrichten 1:1 als XML ausgegeben, z. B.:
<EDIFACT decimalSeparator="," segmentTerminator="'"
releaseIndicator="?" dataSeparator="+" componentSeparator=":">
<Segment>
<Component>
<Data>UNB</Data>
</Component>
<Component>
<Data>UNOC</Data>
<Data>2</Data>
</Component>
<Component>
<Data>FHPEDAL</Data>
</Component>
<Component>
<Data>HUBERGMBH</Data>
</Component>
<Component>
<Data>990802</Data>
<Data>1557</Data>
</Component>
<Component>
<Data>9908021557</Data>
</Component>
</Segment>
<!--weitere Segmente-->
</EDIFACT>
Mit Operation ReadStage1
werden EDIFACT-Nachrichten als XML-Dokumente ausgegeben, die bereits statt generischen Elementnamen konkrete Namen verwenden, z. B.:
<EDIFACT decimalSeparator="," segmentTerminator="'"
releaseIndicator="?" dataSeparator="+" componentSeparator=":">
<UNB>
<Component>
<Data>UNOC</Data>
<Data>2</Data>
</Component>
<Component>
<Data>FHPEDAL</Data>
</Component>
<Component>
<Data>HUBERGMBH</Data>
</Component>
<Component>
<Data>990802</Data>
<Data>1557</Data>
</Component>
<Component>
<Data>9908021557</Data>
</Component>
</UNB>
<!--weitere Segmente-->
</EDIFACT>
Mit Operation ReadStage2
werden EDIFACT-Nachrichten als XML-Dokumente ausgegeben, in denen die Segmente anhand der Nachrichten organisiert sind, z. B.:
<EDIFACT decimalSeparator="," segmentTerminator="'"
releaseIndicator="?" dataSeparator="+" componentSeparator=":">
<UNB>
<Component>
<Data>UNOC</Data>
<Data>2</Data>
</Component>
<!--weitere Komponenten-->
<UNH>
<Component>
<Data>INVOIC0001</Data>
</Component>
(weitere Komponenten)
<BGM>
<Component>
<Data>380</Data>
</Component>
<Component>
<Data>9908001</Data>
</Component>
<Component>
<Data>9</Data>
</Component>
</BGM>
<!--weitere Segmente-->
<UNT>
<Component>
<Data>28</Data>
</Component>
<Component>
<Data>INVOIC0001</Data>
</Component>
</UNT>
</UNH>
<UNZ>
<Component>
<Data>1</Data>
</Component>
<Component>
<Data>9908021557</Data>
</Component>
</UNZ>
</UNB>
</EDIFACT>
Mit Operation ReadStage3
werden EDIFACT-Nachrichten als XML-Dokumente ausgegeben, in denen die Segmente mit der korrekten Hierarchie inklusive verschachtelten Segmentgruppen im Baum gegliedert sind, sofern der Adapter den Nachrichtentyp unterstützt, z. B.:
<EDIFACT decimalSeparator="," segmentTerminator="'"
releaseIndicator="?" dataSeparator="+" componentSeparator=":">
<UNB>
<Component>
<Data>UNOC</Data>
<Data>2</Data>
</Component>
<!--weitere Komponenten-->
<UNH>
<Component>
<Data>INVOIC0001</Data>
</Component>
<Component>
<Data>INVOIC</Data>
<Data>D</Data>
<Data>93A</Data>
<Data>UN</Data>
</Component>
<BGM>
<Component>
<Data>380</Data>
</Component>
<Component>
<Data>9908001</Data>
</Component>
<Component>
<Data>9</Data>
</Component>
</BGM>
<DTM>
<Component>
<Data>3</Data>
<Data>19990802</Data>
<Data>102</Data>
</Component>
</DTM>
<!--weitere Segmente-->
<SegmentGroup22>
<LIN>
<Component>
<Data>1</Data>
</Component>
<Component>
<Data />
</Component>
<Component>
<Data>4711.001</Data>
</Component>
</LIN>
<IMD>
<Component>
<Data>F</Data>
</Component>
<Component>
<Data />
</Component>
<Component>
<Data />
<Data />
<Data />
<Data>Fahrrad, Damen</Data>
</Component>
</IMD>
<QTY>
<Component>
<Data>47</Data>
<Data>1</Data>
<Data>PCE</Data>
</Component>
</QTY>
<SegmentGroup23>
<MOA>
<Component>
<Data>66</Data>
<Data>750</Data>
</Component>
</MOA>
</SegmentGroup23>
<SegmentGroup25>
<PRI>
<Component>
<Data>AAA</Data>
<Data>750</Data>
</Component>
</PRI>
</SegmentGroup25>
</SegmentGroup22>
<!--weitere Segmentgruppen-->
<UNT>
<Component>
<Data>28</Data>
</Component>
<Component>
<Data>INVOIC0001</Data>
</Component>
</UNT>
</UNH>
<UNZ>
<Component>
<Data>1</Data>
</Component>
<Component>
<Data>9908021557</Data>
</Component>
</UNZ>
</UNB>
</EDIFACT>