Wann und wie ist eine CONTRL-Syntaxfehlermeldung zu versenden?
Gemäß den Vorgaben des Edifact-Standards (UN/EDIFACT) und den branchenspezifischen Regelungen für den Strommarkt ist der Empfänger einer Übertragungsdatei verpflichtet, eine CONTRL-Nachricht (Syntaxfehlermeldung) zu versenden, wenn die eingegangene Datei syntaktische Fehler aufweist. Dies dient der Sicherstellung einer korrekten Datenverarbeitung und der Vermeidung von Folgefehlern in der Kommunikation zwischen Marktpartnern.
1. Wann muss eine CONTRL-Syntaxfehlermeldung versendet werden?
Eine CONTRL-Nachricht in der Ausprägung Syntaxfehlermeldung (UNA/UNB/UNZ-Fehler) ist ausschließlich dann zu versenden, wenn die eingegangene Übertragungsdatei syntaktisch fehlerhaft ist. Dies umfasst:
a) Fehler in der Segmentstruktur (UN/EDIFACT-Syntax)
- Fehlende oder falsche Trennzeichen (z. B. falsches Dezimalzeichen, falsche Segment- oder Datenelementtrennzeichen in der UNA-Segmentgruppe).
- Falsche Reihenfolge oder fehlende Pflichtsegmente (z. B. fehlendes UNB- oder UNZ-Segment).
- Fehlerhafte Segmentwiederholungen (z. B. mehrfaches Auftreten eines Segments, das nur einmal vorkommen darf).
- Falsche Datenelementlängen (z. B. zu lange oder zu kurze Werte in einem Datenelement).
- Fehlende oder ungültige Kontrollinformationen (z. B. falsche Prüfsumme im UNZ-Segment).
b) Fehler in der Nachrichtenstruktur (UNH/UNT)
- Fehlendes oder falsches Nachrichtenkopfsegment (UNH) (z. B. falsche Nachrichtenreferenznummer).
- Fehlendes oder falsches Nachrichtenendsegment (UNT) (z. B. falsche Segmentanzahl).
- Falsche Nachrichtenversion (z. B. nicht unterstützte EDIFACT-Version wie D.96A statt D.16A).
c) Technische Formatfehler
- Nicht lesbare Zeichen (z. B. Sonderzeichen, die nicht im definierten Zeichensatz enthalten sind).
- Fehlende oder falsche Zeichencodierung (z. B. UTF-8 statt ISO-8859-1).
- Datei ist nicht im EDIFACT-Format (z. B. XML- oder CSV-Datei statt EDIFACT).
Wichtig:
- Eine CONTRL-Syntaxfehlermeldung ist nicht zu versenden, wenn die Datei zwar syntaktisch korrekt, aber inhaltlich falsch ist (z. B. falsche Zählernummer, ungültiges Datum). In solchen Fällen ist stattdessen eine APERAK-Nachricht (Anwendungsfehlermeldung) zu verwenden.
- Bei technischen Übertragungsfehlern (z. B. abgebrochene Verbindung, korrupte Datei) ist keine CONTRL zu senden, sondern ggf. eine manuelle Klärung einzuleiten.
2. Wie erkenne ich eine syntaktisch falsche Übertragungsdatei?
Die Prüfung auf Syntaxfehler erfolgt in der Regel automatisiert durch ein EDI-System (z. B. Konverter, Validator). Folgende Schritte sind zur Erkennung notwendig:
a) Prüfung der UNA-Segmentgruppe (Trennzeichen)
Die UNA-Segmentgruppe definiert die Trennzeichen für die Datei. Beispiel:
UNA:+.? '- Segmenttrennzeichen:
'(Apostroph) - Datenelementtrennzeichen:
+(Plus) - Dezimalzeichen:
.(Punkt) - Escape-Zeichen:
?(Fragezeichen) - Wiederholungstrennzeichen:
:(Doppelpunkt, falls verwendet)
Fehlerbeispiele:
- Fehlendes UNA-Segment (obwohl es in der EDIFACT-Version Pflicht ist).
- Falsche Trennzeichen (z. B.
,statt+als Datenelementtrennzeichen).
- Segmenttrennzeichen:
b) Prüfung des UNB-Segments (Übertragungskopf)
- Das UNB-Segment enthält Metadaten zur Übertragung, z. B.:
Fehlerbeispiele:UNB+UNOC:3+SenderID+EmpfängerID+210301:1200+123456'- Fehlende oder falsche Syntaxversion (z. B.
UNOC:2stattUNOC:3). - Ungültiges Datum/Zeit-Format (z. B.
210301:1200stattYYMMDD:HHMM). - Fehlende Sender- oder Empfänger-ID.
- Fehlende oder falsche Syntaxversion (z. B.
c) Prüfung der Nachrichtenstruktur (UNH/UNT)
- Jede EDIFACT-Nachricht beginnt mit UNH und endet mit UNT.
Fehlerbeispiele:
- Fehlendes UNH-Segment.
- Falsche Nachrichtenreferenznummer (muss mit der im UNT übereinstimmen).
- Falsche Segmentanzahl im UNT (z. B.
UNT+5+123456bei tatsächlich 6 Segmenten).
d) Prüfung der Segmentreihenfolge und -wiederholungen
- Segmente müssen in der vorgegebenen Reihenfolge auftreten (z. B. BGM vor DTM).
- Pflichtsegmente (z. B. NAD für Namen und Adresse) dürfen nicht fehlen.
- Segmente mit maximaler Wiederholungszahl (z. B.
LINfür Positionen) dürfen diese nicht überschreiten.
e) Prüfung der Datenelemente
- Jedes Datenelement muss der definierten Länge und dem Format entsprechen.
Fehlerbeispiele:
- Numerisches Feld enthält Buchstaben (z. B.
123Astatt123). - Datum im falschen Format (z. B.
01.03.2021statt20210301). - Falsche Codewerte (z. B.
EURstatt276für Euro nach ISO 4217).
- Numerisches Feld enthält Buchstaben (z. B.
f) Prüfung des UNZ-Segments (Übertragungsende)
- Das UNZ-Segment muss die korrekte Anzahl der Nachrichten und die Prüfsumme enthalten.
Fehlerbeispiele:
- Falsche Nachrichtenanzahl (z. B.
UNZ+2+123456bei nur einer Nachricht). - Fehlende oder falsche Prüfsumme.
- Falsche Nachrichtenanzahl (z. B.
3. Vorgehen bei Erkennung eines Syntaxfehlers
Automatisierte Prüfung:
- Das EDI-System sollte die Datei validieren und bei Fehlern eine CONTRL-Syntaxfehlermeldung generieren.
- Die CONTRL muss innerhalb von 24 Stunden nach Eingang der fehlerhaften Datei versendet werden.
Manuelle Prüfung (falls erforderlich):
- Bei unklaren Fehlern kann eine manuelle Analyse der Datei mit einem EDIFACT-Validator (z. B. EDI-Validator der UN) erfolgen.
- Logdateien des EDI-Systems sollten auf Fehlermeldungen geprüft werden.
Erstellung der CONTRL-Nachricht:
- Die CONTRL muss folgende Informationen enthalten:
- Fehlercode (z. B.
1für Syntaxfehler). - Fehlerbeschreibung (z. B. "Ungültiges Trennzeichen im UNA-Segment").
- Referenz auf die fehlerhafte Nachricht (UNH-Referenznummer).
- Fehlercode (z. B.
- Beispiel einer CONTRL-Syntaxfehlermeldung:
UNA:+.? ' UNB+UNOC:3+EmpfängerID+SenderID+210301:1205+654321' UNH+1+CONTRL:D:96A:UN' BGM+7+123456+9' DTM+137:20210301:102' RFF+ACW:123456' ERC+1++UNA SEGMENT MISSING' UNT+6+1' UNZ+1+654321'
- Die CONTRL muss folgende Informationen enthalten:
Kommunikation mit dem Sender:
- Die CONTRL wird an den Sender übermittelt, der die Datei korrigieren und erneut senden muss.
- Bei wiederholten Fehlern sollte eine manuelle Abstimmung erfolgen.
4. Häufige Fehlerquellen und Vermeidung
| Fehlerquelle | Vermeidung |
|---|---|
| Falsche Trennzeichen | Prüfung der UNA-Segmentgruppe vor dem Versand. |
| Fehlende Pflichtsegmente | Nutzung eines EDI-Mappings, das die Pflichtsegmente automatisch ergänzt. |
| Falsche Datenelementformate | Validierung der Daten vor der Konvertierung in EDIFACT. |
| Ungültige Codewerte | Nutzung aktueller Code-Listen (z. B. ISO 3166 für Länder, ISO 4217 für Währungen). |
| Technische Übertragungsfehler | Prüfung der Dateiintegrität (z. B. via Prüfsumme) vor dem Versand. |
5. Rechtliche und vertragliche Rahmenbedingungen
- Die Pflicht zur Versendung einer CONTRL bei Syntaxfehlern ergibt sich aus:
- EDIFACT-Standard (ISO 9735).
- Marktregeln für den deutschen Strommarkt (z. B. Festlegungen der BNetzA).
- Individuellen Vereinbarungen zwischen Marktpartnern (z. B. EDI-Rahmenverträge).
- Eine unterlassene oder verspätete CONTRL kann zu Verzögerungen in der Abrechnung oder Vertragsstrafen führen.
Zusammenfassung
- Eine CONTRL-Syntaxfehlermeldung ist nur bei syntaktischen Fehlern zu versenden.
- Die Prüfung erfolgt anhand der EDIFACT-Syntaxregeln (UNA, UNB, UNH/UNT, Segmentstruktur, Datenelemente).
- Bei Fehlern ist die CONTRL innerhalb von 24 Stunden zu übermitteln.
- Inhaltliche Fehler (z. B. falsche Zählernummer) erfordern eine APERAK-Nachricht, keine CONTRL.
Für weitere Details wird auf die offiziellen EDIFACT-Spezifikationen (z. B. UN/EDIFACT) und die branchenspezifischen Regelwerke (z. B. BDEW-Edifact-Leitfaden) verwiesen.