Laufzeiten entstanden bisher nur als Vorschlag aus dem Agenten-Report; bestaetigen oder verwerfen war alles. Anlegen von Hand gab es als Aktion ohne Oberflaeche, Aendern und Zusammenfuehren gar nicht - obwohl der Doppelfall zwangslaeufig auftritt, sobald das gemeldete Ablaufdatum von der Bestellung abweicht. Jetzt: Formular zum Anlegen auf der Rechnungsseite (Key vorgeschlagen, Ende aus dem Beginn vorbelegt), Bearbeiten von Key, Zeitraum und Notiz im Laufzeit-Detail, und Zusammenfuehren zweier Laufzeiten desselben Hosts. Die aufgeloeste gibt ihre Rechnungen ab, sofern das Ziel dort nichts hat; sonst bricht der Vorgang mit Erklaerung ab - zwei Einkaufsrechnungen auf einem Lizenzjahr waeren nicht mehr zuzuordnen. Dazu die Kundenansicht: Laufzeit und Host verlinkt, Marge und Rabatt je Zeile. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2.3 KiB
2.3 KiB
#043 Laufzeiten anlegen, bearbeiten und zusammenführen
Status: erledigt Meilenstein: v0.25.0 Labels: backend, ui Geschätzt: 4 h Tatsächlich: 1 h 05 min
Auslöser
Drei Rückmeldungen aus dem Einsatz:
- „In der Kundenübersicht wäre es auch cool, die Laufzeit / Rechnung zu überarbeiten.“
- „Wie werden so Laufzeiten erfasst?“
- „Auch die Laufzeit im Nachhinein zu bearbeiten geht nicht. Oder mit einer vorhandenen zu verknüpfen oder zu vereinen.“
Ausgangslage
Laufzeiten entstanden ausschließlich als Vorschlag aus dem Agenten-Report: Meldet ein Host ein Ablaufdatum, legt ProxLedger eine Laufzeit von diesem Datum bis ein Jahr später an. Bestätigen oder verwerfen war möglich – mehr nicht:
- Anlegen von Hand gab es als Server-Aktion, aber nirgends in der Oberfläche.
- Ändern war unmöglich. Weicht das gemeldete Datum von der Bestellung ab, blieb es falsch.
- Zusammenführen gab es nicht, obwohl der Fall zwangsläufig auftritt: Neben einer erfassten Laufzeit legt der Agent eine zweite an, wenn das Ablaufdatum um einen Tag abweicht.
- Aus der Kundenansicht führte kein Weg in die Laufzeit.
Behebung
- Formular Laufzeit von Hand anlegen auf der Rechnungsseite; der gemeldete Key wird vorgeschlagen, das Ende aus dem Beginn vorbelegt (ein Jahr minus ein Tag – dieselbe Rechnung wie beim Vorschlag).
- Laufzeit bearbeiten im Laufzeit-Detail: Key, Beginn, Ende, Notiz. Eine Änderung bestätigt den Vorschlag zugleich.
- Zusammenführen mit einer anderen Laufzeit desselben Hosts. Die aufgelöste Laufzeit gibt ihre Rechnungen ab, sofern das Ziel dort nichts hat; haben beide eine Rechnung derselben Art, bricht der Vorgang mit einer Erklärung ab.
- Kundenansicht: Laufzeit und Host sind verlinkt, Marge und Rabatt stehen dabei.
Entscheidungen
- Kein stilles Überschreiben beim Zusammenführen. Zwei Einkaufsrechnungen auf einem Lizenzjahr wären nicht mehr zuzuordnen – lieber ein Abbruch mit Hinweis.
- Beim Ändern bleibt die Regel „ein Startdatum je Host“. Kollidiert das neue Datum, verweist die Meldung aufs Zusammenführen.
- Beim Zusammenführen muss die Quelle ihre Positionen zuerst loslassen: Eine Rechnungsposition gehört zu genau einer Laufzeit, und die Datenbank wacht darüber. Erst dann darf das Ziel sie übernehmen.