Set company on sale price context to support product's cost price in formula

issue8467
review259771002
This commit is contained in:
Sergi Almacellas Abellana
2019-08-19 18:46:34 +02:00
parent 27752f6265
commit 2e6ecd0110
+9 -3
View File
@@ -47,10 +47,16 @@ class SaleLine(metaclass=PoolMeta):
super(SaleLine, cls).__setup__()
cls.product.context['price_list'] = Eval(
'_parent_sale', {}).get('price_list')
cls.product.context['company'] = Eval(
'_parent_sale', {}).get('company', None)
@fields.depends('sale', '_parent_sale.price_list')
@fields.depends('sale', '_parent_sale.price_list', '_parent_sale.company')
def _get_context_sale_price(self):
context = super(SaleLine, self)._get_context_sale_price()
if self.sale and getattr(self.sale, 'price_list', None):
context['price_list'] = self.sale.price_list.id
if self.sale:
if getattr(self.sale, 'price_list', None):
context['price_list'] = self.sale.price_list.id
# Ensure cost_price is for the one of the sale company
if getattr(self.sale, 'company', None):
context['company'] = self.sale.company.id
return context