gpt4 book ai didi

python - 无法适应类型 'account.analytic.account

转载 作者:行者123 更新时间:2023-11-28 16:31:30 27 4
gpt4 key购买 nike

我正在将 account.analytic.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 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 中的方法'order_field' 是我在 account.invoice 模型中的字段。订单与 sale.order 中的相同。

最佳答案

当你遇到can't adapt type 'x' 错误时,你通常使用的是对象x 而不是它的 ID(这实际上是必需的一个)。

因此,如果您在 order_field 中遇到此错误,您应该改为编写 'order_field': order.order.id

关于python - 无法适应类型 'account.analytic.account,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31450046/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com