Generate DOCX Reports Using Dynamic Templates | Smart DOCX Report Generator | Generate DOCX Reports with Dynamic Templates | Dynamic DOCX Engine | Generate DOCX Reports with Dynamic Templates | Flexible DOCX Report Builder | Create DOCX Reports Using Templates
by Cicindela Solutions https://www.cicindelasolutions.com
Odoo
$ 27.99
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 600 |
| Technical Name |
cic_docx_generator |
| License | OPL-1 |
| Website | https://www.cicindelasolutions.com |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 600 |
| Technical Name |
cic_docx_generator |
| License | OPL-1 |
| Website | https://www.cicindelasolutions.com |
Community
Enterprise
Odoo.sh
DOCX Document Generator with Dynamic Template Management
Create, manage, and generate professional DOCX documents using dynamic templates with real-time data from any Odoo model.
Key Features
- ✅ Generate DOCX documents using dynamic templates and real-time Odoo data.
- ✅ Create and manage reusable DOCX templates across multiple models.
- ✅ Configure templates at company level for centralized control.
- ✅ Use dynamic placeholders (e.g., {{ partner_id.name }}) for field mapping.
- ✅ Supports relational fields (Many2one, One2many, Many2many).
- ✅ Generate documents directly from records (e.g., Sale Orders, Invoices).
- ✅ Easy template selection and user-friendly interface.
- ✅ Flexible and scalable template system for any business need.
- ✅ Reduces manual document creation and improves accuracy.
- ✅ Works seamlessly with standard and custom Odoo models.
Feature Screenshot
Set up and manage templates from the Company Settings.
To create a template, upload a DOCX file, choose a model, and provide a name.
Templates are initially in Draft state. Click “Validate" to validate them, after which they can be used to generate DOCX documents.
When the “Validate Template” button is clicked, the system checks the uploaded DOCX file for validity, including file format, field correctness based on the selected model, and file integrity. If all checks pass, the template is marked as Validated and becomes available for DOCX generation.
Once a template is validated, it cannot be modified. To make changes, reset it to Draft, update the template, and validate it again.
The “Generate DOCX” option will be shown in the Action menu on records.
After clicking “Generate DOCX”, a popup opens with two options: “Existing Template” or “New Template”. If “Existing Template” is selected, only validated templates related to the current model are available for selection.
When “New Template” is selected, additional options are shown: upload a DOCX file for one-time use or save it as a template
After selecting “Save Template”, the Template Name field becomes visible. Enter a name, and the template will be saved in the company’s DOCX templates.
After clicking “Print”, the DOCX file is generated and downloaded immediately. A sample DOCX output is shown below.
DOCX Template Formatting Guidelines
Please refer to the sample DOCX files for the correct field and line formatting. Use the same structure when creating new templates. A sample template is already included in the application, and its file path is provided for reference.
Guidelines for Template Design
-
Field Syntax:
- Always use double curly brackets for fields:
{{field_name}}- Every field must be enclosed within
{{ }}.
-
Layout & Formatting:
- Fields can be placed in paragraphs, tables, or headings.
- Ensure the layout is clean and readable within the DOCX page.
-
Many2one Fields:
- Use dot notation for relational fields:
{{many2one_field.sub_field}}- Example:
{{partner_id.name}}
-
Allowed Fields:
- Only use fields from the model selected in the DOCX template configuration.
- Using fields outside the configured model is not supported.
-
Field Reference:
- All usable fields are listed in the instruction section.
- Always refer to that list before adding fields.
-
Validation Check:
- All the above points are validated during template processing.
- Incorrect formatting or invalid fields may cause errors.
Instruction for One2many / Many2many Fields
Follow the guidelines below to correctly format One2many or Many2many fields in DOCX templates:
-
Use Table Only:
- Always use a table to display One2many or Many2many data.
- Do not use paragraphs or headings for these fields.
-
Use
table_linesTag:- The
table_linestag must be used inside the table. - This is required to correctly fetch and display line data.
- The
-
Format Example:
- Use the following structure:
-
table_lines{'table_field': 'order_line', 'table_columns': {'Name': 'product_id.name', 'Qty': 'product_uom_qty', 'Price Unit': 'price_unit'}}
-
Dictionary Structure:
- The format uses a dictionary with two main keys:
-
1. table_field:
- Value should be the One2many / Many2many field of the main model.
- Example:
order_linein Sale Order.
-
2. table_columns:
- This contains another dictionary.
- Defines table column headers and corresponding fields.
-
Example:
{'Name': 'product_id.name', 'Qty': 'product_uom_qty', 'Price Unit': 'price_unit'} - Key: Column name (displayed as table header)
- Value: Field name from the line model
-
Validation:
- The system will validate this format during processing.
- Ensure the structure is correct to avoid errors.
Template Instructions
- Use the {{ field_name }} format to insert dynamic fields in the DOCX template.
- For relational fields (e.g., Many2one), use dot notation:
👉 {{ partner_id.name }}. - Supported field types in templates:
- Char
- Integer
- Float
- Boolean
- Selection
- Date
- DateTime
- Many2one
- One2many
- Many2many
- ❌ Binary fields are not supported in DOCX templates.
- To display data from One2many or Many2many fields in table format:
- Use a table in the DOCX file
- Apply the special tag: table_lines
- Always follow the same format and structure as demonstrated in the sample templates.
- Only .docx files are supported for template upload.
Our Services
....
Technical Help & Support
Need help or customizations? Feel free to reach out!
www.cicindelasolutions.com
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module