Hilfe · ZUGFeRD Creator Version 3
Testen
Von innen nach außen: erst der Server, dann die Werte, dann die Datei, zuletzt der Knopf in der Kundendatei.
Diese Anleitung gilt für Version 3 des ZUGFeRD Creator. Sie arbeiten mit Version 4? Zur Hilfe für Version 4.
Die Reihenfolge
- Server
install_check.phpim Browser, siehe Prüfseite. Alles grün bei PHP und Erweiterungen. - VorschauIm Reiter „Zuordnung“ unten die Belegnummer eintragen und Vorschau. Rechts steht zu jedem Wert, was der Creator im echten Beleg findet.
- Test PDF und Test UBLOben die Belegnummer eintragen und Test PDF bzw. Test UBL. Das ruft
ZF_Beleg_erzeugengenau wie später der Knopf. Das Ergebnis liegt danach im Reiter „Preferences“ im Container „ZUGFeRD PDF“ bzw. „UBL XML Datei“. - Knopf in der KundendateiBeleg festschreiben, Knopf drücken. Die Datei steht danach im Zielcontainer am Beleg.
- Extern prüfenJe Format eine Datei bei einem Prüfer hochladen, siehe unten.
Die Vorschau lesen
- Grün: der Wert kommt so in die E-Rechnung.
- leer: nichts gefunden. Bei einem Pflichtwert bricht der Server später ab.
- ?: der Ausdruck ist ungültig, meist ein Feldname, den es so nicht gibt oder der im Beziehungsdiagramm des Creators fehlt.
Die Belegnummer ist hier dieselbe wie im Parameter nr des Knopfs, also der Wert aus „Belegnummer im Kopf“, bei einer ID eben die ID.
Das Ergebnis des Aufrufs
ZF_Beleg_erzeugen gibt JSON zurück. Im eigenen Script mit Get ( ScriptResult ) abholen:
{ "success" : true , "beleg" : "Rechnung" , "format" : "zugferd" ,
"datei" : "INV00966_ZUGFeRD.pdf" ,
"ziel" : "INV_Invoices::ZF_PDF" , "hinweis" : "" }
{ "success" : false , "error" : "Angebot …: keine Beleg-PDF -- erst den Beleg als PDF ablegen" }
error nennt den Grund im Klartext, bei fehlenden Pflichtwerten mit dem Namen des Wertes. hinweis ist leer, wenn alles geklappt hat; sonst liegt die Datei im Container des Creators, konnte aber nicht ans Ziel geschrieben werden.
Mit dem Script-Debugger
Kommt nichts zurück, ZF_Beleg_erzeugen im Debugger durchlaufen lassen. Der Datenviewer zeigt im Reiter „Aktuell“ die Adressen, den Parameter und die Zwischenergebnisse.
| Im Datenviewer | Worauf achten |
|---|---|
| $p | Der Parameter des Knopfs: stimmen beleg, nr und format? |
| $nr | Der Suchwert. Muss zum Feld „Belegnummer im Kopf“ passen. |
| $url_erzeugen | Die Adresse des Servers. Im Browser öffnen lässt sie sich nicht sinnvoll, aber der Hostname muss stimmen. |
| pdf_zugferd_container | Die Beleg-PDF auf dem Weg zum Server. Leer heißt: im Feld „Beleg-PDF“ der Belegart liegt nichts. |
| $r | Was beim Sammeln herauskam, mit Anzahl der Positionen und Layout. |
Extern prüfen
Der Server prüft die Pflichtangaben und rechnet die Summen selbst nach. Eine vollständige Prüfung nach den Regeln der EN 16931 macht er im Betrieb nicht. Deshalb bei der Einrichtung und nach jeder Änderung der Zuordnung je Format eine Datei bei einem Prüfer hochladen, etwa dem Validator des ZUGFeRD-Community-Portals oder dem Prüftool der KoSIT für die XRechnung. Beide melden Fehler mit Regelnummer, zum Beispiel BR-61 für eine fehlende IBAN oder BR-DE-15 für eine fehlende Käuferreferenz (Leitweg-ID).
Das Protokoll auf dem Server
Jeder Aufruf steht in uploads/zugferd_log.txt im PHP-Ordner, mit allen übertragenen Werten. Steht dort zu einem Test nichts, ist der Aufruf nicht beim Server angekommen, der Fehler liegt dann in FileMaker. Die Datei ist über HTTP gesperrt; lokal direkt im Ordner öffnen, auf dem Webserver per FTP.