Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
def action_new_quotation(self):
action = super(CrmLead, self).action_new_quotation()
vals = [fields.Command.clear()]
for order in self.order_line_ids:
order.ensure_one()
vals.append(fields.Command.create({
'product_id': order.product_id.id,
'name': order.name,
'product_uom_qty': order.product_uom_qty,
'price_unit': order.price_unit,
'price_subtotal': order.price_subtotal,
}))
if action and 'context' in action:
action['context'].update({
'default_order_line': vals,
})
return action

Although values are successfully passed, the sale.order.line fails to capture the details. Interestingly, when the same values are passed to another custom One2many field in sale.order, the data is captured. Any insights or suggestions on this matter?

Avatar
Buang
Jawaban Terbai

This issue is because there is a base function within the sale.order responsible for transmitting values to the order_line.


To transmit default values to the sale.order.line, it's necessary to override the underlying function in the base code. This function, by default, clears existing entries in the order_line when loaded or inherits values from the quotation template.

Avatar
Buang
Penulis Jawaban Terbai

Thank you it works.

Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
1
Jan 25
3552
2
Agu 24
5903
6
Des 22
8898
1
Okt 15
5240
1
Mei 25
6236