Rechnungen am Vertrag und Kursneuberechnung – Systembeschreibung

Regeln und Schreibweg der Rechnungszuordnung sowie Quellenreihenfolge, Nebenwirkungen und Grenzen der vertragsbasierten Kursneuberechnung.

Die Rechnungszuordnung schreibt das Vertragsfeld der Rechnung über das Eigentümermodell der Rechnung; die Kursneuberechnung setzt die Fremdwährungsrechnungen des Vertrags auf den Vertragskurs.

Datenmodell

Die Tabellennamen tragen in der Datenbank das eigene Präfix der Installation.

TabelleRolle
invoicecontract_id, Kurs, Forintwerte, offener Saldo
transaction_settlementKursdifferenzen der Ausgleiche
transactionzugehörige Belege

Rechnungszuordnung

  1. invoicesearch, invoicelink, invoices (list + contractInScope).
  2. Die Rechnung muss zum Mandanten des Vertrags gehören (error_invoice_scope); eine Rechnung eines anderen Vertrags ist nicht umhängbar (error_invoice_other_contract).
  3. Geschrieben wird über finance/invoice::setInvoiceContract.

Kursneuberechnung (fxrecalc)

  1. apply=0 Vorschau, apply=1 Anwenden.
  2. Quelle: die des Vertrags, sonst die Einstellung fx_income_source des Mandanten, zuletzt MNB; Kurstag und Kurs nach Vertrag aus der Kursbibliothek.
  3. Rechnungen eines abgeschlossenen Zeitraums (periodLockedUntil) werden übersprungen.
  4. Beim Anwenden: rebookRate(), Kursdifferenzen der Ausgleiche (refreshSettlementFx), Neuberechnung des offenen Saldos, Aktualisierung des Zinsbelegs (ensureDoc); jede Zeile markiert eine Hauptbuch-Bruttoabweichung über 1 HUF.
  5. Fehlercodes: error_fx_no_contract, no_fx_source.

Berechtigungen

  • Zuordnung: edit + contractInScope; Neuberechnung: fxrecalc + contractInScope (Schaltfläche nur mit Recht).
  • Beteiligte Modelle: finance/invoice, finance/transaction, finance/entry, finance/interest; Bibliothek: Rechnungsdienst.
Related topics: Vertrag Rechnung Wechselkurs