Печать счета-фактуры Odoo с адресом доставки

Я пытаюсь распечатать счет-фактуру с адресом доставки и адресом выставления счета в Odoo. Для накладной о доставке я могу получить ссылку на клиента из заказа на продажу, используя «o.sale_id.client_order_ref». Это дает мне ошибку, когда я пробовал «o.sale_id.partner_shipping_id».

Я думаю, это потому, что для счета требуется sale_id с отношением many2one к sale.order. Есть ли другой способ вместо использования sale_id получить адрес доставки?


person user5504568    schedule 21.07.2016    source источник


Ответы (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 в этот метод. Тогда вы можете получить это в счете-фактуре.

person Vikash Mishra    schedule 29.07.2016