Fehler #201
OrderController speichert lastcost der Positionen nicht
0%
Beschreibung
Dadurch geht bei anschließender Auswertung, z.B. im Verkaufsbericht, die Margenberechnung kaputt. Da es derzeit keine zweite Detailszeile gibt wird lastcost auch nicht in der Form mit übertragen.
Zugehörige Revisionen
Historie
Von G. Richardson vor mehr als 8 Jahren aktualisiert
Ein erster Patch ist in 370d43e2028e
Es müßten aber noch alle bisher angelegten orderitems korrigiert werden.
Ein Ansatz wäre nur für die orderitems:
update orderitems oi set lastcost = (select lastcost from parts p where p.id = oi.parts_id ) where oi.lastcost is null;
Das Gleiche müßte man für delivery_order_items und invoice machen. Ist die Prüfung auf "IS NULL" sauber? Wurde bei den alten Masken sonst immer ein Wert oder 0 gespeichert?
Falls sich lastcost in der Zwischenzeit geändert hat geht diese Information allerdings verloren, es wird der aktuelle lastcost-Wert genommen.
Noch nicht getestet ist wie sich das mit z.B. Preisfaktoren/unterschiedlichen Einheiten/Fremdwährungen verhält.
Auftrags-Controller: lastcost nur vom Artikel nehmen, wenn die Position neu ist
Ansonsten werden die EKs von schon in der DB gespeicherten Aufträgen immer mit
denen des Artikels überschrieben.
siehe auch commit 370d43e2028e8a450055048f1354da48163d3954
"Order Controller - lastcost von Positionen mit speichern"
und refs #201 (redmine)