details:   https://code.tryton.org/tryton/commit/c6329fe608ad
branch:    7.8
user:      Cédric Krier <[email protected]>
date:      Fri Oct 02 11:11:48 2026 +0200
description:
        Fallback to 0 when cost price is empty for product of production

        Closes #15138
        (grafted from aaa87c6471b33c02922121d6f8849d2759a4208f)
diffstat:

 modules/production/production.py |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (30 lines):

diff -r e2a43acab062 -r c6329fe608ad modules/production/production.py
--- a/modules/production/production.py  Fri Oct 02 10:48:48 2026 +0200
+++ b/modules/production/production.py  Fri Oct 02 11:11:48 2026 +0200
@@ -475,7 +475,7 @@
         for input_ in self.inputs:
             if input_.state == 'cancelled':
                 continue
-            cost_price = input_.get_cost_price()
+            cost_price = input_.get_cost_price() or 0
             cost += (Decimal(str(input_.internal_quantity)) * cost_price)
         return round_price(cost)
 
@@ -496,7 +496,7 @@
             product = input_.product
             quantity = Uom.compute_qty(
                 input_.unit, input_.quantity, product.default_uom)
-            cost += Decimal(str(quantity)) * product.cost_price
+            cost += Decimal(str(quantity)) * (product.cost_price or 0)
         return cost
 
     @dualmethod
@@ -571,7 +571,7 @@
             for input_ in production.inputs:
                 if input_.state == 'cancelled':
                     continue
-                cost_price = input_.get_cost_price()
+                cost_price = input_.get_cost_price() or 0
                 input_quantities[input_.product] += (
                     Decimal(str(input_.internal_quantity)))
                 input_costs[input_.product] += (

Reply via email to