Avoid dividing by zero
Check if a operation has the work_center field
This commit is contained in:
parent
f0cd730ed9
commit
670733a363
13
operation.py
13
operation.py
|
@ -221,7 +221,7 @@ class OperationTracking(ModelSQL, ModelView):
|
||||||
|
|
||||||
@fields.depends('_parent_operation.id', 'operation')
|
@fields.depends('_parent_operation.id', 'operation')
|
||||||
def on_change_with_uom(self):
|
def on_change_with_uom(self):
|
||||||
if self.operation and self.operation.work_center:
|
if self.operation and getattr(self.operation, 'work_center', None):
|
||||||
return self.operation.work_center.uom.id
|
return self.operation.work_center.uom.id
|
||||||
|
|
||||||
@fields.depends('uom')
|
@fields.depends('uom')
|
||||||
|
@ -317,11 +317,12 @@ class Production(metaclass=PoolMeta):
|
||||||
continue
|
continue
|
||||||
total_quantity = Decimal(str(sum(o.quantity for o in
|
total_quantity = Decimal(str(sum(o.quantity for o in
|
||||||
production.outputs)))
|
production.outputs)))
|
||||||
added_unit_price = Decimal(operation_cost / total_quantity
|
if total_quantity:
|
||||||
).quantize(Decimal(str(10 ** -digits[1])))
|
added_unit_price = Decimal(operation_cost / total_quantity
|
||||||
for output in production.outputs:
|
).quantize(Decimal(str(10 ** -digits[1])))
|
||||||
output.unit_price += added_unit_price
|
for output in production.outputs:
|
||||||
output.save()
|
output.unit_price += added_unit_price
|
||||||
|
output.save()
|
||||||
|
|
||||||
super(Production, cls).done(productions)
|
super(Production, cls).done(productions)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue