Rechnungsdokumente — PDF, Rechnungsbild, Druck, Anhang

Funktionsweise von Rechnungs-PDF, QUiCK- und Számlázz.hu-Rechnungsbild, Download und Sammeldruck, Ablageregel sowie der PDF-Generator für den Anhang zum Jahresabschluss.

Rechnungsdokumente landen immer gemäß Ablageregel des Eigentümers in der Dokumentenzentrale und werden über doc_link mit der Rechnung verknüpft. Dieser Artikel fasst die Endpunkte zusammen, die Dokumente erzeugen und ausliefern.

Endpunkte

EndpunktFunktionsweiseRecht
generatePdfLädt je Rechnung Kopf und Positionen, erzeugt das PDF mit der Bibliothek pdftemplate, legt es nach der „invoice“-Ablageregel des Eigentümers (resolveObjStorage) über Dlbtdocstore::fileDocument ab und verknüpft es. Fehler werden je Rechnung gesammelt; Rechnungen außerhalb des Bereichs werden übersprungen.Core modify + pdf (BASE)
downloadLiefert den alten Dokumentdatensatz, nur wenn er mit einer Rechnung im Bereich verknüpft ist; Drive-Dateien werden mit dem Dienstkonto gestreamt, lokale aus dem Speicher.image (BASE) + Bereich
printdocs, printfileHolt die Dokumente der markierten Rechnungen (dlbtdocstore->fetch), führt sie zu einem PDF zusammen (mergePdfs) und legt ein Token in die Session; printfile liefert die Datei mit dem Token (abgelaufen: error_print_expired); purgePrintCache räumt den Cache.list und image
makequickQUiCK-Suche nach Rechnungsnummer (Quick::matchInvoice), Bild-Download, Deckblatt bei Bedarf entfernt, Upload nach der „invoice“- (sonst „document“-)Regel, addDoc + addDocLink; ein identisches Dokument wird nur verknüpft. Bei manchen Kontierungsarten kann das Bild entfallen (Quick::skipsImage).Core modify + quick (SUBSCRIPTION)
szamlazzpdfLädt das PDF mit dem Számlázz.hu-Schlüssel des Lieferanten, prüft das Format, Dlbtdocstore::addDocument(), liest das Dokument zurück.Core modify + szamlazzpdf (BASE)
saveSettingBenutzereinstellung: automatisches Rechnungs-PDF (auto_generate_invoice_pdf).nur Core modify

Fehlerschlüssel

error_pdf_engine, error_pdf_not_found, error_pdf_no_storage, error_pdf_none, error_print_expired, error_objstorage_missing, error_objstorage_account, error_szamlazz_invoice, error_szamlazz_no_key, error_szamlazz_fetch, error_szamlazz_store.

Datenmodell

Die Tabellennamen tragen in der Datenbank das eigene Präfix der Installation: doc, doc_link, die alte Verknüpfung invoice_document; Dienste: pdftemplate, dlbtdocstore, quick, masterdata/apiaccount.

PDF des Anhangs (finance/invoice.reportannual)

Ein als Trait in den Rechnungscontroller eingebundener Generator erstellt mit FPDI den Anhang zum Jahres-, vereinfachten oder Kleinstunternehmensabschluss. Er lädt Berichtskopf, Unternehmensdaten, Adresse, Konfiguration, Kontakte, Bilanz-, Ergebnis-, Cashflow-, Anlagenbewegungs-, Personal- und Steuerdaten, schreibt ein PDF in den Speicherordner tmp_report und gibt Dateiname und Größe zurück. Gelesene Tabellen: fin_report, fin_report_type, fin_report_config, fin_statement_schema, fin_statement_value, fin_line_item, fin_cash_flow, fin_asset_movement, fin_headcount_detail, fin_tax_calculation, fin_company_contact, company, company_address, address.

Bekannte Einschränkungen: Die Berichts-ID ist im Code fest auf 2 gesetzt (sie überschreibt den Anfrageparameter); geprüft wird nur Core modify, kein Funktionsrecht und kein inhaltlicher Bereich; ein Aufruf aus den Admin-Vorlagen wurde nicht gefunden.