v 15.0 Third Party 5617
Download for v 15.0 Deploy on Odoo.sh
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Invoicing (account)
Discuss (mail)
Lines of code 2394
Technical Name invoice_format_editor
LicenseLGPL-3
Websitehttps://www.cybrosys.com
Versions 16.0 15.0 14.0 17.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Invoicing (account)
Discuss (mail)
Lines of code 2394
Technical Name invoice_format_editor
LicenseLGPL-3
Websitehttps://www.cybrosys.com
Versions 16.0 15.0 14.0 17.0
Community
Enterprise

Invoice Format Editor

A Module For Configuring the Invoice Templates

Overview

In the Invoice Format Editor App, We can configure the invoice fields to our own need. There we can have 4 types of templates - Default, Normal, Modern, Old Standard. We can also customize and hide the fields.

Features

Configure the layout

Configure the position of fields

Hide option for the invoice fields

Edit the theme

Screenshots

Document layout configuration

From Document layout configuration in settings, user can select and configure the invoice document layout

Invoice Layout Configuration

User can configure the text positions, text colors and invoice fields.

Print Invoice

Normal Template

Modern Template

Old Standard Template

Default Template

Suggested Products


Our Services


Odoo Customization
Odoo Implementation
Odoo Support
Hire Odoo Developer
Odoo Integration
Odoo Migration
Odoo Consultancy
Odoo Implementation
Odoo Licensing Consultancy

Our Industries


Trading

Easily procure and sell your products

POS

Easy configuration and convivial experience

Education

A platform for educational management

Manufacturing

Plan, track and schedule your operations

E-commerce & Website

Mobile friendly, awe-inspiring product pages

Service Management

Keep track of services and invoice

Restaurant

Run your bar or restaurant methodically

Hotel Management

An all-inclusive hotel management application

Need Help?



Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
There are no ratings yet!
by
Herz
on 6/8/22, 6:25 PM

after uninstalling the module unable to print invoice it gives the below error:  


RPC_ERROR

Odoo Server Error

Traceback (most recent call last):

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\qweb.py", line 219, in render_template

    yield from compiled_fn(self, values, log)

  File "<template_791>", line 113, in template_791

  File "<template_791>", line 44, in t_call_content

AttributeError: 'res.company' object has no attribute 'base_layout'


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\web\controllers\main.py", line 2020, in report_download

    response = self.report_routes(reportname, docids=docids, converter=converter, context=context)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\http.py", line 536, in response_wrap

    response = f(*args, **kw)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\web\controllers\main.py", line 1949, in report_routes

    pdf = report.with_context(context)._render_qweb_pdf(docids, data=data)[0]

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\account\models\ir_actions_report.py", line 49, in _render_qweb_pdf

    return super()._render_qweb_pdf(res_ids=res_ids, data=data)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_actions_report.py", line 839, in _render_qweb_pdf

    html = self_sudo.with_context(context)._render_qweb_html(res_ids, data=data)[0]

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_actions_report.py", line 883, in _render_qweb_html

    return self._render_template(self.report_name, data), 'html'

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_actions_report.py", line 620, in _render_template

    return view_obj._render_template(template, values).encode()

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_ui_view.py", line 1975, in _render_template

    return self.browse(self.get_view_id(template))._render(values, engine)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\web_editor\models\ir_ui_view.py", line 29, in _render

    return super(IrUiView, self)._render(values=values, engine=engine, minimal_qcontext=minimal_qcontext)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_ui_view.py", line 1983, in _render

    return self.env[engine]._render(self.id, qcontext)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\tools\profiler.py", line 289, in _tracked_method_render

    return method_render(self, template, values, **options)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\ir_qweb.py", line 76, in _render

    result = super()._render(template, values=values, **compile_options)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\qweb.py", line 134, in _render

    result = ''.join(rendering)

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\qweb.py", line 224, in render_template

    error=e, template=template, path=log.get('last_path_node'), code=code)

odoo.addons.base.models.qweb.QWebException: 'res.company' object has no attribute 'base_layout'

Traceback (most recent call last):

  File "C:\Program Files\Odoo 15.0.20220430\server\odoo\addons\base\models\qweb.py", line 219, in render_template

    yield from compiled_fn(self, values, log)

  File "<template_791>", line 113, in template_791

  File "<template_791>", line 44, in t_call_content

AttributeError: 'res.company' object has no attribute 'base_layout'


Error when render the template

AttributeError: 'res.company' object has no attribute 'base_layout'

Template: 791

Path: /t/t/t/t[3]

Node: <t t-if="o.company_id.base_layout == 'normal'"/>

                    



incompatibility with other modules
by
Mamadou Oumar DIOP
on 3/28/22, 9:34 AM

this module is not compatible with some modules like "odoo_amount_in_words" or "fs_amount_in_words".

Amounts in letters do not appear on the printout if your module is installed. If after we uninstall, the error below appears on the printout. If your module is not initially installed, everything works fine.

You can help to make compatible or add the "amount in word" functionality.

Thank you in advance


Odoo Server Error
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 331, in _compiled_fn
    return compiled(self, append, new, options, log)
  File "<template>", line 1, in template_account_report_invoice_with_payments_6045
  File "<template>", line 2, in body_call_content_6043
  File "<template>", line 1, in foreach_6042
AttributeError: 'res.company' object has no attribute 'base_layout'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 2121, in report_download
    response = self.report_routes(reportname, docids=docids, converter=converter, context=context)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 532, in response_wrap
    response = f(*args, **kw)
  File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 2056, in report_routes
    pdf = report.with_context(context)._render_qweb_pdf(docids, data=data)[0]
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_actions_report.py", line 803, in _render_qweb_pdf
    html = self_sudo.with_context(context)._render_qweb_html(res_ids, data=data)[0]
  File "/usr/lib/python3/dist-packages/odoo/addons/web_studio/models/ir_actions_report.py", line 18, in _render_qweb_html
    return super(IrActionsReport, self)._render_qweb_html(docids, data)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_actions_report.py", line 844, in _render_qweb_html
    return self._render_template(self.sudo().report_name, data), 'html'
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_actions_report.py", line 582, in _render_template
    return view_obj._render_template(template, values)
  File "/usr/lib/python3/dist-packages/odoo/addons_su/web_window_title/models/ir_ui_view.py", line 18, in _render_template
    return super(View, self)._render_template(template, values, engine)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1709, in _render_template
    return self.browse(self.get_view_id(template))._render(values, engine)
  File "/usr/lib/python3/dist-packages/odoo/addons/web_editor/models/ir_ui_view.py", line 28, in _render
    return super(IrUiView, self)._render(values=values, engine=engine, minimal_qcontext=minimal_qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 1717, in _render
    return self.env[engine]._render(self.id, qcontext)
  File "/usr/lib/python3/dist-packages/odoo/addons/web_studio/models/ir_qweb.py", line 44, in _render
    return super(IrQWeb, self)._render(template, values=values, **options)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_qweb.py", line 55, in _render
    result = super(IrQWeb, self)._render(id_or_xml_id, values=values, **context)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 258, in _render
    self.compile(template, options)(self, body.append, values or {})
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 338, in _compiled_fn
    raise QWebException("Error to render compiling AST", e, path, node and etree.tostring(node[0], encoding='unicode'), name)
odoo.addons.base.models.qweb.QWebException: 'res.company' object has no attribute 'base_layout'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/qweb.py", line 331, in _compiled_fn
    return compiled(self, append, new, options, log)
  File "<template>", line 1, in template_account_report_invoice_with_payments_6045
  File "<template>", line 2, in body_call_content_6043
  File "<template>", line 1, in foreach_6042
AttributeError: 'res.company' object has no attribute 'base_layout'

Error to render compiling AST
AttributeError: 'res.company' object has no attribute 'base_layout'
Template: account.report_invoice_with_payments
Path: /t/t/t/t[3]
Node: <t t-if="o.company_id.base_layout == 'normal'">
                        <t t-call="invoice_format_editor.custom_template_report_invoice_normal" t-lang="o.partner_id.lang"/>
                    </t>
                    


Re: incompatibility with other modules
by
Cybrosys Technologies
on 3/29/22, 6:25 AM Author

Thanks for reporting, We will check and update.


Error
by
Mohammad AL-Omari
on 2/17/22, 6:01 AM
Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/tools/safe_eval.py", line 330, in safe_eval
    return unsafe_eval(c, globals_dict, locals_dict)
  File "", line 1, in <module>
  File "<decorator-gen-74>", line 2, in button_immediate_install
  File "/odoo/odoo-server/odoo/addons/base/models/ir_module.py", line 74, in check_and_log
    return method(self, *args, **kwargs)
  File "/odoo/odoo-server/odoo/addons/base/models/ir_module.py", line 483, in button_immediate_install
    return self._button_immediate_function(type(self).button_install)
  File "/odoo/odoo-server/odoo/addons/base/models/ir_module.py", line 600, in _button_immediate_function
    registry = modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/odoo/odoo-server/odoo/modules/registry.py", line 87, in new
    odoo.modules.load_modules(registry, force_demo, status, update_module)
  File "/odoo/odoo-server/odoo/modules/loading.py", line 474, in load_modules
    processed_modules += load_marked_modules(cr, graph,
  File "/odoo/odoo-server/odoo/modules/loading.py", line 363, in load_marked_modules
    loaded, processed = load_module_graph(
  File "/odoo/odoo-server/odoo/modules/loading.py", line 222, in load_module_graph
    load_data(cr, idref, mode, kind='data', package=package)
  File "/odoo/odoo-server/odoo/modules/loading.py", line 69, in load_data
    tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind)
  File "/odoo/odoo-server/odoo/tools/convert.py", line 745, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate)
  File "/odoo/odoo-server/odoo/tools/convert.py", line 811, in convert_xml_import
    obj.parse(doc.getroot())
  File "/odoo/odoo-server/odoo/tools/convert.py", line 731, in parse
    self._tag_root(de)
  File "/odoo/odoo-server/odoo/tools/convert.py", line 680, in _tag_root
    f(rec)
  File "/odoo/odoo-server/odoo/tools/convert.py", line 691, in _tag_root
    raise ParseError(msg) from None  # Restart with "--log-handler odoo.tools.convert:DEBUG" for complete traceback
odoo.tools.convert.ParseError: while parsing None:409
Error while validating view:

Element '<xpath expr="//t[@t-call=&#34;account.report_invoice_document&#34;]">' cannot be located in parent view

View error context:
{'file': '/odoo/custom/Cybrosys/invoice_format_editor/reports/custom_invoice_template.xml',
 'line': 2,
 'name': 'report_invoice_with_payments',
 'view': ir.ui.view(1332,),
 'view.model': False,
 'view.parent': ir.ui.view(933,),
 'xmlid': 'account.report_invoice_with_payments'}


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
    result = request.dispatch()
  File "/odoo/odoo-server/odoo/http.py", line 688, in dispatch
    result = self._call_function(**self.params)
  File "/odoo/odoo-server/odoo/http.py", line 360, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "/odoo/odoo-server/odoo/http.py", line 349, in checked_call
    result = self.endpoint(*a, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 917, in __call__
    return self.method(*args, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 536, in response_wrap
    response = f(*args, **kw)
  File "/odoo/odoo-server/addons/web/controllers/main.py", line 1628, in run
    result = action.run()
  File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 639, in run
    res = runner(run_self, eval_context=eval_context)
  File "/odoo/odoo-server/odoo/addons/base/models/ir_actions.py", line 508, in _run_action_code_multi
    safe_eval(self.code.strip(), eval_context, mode="exec", nocopy=True)  # nocopy allows to return 'action'
  File "/odoo/odoo-server/odoo/tools/safe_eval.py", line 346, in safe_eval
    raise ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr))
Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/http.py", line 644, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/odoo/odoo-server/odoo/http.py", line 302, in _handle_exception
    raise exception.with_traceback(None) from new_cause
ValueError: <class 'odoo.tools.convert.ParseError'>: "while parsing None:409
Error while validating view:

Element '<xpath expr="//t[@t-call=&#34;account.report_invoice_document&#34;]">' cannot be located in parent view

View error context:
{'file': '/odoo/custom/Cybrosys/invoice_format_editor/reports/custom_invoice_template.xml',
 'line': 2,
 'name': 'report_invoice_with_payments',
 'view': ir.ui.view(1332,),
 'view.model': False,
 'view.parent': ir.ui.view(933,),
 'xmlid': 'account.report_invoice_with_payments'}
" while evaluating
'records.button_immediate_install()'
Re: Error
by
Cybrosys Technologies
on 3/7/22, 12:41 AM Author

We couldn't succeed in reproducing this error, Could you please send more details to odoo@cybrosys.com