This question has been flagged
4 Replies
2669 Views

I have added some fields in product.template. I need to display the field in sale_order_line in sales module. How can I make it possible?


Avatar
Discard
Best Answer

Hi,

You can write a onchange function for the product field in the order line. In the onchange function write the value to new field or you can make the new field as related field.

@api.onchange('product_id')
def function_name(self):
if self.product_id:
self.new_field_name = self.product_id.field_in_product

Thanks

Avatar
Discard
Author

thank you Niyas :)

Best Answer

Hi Sarina,

You can change price_unit field to a functional field.


@api.one
@api.depends('mrp', 'discount')
def _compute_price_unit(self)
    self.price_unit =  self.mrp - self.discount
price_unit = fields.Float('Unit Price', compute='_compute_price_unit', store=True)


If you don't want to store the value in database, then you can use this:


@api.one
def _compute_price_unit(self)
    self.price_unit =  self.mrp - self.discount
price_unit = fields.Float('Unit Price', compute='_compute_price_unit')
Avatar
Discard
Author Best Answer

Can I calculate price_unit in sale_order line if I put a new field in sale order line like

price_unit=mrp-discount

Avatar
Discard

Please see the the above answer for price_unit calculation by functional field