Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
2 Antwoorden
3105 Weergaven

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.?

Avatar
Annuleer
Beste antwoord

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


Avatar
Annuleer
Beste antwoord

 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

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
2
jul. 25
2061
0
mrt. 25
1137
1
jul. 24
2005
7
jul. 24
25666
1
mei 25
3214