Python can';t适应类型';帐户
我正在将account.analysis.account字段从销售订单传递到发票。 目的是在确认销售订单时通过该字段Python can';t适应类型';帐户,python,odoo,Python,Odoo,我正在将account.analysis.account字段从销售订单传递到发票。 目的是在确认销售订单时通过该字段 def _prepare_invoice(self, cr, uid, order, lines, context=None): """Prepare the dict of values to create the new invoice for a sales order. This method may be overridden to impleme
def _prepare_invoice(self, cr, uid, order, lines, context=None):
"""Prepare the dict of values to create the new invoice for a
sales order. This method may be overridden to implement custom
invoice generation (making sure to call super() to establish
a clean extension chain).
:param browse_record order: sale.order record to invoice
:param list(int) line: list of invoice line IDs that must be
attached to the invoice
:return: dict of value to create() the invoice
"""
if context is None:
context = {}
journal_ids = self.pool.get('account.journal').search(cr, uid,
[('type', '=', 'sale'), ('company_id', '=', order.company_id.id)],
limit=1)
if not journal_ids:
raise osv.except_osv(_('Error!'),
_('Please define sales journal for this company: "%s" (id:%d).') % (order.company_id.name, order.company_id.id))
invoice_vals = {
'name': order.client_order_ref or '',
'origin': order.name,
'type': 'out_invoice',
'reference': order.client_order_ref or order.name,
'account_id': order.partner_invoice_id.property_account_receivable.id,
'partner_id': order.partner_invoice_id.id,
'journal_id': journal_ids[0],
'invoice_line': [(6, 0, lines)],
'currency_id': order.pricelist_id.currency_id.id,
'comment': order.note,
'payment_term': order.payment_term and order.payment_term.id or False,
'fiscal_position': order.fiscal_position.id or order.partner_invoice_id.property_account_position.id,
'date_invoice': context.get('date_invoice', False),
'company_id': order.company_id.id,
'user_id': order.user_id and order.user_id.id or False,
'section_id' : order.section_id.id,
'order_field':order.order
}
# Care for deprecated _inv_get() hook - FIXME: to be removed after 6.1
invoice_vals.update(self._inv_get(cr, uid, order, context=context))
return invoice_vals
我正在重写sale.py中的方法
“订单\字段”是account.invoice model中的我的字段,而订单在sale.order中是相同的。当您遇到无法调整类型“x”错误时,您通常使用的是对象x而不是其ID(实际上是必需的)
因此,如果您在订单字段中遇到此错误,您应该改为编写订单字段:order.order.id。您好,它工作正常,错误消失。但我仍然不能像从销售订单传递产品详细信息那样将字段值从销售订单传递到发票。您能检查一下吗?