Die Rechnungsprüfung läuft, aber das Ergebnis-XML lässt sich nicht einlesen. Der Parser beanstandet ein &, und der erwartete summary-Abschnitt fehlt. Ein Mustang-Bericht nennt Version 2.26.0 und einen Dateinamen mit kaufmännischem Und als Auslöser. Q1 Die erste Frage betrifft hier die Berichtserzeugung, nicht automatisch den Rechnungsinhalt.
Drei Zustände sauber unterscheiden
„Geprüft und gültig“, „geprüft und ungültig“ sowie „Prüfung oder Bericht nicht auswertbar“ sind verschiedene Ergebnisse. Auch veraPDF führt Verarbeitungsausfälle gesondert von Konformitätsbefunden. Q2 Eine Integration darf das Fehlen eines auslesbaren Fehlers nicht als Erfolg interpretieren.
Mit unverändertem Inhalt testen
- Eingabe und Rohbericht sichern. Bewahre die Rechnung, den ungeparsten Prüfbericht und den ersten Parserfehler auf. Notiere Mustang-, Java- und Integrationsversion. Ein bereits verkürzter Logauszug kann genau die fehlerhafte Stelle verlieren.
- Neutral benannte Kopie anlegen. Verwende denselben Dateiinhalt unter einem einfachen Testnamen ohne Sonderzeichen. Vergleiche Prüfsummen, damit der Versuch ausschließlich den Namen verändert. Halte die Zuordnung zum Original fest.
- Berichte unabhängig einlesen. Prüfe beide Ausgaben auf Wohlgeformtheit und Vollständigkeit. Erscheint der Fehler nur mit dem ursprünglichen Namen, ist der Berichtspfad eingegrenzt. Das allein sagt noch nichts über die fachliche Richtigkeit der Rechnung.
- Fehlerstelle zuordnen. Steht der problematische Name im vom Validator erzeugten Bericht, gehört die Reparatur zur sicheren XML-Ausgabe beziehungsweise Serialisierung. Ersetze nicht pauschal alle
&im Rechnungs-XML; gültige Entitäten und echte Inhalte können dadurch beschädigt werden. - Automatische Entscheidung prüfen. Kontrolliere, was dein System bei Parserfehler, leerem Bericht und fehlender Zusammenfassung tut. Solche Dateien benötigen einen sichtbaren Prüfstatus. Sie dürfen weder unbemerkt freigegeben noch als erfolgreich vollständig validiert markiert werden.
Korrektur und Abnahme
Im Originalfall wird eine kommende Korrektur angekündigt; das ersetzt keine Prüfung der tatsächlich eingesetzten Version. Q1 Teste eine passende Änderung mit neutralem Namen, Sonderzeichen und einer bewusst fehlerhaften Testrechnung. Der Ablauf muss sowohl lesbare Berichte erzeugen als auch echte Fehler weiterhin erkennen.
Für Unterstützung sind Dateiname, bereinigter Berichtsausschnitt, Versionsstände und der Vergleich mit identischem Inhalt ausreichend. Vertrauliche Rechnungen müssen nicht vollständig geteilt werden, wenn eine synthetische Datei den Berichtfehler reproduziert. Dies ist eine technische Prüfung der Verarbeitung, keine rechtliche Freigabe eines Belegs.
Beispiel: Gleiche Datei, anderer Name, anderer Prüfbericht
Konstruiertes Diagnosebeispiel: Eine synthetische Testdatei liegt als probe.pdf und als probe & vergleich.pdf vor. Beide sollen bytegleich sein. Die folgende Gegenüberstellung plant eine Prüfung; sie behauptet keine tatsächlich beobachteten Ergebnisse.
- Gleichheit sichern: Vergleiche die Prüfsummen beider Kopien. Unterscheiden sie sich, wäre nicht nur der Name verändert und der Versuch müsste neu abgegrenzt werden.
- Ausgabe vollständig sichern: Verwende für beide Dateien denselben Validatorstand und dieselbe Konfiguration. Bewahre jeweils den vollständigen Rohbericht und die zugehörige Fehlermeldung getrennt auf.
- Ergebnis einordnen: Ein vollständiger gültiger Bericht, ein vollständiger ungültiger Bericht und eine nicht auswertbare Ausgabe sind drei verschiedene Zustände. Scheitert nur der Sonderzeichenname beim XML-Einlesen, ist die Berichtserzeugung eingegrenzt. Die Rechnung ist dadurch noch nicht als gültig beurteilt.
Erwartete Beobachtung: Die Berichte bleiben eindeutig ihren Eingabedateien zugeordnet. Fehlende Zusammenfassungen werden als fehlendes Ergebnis sichtbar und nicht stillschweigend als bestandene Validierung behandelt.
Erfolgskontrolle: Nach einer gezielten Korrektur liefern beide Namen lesbare, vollständige Berichte. Eine zusätzlich bewusst fehlerhafte Testdatei wird weiterhin als fehlerhaft erkannt. So prüfst du sowohl die Ausgabe als auch die Annahmelogik. Rechnungsinhalte werden für diesen Namensvergleich nicht verändert; insbesondere ist pauschales Ersetzen von Ampersands im Rechnungs-XML kein Teil des Tests.
Fachliche Grundlage: Mustangproject issue 1327: Ampersand in filename breaks XML report · veraPDF: CLI validation and reports.
Häufige Fragen
Ist die Rechnung wegen des Dateinamens falsch?
Der beschriebene Befund betrifft zunächst das erzeugte Ergebnisdokument. Die Rechnung braucht anschließend weiterhin ihre vollständige Prüfung.
Kann ich den Bericht einfach als Text durchsuchen?
Das kann bei der Diagnose helfen, ersetzt aber keine verlässliche strukturierte Auswertung und eindeutige Fehlerbehandlung.
Befundnotiz vorbereiten
Fasse deine Beobachtungen für die Anfrage zusammen. Die Notiz entsteht in deinem Browser; sie wird hier weder gespeichert noch versendet. Du kannst sie anschließend ins Kontaktformular kopieren.
Unbekannt ist möglich. Bitte keine Passwörter, Kundendaten oder vollständigen vertraulichen Protokolle eintragen.
Unterstützung bei diesem Fehler
Wir können Berichtserzeugung, Parser und Annahmelogik deiner Rechnungsintegration prüfen.
