I have been stumped for the past couple days. I have created a new function to copy the sales order info to a new model instead of the account.move model. When i only have one sale order line everything works great. When i have more than one, it successfully creates the new record but when i try to view the record i get this error.
I am new to this as i have only started learning odoo and python about a month ago.
Thanks for any help.
Error:
Traceback:
TypeError: Cannot read property 'type' of undefined
at compareRecords (http://localhost:8069/web/content/339-1b5760f/web.assets_backend.js:1324:246)
at compareRecords (http://localhost:8069/web/content/339-1b5760f/web.assets_backend.js:1327:8)
at stableCompare (http://localhost:8069/web/content/318-5c2b46b/web.assets_common.js:4080:737)
at Array.sort (<anonymous>)
at Object.stableSort (http://localhost:8069/web/content/318-5c2b46b/web.assets_common.js:4080:694)
at Class._sortList (http://localhost:8069/web/content/339-1b5760f/web.assets_backend.js:1327:54)
at http://localhost:8069/web/content/339-1b5760f/web.assets_backend.js:1295:113
at async Promise.all (index 0)
at async Promise.all (index 0)
at async Promise.all (index 0)
Here is my code.
This is in the .line class
def prepare_advance_line(self):
self.ensure_one()
return {
'sale_line_ids': self.id,
'product_id': self.product_id.id,
'shipped_qty': self.qty_to_invoice,
'do': self.order_id.do,
'shipping_id': self.order_id.partner_shipping_id.id,
'ship_date': self.order_id.shipping_date,
'ordered_qty': self.product_uom_qty,
}
and this is on the sale.order model
def prepare_advance(self):
self.ensure_one()
advance_vals = {
'advance_lines': [],
}
return advance_vals
def create_advance(self):
advance_vals_list = []
for order in self:
advance_vals = order.prepare_advance()
for line in order.order_line:
advance_vals['advance_lines'].append((0, 0, line.prepare_advance_line()))
advance_vals_list.append(advance_vals)
moves = self.env['peak.advance'].with_context(default_type='draft').create(advance_vals_list)
return moves