Mietkosten-Weiterberechnung – Systembeschreibung

Die zwei Hintergrundaufgaben (Scanner und Rechnungsersteller), die Dublettentabelle, die Abgleichsgrundlage und die Erstellung des Rechnungsentwurfs.

Zwei Hintergrundaufgaben setzen sie um: Der Scanner ordnet eingehende Kostenrechnungen der Immobilie von Mietverträgen mit Weiterberechnung zu, der Ersteller erzeugt aus den eingeplanten Posten Entwürfe von Ausgangsrechnungen.

Datenmodell

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

TabelleRolle
contract_passthroughDublettenzeile je Quellrechnung (Zustand scheduled)
invoiceQuell-Kostenrechnung und erzeugter Entwurf
cron_queueZeilen der Aufgabe contract_passthrough

Ablauf

  1. contract_passthrough_scan (global geplant, etwa alle 2 Minuten; processScanForCronqueue im Catalog-Controller contract/passthrough): Für aktive Mietverträge mit Weiterberechnung ordnet er die eingehende Kostenrechnung über den normalisierten Wert des Label-Verbinders (value_norm) der Immobilie zu; bei neuem Treffer schreibt er eine scheduled-Dublettenzeile und eine Warteschlangenzeile contract_passthrough. Er stellt keine Rechnung aus.
  2. contract_passthrough (einmalig, vom Scanner eingeplant): erstellt aus den scheduled-Zeilen einen Entwurf (status = 0) einer Ausgangsrechnung an den Mieter mit Vertragsaufschlag, den Positionen der Quellrechnung und der Vertragsnummer.
  3. Das Admin-seitige contract/passthrough::getRowsBySource() liest die Zeilen einer Quellrechnung zurück.

Wo ist das Ergebnis sichtbar?

Die Aufgabenzeilen in der Warteschlange, die Rechnungsentwürfe bei den Rechnungen.

Berechtigungen

Hintergrundaufgabe, kein Funktionsschlüssel; die Einrichtung wird mit dem Recht edit des Vertrags gespeichert.