0

我正在尝试在 Odoo 中打印带有送货地址和发票地址的发票。对于交货单,我可以使用“o.sale_id.client_order_ref”从销售订单中获取客户参考。当我尝试“o.sale_id.partner_shipping_id”时,它给了我一个错误。

我认为这是因为发票需要与 sales.order 有很多关系的 sale_id。除了使用 sale_id 来获取送货地址之外,还有其他方法吗?

4

1 回答 1

1

发票与销售订单无关。您需要覆盖模型“account.invoice”并添加一个字段来保存“partner_shipping_id”,然后覆盖以下为发票创建提供值的方法:

class sale_order_line_make_invoice(osv.Model):
    _inherit = 'sale.order.line.make.invoice'

    def _prepare_invoice(self, cr, uid, order, lines, context=None):
        vals={}
        vals = super(sale_order_line_make_invoice, self)._prepare_invoice(cr, uid, order, lines, context=context)
        vals.update({'partner_shipping_id':order.partner_shipping_id.id})
        return vals

在此方法中添加 partner_shipping_id。然后你可以在发票中得到这个。

于 2016-07-29T10:48:07.700 回答