Skip to Content
Menu
v 18.0 Third Party 146
Download for v 18.0 Deploy on Odoo.sh
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 141
Technical Name web_sql_to_report
LicenseAGPL-3
Websitehttps://www.linkedin.com/in/nagara-liong-50ab07136/
Versions 8.0 10.0 14.0 17.0 18.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 141
Technical Name web_sql_to_report
LicenseAGPL-3
Websitehttps://www.linkedin.com/in/nagara-liong-50ab07136/
Versions 8.0 10.0 14.0 17.0 18.0

Web SQL to Report

Auto generate xlsx report from query result or 'list of dictionary' data.

Return XLSX Report from the given 'List of Dictionary' data.

List Of Params :

  • report_name: File name of the report before given datetime at the end of it.
  • data: Data with 'List of Dictionary' type, the key will be Header and the value will be inserted into each row.
  • start_date: For report title, if this param is filled, title will be generated above header.
  • end_date: For report title, start_date must be filled to show end_date. End date will be shown after start_date.
  • header: Enable/Disable header (title) option. Header text will be generated from data keys. Underscores '_' will be replaced with spaces and will capitalize unless all words are uppercase.
  • header_color: Color of the header. The default will be yellow (#FFFF00).
  • capitalize: Enable/Disable auto capitalization for header text.
  • numbering: Enable/Disable numbering. Numbers will be generated in the first column. The default will be True.
  • auto_filter: Enable/Disable auto filter. 'Auto Filter' will filter the first row. The default will be True; however, this only activates when the header parameter is true.
  • freeze_panes: Enable/Disable freeze panes. Freezes the first column. The default will be True; however, this only activates when the header parameter is true.
  • freeze_panes_column: Freeze column from the given integer (starting from 0). The default will be 0; however, this only activates when the header & freeze_panes parameters are true.
  • bottom_remark: Enable/Disable remark. Gives a remark at the bottom of the workbook. The remark contains the downloader's name & download date.

Return :

XLSX file of the generated report.

Usage Example :

1. Code


          def generate_report(self):
              # Example : get data
              query = " SELECT * from res_partner limit 10"
              self.env.cr.execute(query)
              my_report_data = self.env.cr.dictfetchall()
              # Generate report
              return self.env['web.report'].generate_report('My Report Name', my_report_data)
        

2. From VS Code


Screenshot 2024-10-09 at 22 52 24


Result Example :

Report Example

Contact :

nagara987@gmail.com

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.