export: Export¶
obd_diag.export.report¶
.. py:module:: obd_diag.export.report
PDF-Bericht und CSV einer Diagnosesitzung in der eingestellten Sprache (i18n).
CSV: eine Zeile pro Fehlercode, UTF-8 mit BOM; Trennzeichen auf Deutsch ;, auf
Englisch ,. So öffnet Excel die Datei per Doppelklick richtig (Umlaute, Spalten);
LibreOffice erkennt beides ebenfalls.
PDF: DIN A4 mit ReportLab (BSD-Lizenz). Schrift: eine eingebettete TrueType-Schrift des Systems (DejaVu Sans, Liberation Sans oder Noto Sans), damit der Bericht überall gleich aussieht; fehlen alle, Helvetica aus dem PDF-Standardumfang (WinAnsi, enthält Umlaute, € und Gedankenstrich, wird aber nicht eingebettet).
.. py:function:: csv_columns() :module: obd_diag.export.report
Kopfzeile der CSV in der eingestellten Sprache.
.. py:function:: export_csv(session, path) :module: obd_diag.export.report
Eine Zeile pro Fehlercode (Code, Art, Titel, …), UTF-8 mit BOM für Excel.
Trennzeichen ; (Deutsch) bzw. , (Englisch), Zeilenende CRLF. Mehrere
Ursachen/Symptome stehen durch | getrennt in einer Zelle, die
Wahrscheinlichkeit in Klammern. „Datum“ und „FIN“ wiederholen sich in jeder Zeile,
damit sich CSVs mehrerer Sitzungen aneinanderhängen lassen. Ohne Fehlercodes
enthält die Datei nur die Kopfzeile. „Dringlichkeit“ (services.urgency) steht
zuletzt, damit ältere Auswertungen ihre Spalten behalten.
.. py:function:: find_font_files() :module: obd_diag.export.report
Normal- und Fettschnitt einer passenden TrueType-Schrift, sonst None.
.. py:function:: export_pdf(session, path) :module: obd_diag.export.report
Bericht: Fahrzeug, Adapter/Protokoll/Spannung, Fehlercodes mit Erklärung, Freeze Frame, Readiness, Gebrauchtwagen-Check. In der eingestellten Sprache, DIN A4.
Reihenfolge: Kopf, Fahrzeug und Verbindung, Kurzübersicht, Readiness, Gebrauchtwagen-Check, Fehlercodes nach Art, Freeze Frame, Steuergeräte (Mode 09), Testergebnisse (Mode 06). Fehlende Angaben stehen als „nicht verfügbar“.