Hi guys, I want to know the correct way to create one2many records which will trigger all the onchange and calculate properly, specifically on the accounting side
1. use create() function
2. use new() function
self.invoice_line_ids += self.env['account.move.line'].new({
'partner_id': self.partner_id,
'account_id': suggestions['account_id'],
'currency_id': self.currency_id.id,
'price_unit': suggestions['price_unit'],
'tax_ids': [],
})
3. use Command object
out_invoice = self.env['account.move'].create({
'move_type': 'out_invoice',
'date': '2016-01-01',
'invoice_date': '2016-01-01',
'partner_id': self.partner_a.id,
'currency_id': self.currency_data['currency'].id,
'invoice_line_ids': [Command.create({
'product_id': product_a.id,
'price_unit': 300,
'tax_ids': [],
})],
})
Hi,
Try refer the following forum post.
https://www.odoo.com/forum/help-1/how-to-update-odoo-one2many-field-from-list-of-dictionaries-173344