Umsetzung der APERAK-Nachricht (Version 2.1) in Ihrer Anwendung
Gemäß dem Anwendungshandbuch APERAK 2.1 (Stand: MIG APERAK 2.1, Publikationsdatum: 01.04.20XX)
Die APERAK-Nachricht (Application Error and Acknowledgement Message) dient der Übermittlung von Empfangsbestätigungen, Fehlermeldungen und Statusrückmeldungen im elektronischen Datenaustausch (EDI). Die Version 2.1 des Message Implementation Guide (MIG) definiert die strukturellen und inhaltlichen Anforderungen für die korrekte Implementierung. Dieser Leitfaden erläutert die konkreten Schritte zur Umsetzung sowie die zu beachtenden Vorgaben.
1. Grundlegende Anforderungen an die APERAK-Nachricht 2.1
Die APERAK-Nachricht muss den folgenden technischen und inhaltlichen Standards entsprechen:
1.1 Struktur der Nachricht (EDIFACT-Syntax)
Die APERAK-Nachricht folgt der EDIFACT-Syntax (ISO 9735) und besteht aus:
- UNA-Segment (Service String Advice, optional)
- UNB-Segment (Interchange Header)
- UNH-Segment (Message Header)
- Nachrichteninhalt (APERAK-spezifische Segmente)
- UNT-Segment (Message Trailer)
- UNZ-Segment (Interchange Trailer)
Beispiel einer minimalen APERAK-Struktur:
UNA:+.? '
UNB+UNOC:3+SenderID+EmpfängerID+200401:1020+123456'
UNH+1+APERAK:D:02A:UN'
BGM+380+REF123+9'
DTM+137:20200401:102'
ERC+1++1:ZZZ'
FTX+AAI+++Fehlerhafte Artikelnummer'
UNT+6+1'
UNZ+1+123456'
1.2 Pflichtsegmente und -daten
Folgende Segmente sind verpflichtend und müssen gemäß MIG APERAK 2.1 ausgefüllt werden:
| Segment | Beschreibung | Pflichtfeld | Beispiel |
|---|---|---|---|
| UNH | Nachrichtenkopf | Ja | UNH+1+APERAK:D:02A:UN' |
| BGM | Beginn der Nachricht (Dokumentenart) | Ja | BGM+380+REF123+9' (380 = APERAK, 9 = Originalnachricht akzeptiert) |
| DTM | Datum/Uhrzeit | Ja | DTM+137:20240401:102' (137 = Erstellungsdatum) |
| ERC | Fehlercode | Bedingt (bei Fehlern) | ERC+1++1:ZZZ' (1 = Fehlerkategorie, ZZZ = benutzerdefinierter Code) |
| FTX | Freitext (Fehlerbeschreibung) | Bedingt | FTX+AAI+++Ungültiges Format in Segment LIN' |
Hinweis:
- Der BGM-Code 380 kennzeichnet eine APERAK-Nachricht.
- Der Statuscode in BGM+4 gibt die Art der Rückmeldung an:
9= Originalnachricht akzeptiert8= Originalnachricht teilweise akzeptiert7= Originalnachricht abgelehnt
2. Konkrete Umsetzungsschritte in Ihrer Anwendung
2.1 Vorbereitung: Mapping der APERAK-Struktur
Analyse der Originalnachricht
- Identifizieren Sie die Referenznummer (BGM+2) der ursprünglichen Nachricht (z. B. eine ORDERS- oder INVOIC-Nachricht).
- Prüfen Sie, ob die Nachricht syntaktisch korrekt ist (z. B. Segmentreihenfolge, Zeichensatz).
Fehlerklassifizierung
- Nutzen Sie die ERC-Codes (Error Codes) aus dem MIG, um Fehler zu kategorisieren:
1= Syntaxfehler2= Inhaltsfehler3= Referenzfehler
- Ergänzen Sie bei Bedarf benutzerdefinierte Codes (z. B.
ZZZfür spezifische Anwendungsfehler).
- Nutzen Sie die ERC-Codes (Error Codes) aus dem MIG, um Fehler zu kategorisieren:
Generierung der APERAK-Nachricht
- Erstellen Sie eine EDIFACT-konforme Struktur mit den Pflichtsegmenten.
- Füllen Sie die Segmente mit den tatsächlichen Daten (z. B. Fehlerbeschreibung in FTX).
2.2 Technische Implementierung
Option 1: Manuelle Erstellung (für kleine Volumina)
- Nutzen Sie einen EDIFACT-Editor (z. B. EDI Notepad, Altova MapForce) zur manuellen Generierung.
- Validieren Sie die Nachricht mit einem EDIFACT-Validator (z. B. EDI Validator).
Option 2: Automatisierte Verarbeitung (empfohlen)
Integration eines EDI-Konverters
- Nutzen Sie eine Middleware (z. B. SAP PO, MuleSoft, BizTalk) oder eine Bibliothek (z. B. EDI.Net für .NET, PyEDI für Python).
- Beispiel (Python mit PyEDI):
from pyedi import EdiMessage aperak = EdiMessage() aperak.add_segment("UNA:+.? '") aperak.add_segment("UNB+UNOC:3+SENDER+RECEIVER+240401:1020+123456'") aperak.add_segment("UNH+1+APERAK:D:02A:UN'") aperak.add_segment("BGM+380+REF123+7'") # 7 = abgelehnt aperak.add_segment("DTM+137:20240401:102'") aperak.add_segment("ERC+2++1:ZZZ'") # 2 = Inhaltsfehler aperak.add_segment("FTX+AAI+++Ungültige Lieferadresse'") aperak.add_segment("UNT+6+1'") aperak.add_segment("UNZ+1+123456'") print(aperak.to_string())
Validierung gegen das MIG
- Prüfen Sie die Nachricht auf:
- Pflichtsegmente (UNH, BGM, DTM)
- Korrekte Codes (z. B. BGM+4, ERC)
- Zeichensatzkonformität (UNOC:3 unterstützt Umlaute, Sonderzeichen müssen maskiert werden).
- Prüfen Sie die Nachricht auf:
Übertragung an den Partner
- Nutzen Sie sichere Protokolle (AS2, SFTP, OFTP2) für die Übermittlung.
- Stellen Sie sicher, dass die Empfänger-ID (UNB+3) korrekt ist.
3. Wichtige Anforderungen und Best Practices
3.1 Zeichensatz und Sonderzeichen
- Standard: UNOC:3 (UTF-8-kompatibel, unterstützt Umlaute und Sonderzeichen).
- Maskierung: Sonderzeichen wie
+,:,'müssen mit?maskiert werden (z. B.?+statt+). - Beispiel:
FTX+AAI+++Fehler: Ungültiges Zeichen ?+ in Segment NAD'
3.2 Referenzierung der Originalnachricht
- Die Referenznummer (BGM+2) muss mit der UNH-Referenz der Originalnachricht übereinstimmen.
- Beispiel:
- Originalnachricht:
UNH+1+ORDERS:D:01B:UN' - APERAK:
BGM+380+1+9'(Referenz =1)
- Originalnachricht:
3.3 Fehlerbehandlung
- Syntaktische Fehler (z. B. fehlende Segmente) → ERC+1
- Inhaltliche Fehler (z. B. ungültige Artikelnummer) → ERC+2
- Prozessfehler (z. B. unbekannte Bestellnummer) → ERC+3
3.4 Test und Zertifizierung
- Testphase: Führen Sie Testläufe mit Ihrem EDI-Partner durch, um die Kompatibilität zu prüfen.
- Zertifizierung: Einige Branchen (z. B. Automobilindustrie) verlangen eine offizielle Zertifizierung der APERAK-Nachricht.
4. Häufige Fehler und Lösungen
| Fehler | Ursache | Lösung |
|---|---|---|
| UNH-Segment fehlt | Falsche Nachrichtenstruktur | UNH als erstes Segment nach UNB einfügen. |
| Falscher BGM-Code | Code 380 nicht verwendet | Immer BGM+380 für APERAK nutzen. |
| Ungültige Referenz | BGM+2 stimmt nicht mit Original-UNH überein | Referenznummer prüfen und anpassen. |
| Sonderzeichen nicht maskiert | Zeichen wie + oder ' brechen die Syntax |
Maskierung mit ? (z. B. ?+). |
| Fehlender DTM-Segment | Datum/Uhrzeit nicht angegeben | Immer DTM+137 mit Erstellungsdatum einfügen. |
5. Weiterführende Ressourcen
- Offizielles MIG APERAK 2.1 (zu beziehen über UN/CEFACT)
- EDIFACT-Syntax-Referenz (ISO 9735)
- Tools:
- EDI Notepad (Editor)
- EDI Validator (Validierung)
- PyEDI (Python-Bibliothek)
6. Zusammenfassung der Umsetzungsschritte
- Analyse der Originalnachricht (Referenz, Fehler).
- Erstellung der APERAK-Struktur mit Pflichtsegmenten (UNH, BGM, DTM, ERC, FTX).
- Validierung gegen das MIG APERAK 2.1.
- Testphase mit dem EDI-Partner.
- Produktive Implementierung mit automatisierter Generierung und Übertragung.
Bei Fragen zur spezifischen Umsetzung in Ihrer Systemumgebung wenden Sie sich an Ihren EDI-Dienstleister oder die zuständige Fachabteilung.