Regelzuweisung, Neuberechnung, Pauschale — Funktionsweise
Die vier Endpunkte des Rechts apply: Zinsregel schreiben, offene Salden neu berechnen, Pauschalen prüfen und den Pauschalenbeleg über 40 EUR erzeugen.
Das Funktionsrecht apply (nur alte Rechtetabelle, interest_v1.sql) öffnet vier Endpunkte und die Pauschalen-Schaltflächen der Rechnungsliste. Jeder Endpunkt prüft zusätzlich Core modify und den inhaltlichen Bereich (getAllowedCompanyIds, filterIdsByClients).
Endpunkte
| Endpunkt | Funktionsweise |
|---|---|
applyrule | Schreibt die Zinsregel auf die markierten, auf den Bereich eingeschränkten Rechnungen (invoice.interest_rule_id); Fehler: error_apply_input. |
refreshall | Berechnet den offenen Saldo der gefilterten Rechnungen aus den Buchungen neu (recalcInvoiceOutstanding) und meldet die Zahl der Änderungen; mit dem Recht interest werden auch Zinsbelege aktualisiert. Über 3.000 Zeilen folgt ein Fehler (error_refresh_scope), kein Hintergrundjob. |
recheckrecovery | Aktualisiert die Kennzeichen „fristgerecht bezahlt“ (refreshPaidOnTime), repariert Basisbelegverweise (repairRecoveryBaseLinks), widerruft nicht mehr berechtigte Pauschalen (revokeRecoveryFeesPaidOnTime) — beglichene Belege bleiben erhalten und werden aufgelistet — und liefert Diagnosen. |
generaterecovery | Für die markierten überfälligen Rechnungen ein Pauschalenbeleg über 40 EUR zum MNB-EUR-Kurs des ersten Verzugstags (dlbtfxrate), über addInvoice(): doc_type = recovery_fee, base_invoice_id = Basisrechnung, Nummer aus der Basisrechnung abgeleitet; Hinweis und PDF. Bei vorhandener gültiger Pauschale übersprungen; PDF-Fehler: error_recovery_pdf. |
Betroffene Tabellen
Die Tabellennamen tragen in der Datenbank das eigene Präfix der Installation: invoice, invoice_item, transaction_settlement; Modelle: finance/invoice, finance/transaction, masterdata/analytic, company/company.
Bekannte Einschränkungen
Über der Grenze von 3.000 Zeilen stellt refreshall keinen Hintergrundjob ein, sondern gibt einen Fehler aus; der Benutzer muss den Filter eingrenzen.