Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
3 Trả lời
7832 Lượt xem

My Goal is to print fields of the "sale.order" into the invoice pdf. 


Normaly I use 

<span t-field="o.partner_id"/>

(invoice_line for example).

and nest it like this for example:

<span t-field="o.partner_id.phone"/> 


That mostly work for account.invoice and all kinds of connected fields.

Is there a way to "nest to" the informations of the sale.order which Im missing? Or is there maybe a way not to start from "o"?


 

Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

I found the solution. As said, there isnt any connection to the sale.order so I build a module to make this connection:

from openerp.osv import fields, osv

class account_invoice(osv.osv): 
    _inherit = "account.invoice"
    _columns = {
        'sale_order_ids': fields.many2many('sale.order', 'sale_order_invoice_rel'
        , 'invoice_id', 'order_id', 'Sale Orders', readonly=True,
        help="The sale order(s) that generated this invoice. Multiple sales '\     
        'orders may have been combined for the same customer to generate one invoice."),
}

now its possible to nest the fields like this in the invoice pdf:

<span t-field="o.sale_order_ids.name"/>


Ảnh đại diện
Huỷ bỏ

Thank you for the explanation. Can you please show

- how this code would look like when I want to access the sales.order module not from accounts but from the Manufacturing Orders module in a qweb report.

- where to put the code. Do I need to create a new file or can I place this into a specific file? Please explain where to copy this file into.

Thank you.

Câu trả lời hay nhất

Hello Philipp Becker,

There is a link between invoice and sale order.

Please refer _get_invoiced method of 'sale.order'

its returning invoice linked to particular sale order.

i hope this will surely help you.

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
0
thg 9 17
4507
0
thg 8 16
3497
1
thg 6 16
4898
0
thg 4 24
1631
4
thg 2 20
10137