Hi,
In sale.order i have a field similar to order_line(of model sale.order.line). I wrote an onchange function of order_line for writing values into the new one2many field, the data appended successfully to the new field but during the time of saving the document the order line of both field gets doubled.
my new field
new_order_line = fields.One2many('sale.order.line', 'order_id', string='Order Lines',
states={'cancel': [('readonly', True)], 'done': [('readonly', True)]}, copy=True,
auto_join=True)
my onchange function
@api.onchange('order_line')
@api.depends('order_line')
def _onchange_order_line(self):
line_list = [(5, 0, 0)]
for order_line in self.order_line:
vals = (0, 0, {
'product_id': order_line.product_id.id,
'name': order_line.name,
'analytic_tag_ids': order_line.analytic_tag_ids.ids,
'product_uom_qty': order_line.product_uom_qty,
'product_uom': order_line.product_uom.id,
'price_unit': order_line.price_unit,
'discount': order_line.discount,
'tax_id': order_line.tax_id.ids,
'price_subtotal': order_line.price_subtotal,
'price_total': order_line.price_total,
'currency_id': order_line.currency_id.id,
})
line_list.append(vals)
self.update({'new_order_line': line_list})
This happens while saving the record(Initially i have only one order line, after saving it turns to two)
Thanks