fix: precision loss causing process loss variance

(cherry picked from commit d84601b2a3)
This commit is contained in:
FATHIH MOHAMMED
2025-01-09 13:27:27 +00:00
committed by Mergify
parent 246f4373b5
commit ac18c56a0b

View File

@@ -483,7 +483,7 @@ class StockEntry(StockController):
if self.process_loss_qty:
total += flt(self.process_loss_qty, precision)
if self.fg_completed_qty != total:
if self.fg_completed_qty != flt(total, precision):
frappe.throw(
_(
"The finished product {0} quantity {1} and For Quantity {2} cannot be different"
@@ -610,7 +610,9 @@ class StockEntry(StockController):
completed_qty = (
d.completed_qty + d.process_loss_qty + (allowance_percentage / 100 * d.completed_qty)
)
if total_completed_qty > flt(completed_qty):
if flt(total_completed_qty, self.precision("fg_completed_qty")) > flt(
completed_qty, self.precision("fg_completed_qty")
):
job_card = frappe.db.get_value("Job Card", {"operation_id": d.name}, "name")
if not job_card:
frappe.throw(