Struktur einer EDIFACT-Nachricht
Kapitel 1.2: Struktur einer EDIFACT-Nachricht (UNB, UNH, UNT, UNZ)
In diesem Kapitel tauchen wir tiefer in die grundlegende Struktur einer EDIFACT-Nachricht ein. Wir betrachten die wichtigsten Segmente, die jede Nachricht umschließen und für den korrekten Datenaustausch in der Marktkommunikation der Energiewirtschaft unerlässlich sind: UNB, UNH, UNT und UNZ. Ein Verständnis dieser Segmente ist entscheidend, um EDIFACT-Nachrichten zu erstellen, zu interpretieren und Fehler zu beheben. Das BDEW-Regelwerk legt die spezifischen Anforderungen für diese Segmente in der deutschen Energiewirtschaft fest.
Die Grundstruktur einer EDIFACT-Nachricht
Eine EDIFACT-Nachricht lässt sich vereinfacht in folgende Bestandteile gliedern:
- UNB (Interchange Header): Der "Umschlagkopf" – identifiziert den Sender und Empfänger der gesamten Nachrichtengruppe.
- UNH (Message Header): Der "Nachrichtenkopf" – identifiziert den Nachrichtentyp und die Nachrichtenreferenznummer.
- Datensegmente: Der eigentliche Inhalt der Nachricht, bestehend aus verschiedenen Segmenten, die die auszutauschenden Daten enthalten (z.B. Stammdaten, Messwerte).
- UNT (Message Trailer): Der "Nachrichtenfuß" – enthält die Anzahl der Segmente in der Nachricht und die Nachrichtenreferenznummer (zur Validierung).
- UNZ (Interchange Trailer): Der "Umschlagfuß" – enthält die Anzahl der Nachrichten in der Gruppe und die Umschlagreferenznummer (zur Validierung).
Die Segmente im Detail
UNB – Interchange Header (Umschlagkopf)
Das UNB-Segment ist der Startpunkt jeder EDIFACT-Nachricht. Es enthält wichtige Informationen über den Absender, den Empfänger und die Syntax der Nachricht. Es fungiert als eine Art "Umschlag" für die gesamte Nachrichtengruppe.
Beispiel:
UNB+UNOC:3+SENDER_ID:ZZZ:1234+RECEIVER_ID:ZZZ:5678+240126:1000+12345+++++BDEW'
Erläuterung:
UNB: Kennzeichnet das Segment als UNB-Segment.UNOC:3: Gibt den verwendeten EDIFACT-Syntaxstandard an (UNOC Version 3).SENDER_ID:ZZZ:1234: Identifiziert den Absender (SENDER_ID) mit Qualifier (ZZZ) und Code (1234).RECEIVER_ID:ZZZ:5678: Identifiziert den Empfänger (RECEIVER_ID) mit Qualifier (ZZZ) und Code (5678).240126:1000: Datum (240126 = 26. Januar 2024) und Uhrzeit (1000 = 10:00 Uhr) der Nachrichtenerstellung.12345: Eine eindeutige Referenznummer für den Nachrichtenaustausch.+++++BDEW: Spezifische Informationen, in diesem Fall die Kennzeichnung als BDEW-Nachricht.
UNH – Message Header (Nachrichtenkopf)
Das UNH-Segment kennzeichnet den Beginn einer einzelnen Nachricht innerhalb des Umschlags. Es identifiziert den Nachrichtentyp (z.B. UTILMD, MSCONS) und vergibt eine eindeutige Referenznummer für diese Nachricht.
Beispiel:
UNH+12345+UTILMD:D:21BPDE:BDEW:1:FOO'
Erläuterung:
UNH: Kennzeichnet das Segment als UNH-Segment.12345: Eine eindeutige Referenznummer für diese Nachricht. Diese Referenznummer muss im UNT-Segment wiederholt werden.UTILMD:D:21BPDE:BDEW:1:FOO: Identifiziert den Nachrichtentyp (UTILMD), die Version (D), den Sub-Release (21BPDE), die Organisation (BDEW), den Release (1) und ggf. eine anwendungsspezifische Kennung (FOO).
UNT – Message Trailer (Nachrichtenfuß)
Das UNT-Segment markiert das Ende einer einzelnen Nachricht. Es enthält die Anzahl der Segmente in der Nachricht (inklusive UNH und UNT) und die Nachrichtenreferenznummer aus dem UNH-Segment. Dies dient der Validierung der Nachricht.
Beispiel:
UNT+25+12345'
Erläuterung:
UNT: Kennzeichnet das Segment als UNT-Segment.25: Die Gesamtzahl der Segmente in der Nachricht (inklusive UNH und UNT).12345: Die Nachrichtenreferenznummer, die mit der Referenznummer im UNH-Segment übereinstimmen muss.
UNZ – Interchange Trailer (Umschlagfuß)
Das UNZ-Segment markiert das Ende des gesamten Nachrichtenaustauschs (Umschlags). Es enthält die Anzahl der Nachrichten in der Gruppe und die Umschlagreferenznummer aus dem UNB-Segment. Dies dient der Validierung des gesamten Austauschs.
Beispiel:
UNZ+1+12345'
Erläuterung:
UNZ: Kennzeichnet das Segment als UNZ-Segment.1: Die Anzahl der Nachrichten in diesem Austausch (Umschlag).12345: Die Umschlagreferenznummer, die mit der Referenznummer im UNB-Segment übereinstimmen muss.
Praktische Beispiele
Betrachten wir ein einfaches Beispiel einer UTILMD-Nachricht (Stammdatenmeldung):
UNB+UNOC:3+SENDER_ID:ZZZ:1234+RECEIVER_ID:ZZZ:5678+240126:1000+12345+++++BDEW'
UNH+12345+UTILMD:D:21BPDE:BDEW:1:FOO'
BGM+52+M12345+9'
NAD+MS+DE12345678901+LIEFERANT'
LOC+139+47110815'
LOC+135+Berlin'
UNT+6+12345'
UNZ+1+12345'
In diesem Beispiel sehen wir die grundlegende Struktur einer EDIFACT-Nachricht mit den Segmenten UNB, UNH, BGM, NAD, LOC, UNT und UNZ. Die BGM-, NAD- und LOC-Segmente enthalten die eigentlichen Stammdaten. Dieses Beispiel ist stark vereinfacht, um die Kernstruktur zu verdeutlichen.
Herausforderungen und Best Practices
Die korrekte Implementierung der EDIFACT Struktur ist entscheidend für einen reibungslosen Datenaustausch. Fehler in den Segmenten UNB, UNH, UNT oder UNZ können zu Fehlinterpretationen oder Ablehnungen der Nachricht führen. Es ist daher wichtig, die BDEW-Vorgaben genau zu beachten und Validierungstools einzusetzen. Willi-Mako bietet umfassende Validierungsfunktionen, um sicherzustellen, dass Ihre EDIFACT-Nachrichten den Standards entsprechen.
Einige Best Practices für den Umgang mit der EDIFACT-Struktur:
- Korrekte Zählung der Segmente: Stellen Sie sicher, dass die Anzahl der Segmente im UNT-Segment korrekt ist.
- Übereinstimmende Referenznummern: Vergewissern Sie sich, dass die Referenznummern im UNH- und UNT-Segment sowie im UNB- und UNZ-Segment übereinstimmen.
- Verwendung von Validierungstools: Nutzen Sie Validierungstools, um Ihre EDIFACT-Nachrichten auf Fehler zu prüfen.
- Klare Dokumentation: Dokumentieren Sie Ihre EDIFACT-Implementierung, um die Wartung und Fehlerbehebung zu erleichtern.
Fazit
Ein solides Verständnis der EDIFACT Struktur, insbesondere der Segmente UNB, UNH, UNT und UNZ, ist unerlässlich für alle, die in der Marktkommunikation der Energiewirtschaft tätig sind. Durch die Beachtung der BDEW-Vorgaben und den Einsatz geeigneter Tools können Sie einen reibungslosen und effizienten Datenaustausch gewährleisten. EDIFACT mag komplex erscheinen, aber mit dem richtigen Wissen und den richtigen Werkzeugen können Sie die Herausforderungen meistern. Benötigen Sie Unterstützung bei der Erstellung und Validierung von EDIFACT-Nachrichten? Kontaktieren Sie uns für eine Demo!
Praxis-Tipps
- Nutzen Sie Testumgebungen: Testen Sie Ihre EDIFACT-Implementierung in einer Testumgebung, bevor Sie sie in Produktion einsetzen.
- Überwachen Sie Ihre Nachrichtenflüsse: Überwachen Sie Ihre EDIFACT-Nachrichtenflüsse, um Probleme frühzeitig zu erkennen.
- Bleiben Sie auf dem Laufenden: Die EDIFACT-Standards und die BDEW-Vorgaben ändern sich im Laufe der Zeit. Bleiben Sie auf dem Laufenden, um sicherzustellen, dass Ihre Implementierung aktuell ist.