OdooWiki OCA HUB

Base Report XLSX Boilerplate

report_xlsx_boilerplate folder_open OCA/reporting-engine open_in_new
Reporting License: AGPL-3

This addon provides the possibility to add a Boilerplate Template from which then you can add changes on top of that. It can be useful for those reports that require to always have a pre-defined structure and then some extra information starting from the template.

auto_awesome What this module does

AI-generated from the code · Odoo 13.0

Lets report developers build Excel (XLSX) reports that start from a pre-designed template file, keeping its layout, colours, borders and merged cells, then adding data on top.

This module extends the existing XLSX report engine so that a report can be based on a ready-made Excel template instead of a blank workbook.

  • A report developer points the report to a template file stored inside the module. When the report is generated, that template is loaded and copied into the new Excel file, so the report keeps the template's structure.
  • The copy keeps the template's sheet names, column widths, row heights, merged cells, background colours, font colours, bold/italic/underline styles, text wrapping and horizontal/vertical alignment, as well as cell borders.
  • If the template file path is not correctly defined, Odoo raises a validation error telling the user the path is wrong.
  • If the template cannot be read for any other reason, the error is logged and the report falls back to a normal blank workbook instead of failing.
  • Reports that do not use a template keep working exactly as before.

It touches the abstract report model report.report_xlsx.abstract and requires the Python libraries xlsxwriter and openpyxl. There are no new menus or screens: the change is visible only in the Excel files produced by reports that use a boilerplate template.

Depends on

Models and fields (1)
  • report.report_xlsx.abstract · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 13.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 1 confirmed, 8 with no information of 9 versions.

Sources · Odoo 13.0

Confirmed on 2026-11-03 in branch 13.0 of OCA/reporting-engine.

terminal Installation and usage

OCA documentation · Odoo 13.0

This module requires to have the openpyxl Python module installed.

An example of XLSX report which has a Boilerplate within the module called module_name:

A python class:

from odoo import models

class ReportBoilerplateXlsx(models.AbstractModel):
    _name = "report.module_name.report_name"
    _description = "Report Boilerplate"
    _inherit = "report.report_xlsx.abstract"

    _boilerplate_template_file_path = "report/boilerplate_templates/report.xlsx"

IMPORTANT The XLSX Boilerplate file needs to be located inside a folder within the module directory.

No verified information in OCA: Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.