Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
2 Ответы
3139 Представления

I want to create custom fields on my invoices and have them visible when printed. In Odoo 16, I could do this easily, but now it seems more complicated. Does anyone know how to do it.?

Аватар
Отменить
Лучший ответ

Hi,

Try this code:

In python file inherit account.move:


from odoo import models, fields


class AccountInvoice(models.Model):

    _inherit = 'account.move'


    custom_field = fields.Char(string='Custom Field') 


We can inherit the report_invoice_document and add the corresponding changes to the file.:

<template id="report_invoice_customized" inherit_id="account.report_invoice_document">
      <xpath expr="//t[@t-set='address']" position="after">
<span t-field="o.custom_field"/></div>
   </xpath>
</template>


Hope it helps


Аватар
Отменить
Лучший ответ

 HI  Leonides Valverde Vasquez


This way you can achieve this ,

  • First of all you have to inherit field into account.move object so create .py file  

And import this file into your _init_.py file  of models.


.py file


from odoo import fields, models,api,_

class Invoice_Account(models.Model):

    _inherit = 'account.move'

    

    custom_field_name= fields.Char(string=’demo’)


Xml file


  • Now create report template xml file for inheriting this field into report of invoice
  • Create a report template xml file and give a path to this file into your manifest file.



  • You can add your custom field at any place in the invoice report by giving xpath like above pic.
  • So here this way , you can add custom fields into the invoice report.




 I hope this is helpful to you.


 Thanks & Regards,

 Email: odoo@devintellecs.com

 Skype: devintelle

Аватар
Отменить
Related Posts Ответы Просмотры Активность
2
июл. 25
2088
0
мар. 25
1156
1
июл. 24
2026
7
июл. 24
25826
1
мая 25
3252