TIP: You can type at any time to perform a new search.
Report Async
report_async · OCA/reporting-engine
🛠 Migration considerations
- Raw `cr.execute()` INSERT/UPDATE/DELETE bypasses the ORM (no compute/constrains/tracking/mail): `UPDATE ir_attachment SET create_uid = %s, write_uid = %s WHERE id = %s` - re-check the table/column names still match after upgrading. migration-raw-sql-write · source
Found by automated static analysis: patterns worth a look before/after upgrading this module to a newer Odoo version.
- Repository
- OCA/reporting-engine · module folder · Try on Runboat
- Module version
- 1.0.0
- Category
- Generic Modules
- Folder size
- 0.1 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/reporting-engine
- Last tracking update
- 2026-08-13 23:29:02
- Authors
- Odoo Community Association (OCA), Ecosoft
- Maintainers
- Odoo Community Association (OCA), Ecosoft
- Committers
- OCA-git-bot, oca-ci, Samir GUESMI
- Odoo dependencies
- Python dependencies
- openupgradelib, requests
- System dependencies
- None
- Required by
- None
- Description
The new menu "Report Center" is the central place to host your reports in one place. From here, there are 2 ways to launch the report, 1. Run Now - run report immediately as per normal. 2. Run Background - put the report execution to queue job. By using the queue job, option 2 is great for long running report. The report file will be saved for later use, with the option to send report by email as soon as it is ready. Notes: - Only user with Technical Feature rights can manage the report. - Every internal user will have right to execute the report allowed for his/her groups. - The files created are owned and viewable only by the person who run the report. - Job queue manager can also see all jobs for each reports.
Code Analysis ⓘ
Views touched (4)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
print_report_wizard |
print.report.wizard | print.report.wizard | form | New |
view_report_async_form |
report.async.form | report.async | form | New |
view_report_async_search |
report.async.search | report.async | search | New |
view_report_async_tree |
report.async.tree | report.async | list | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (4)
New fields (0)
No new fields.
Public methods (3)-
fetch(self, field_names)Add permission to read analytic account for do something. -
name_search(self, name, domain=None, operator='ilike', limit=100)@api.model -
search(self, args, offset=0, limit=None, order=None)@api.model
New fields (0)
No new fields.
Public methods (1)-
report_action(self, docids, data=None, config=True)
New fields (2)
-
action_report_idMany2one → ir.actions.reportcomodel_name='ir.actions.report'required=Truestring='Report Template' -
referenceReferencerequired=Trueselection='_reference_models'string='Document'
-
print_report(self)
New fields (9)
-
action_idMany2one → ir.actions.act_windowcomodel_name='ir.actions.act_window'required=Truestring='Reports' -
allow_asyncBooleandefault=Falsehelp='This is not automatic field, please check if you want to allow this report in background process' -
email_notifyBooleanhelp='Send email with link to report, when it is ready'string='Email Notification' -
file_idsMany2many → ir.attachmentcomodel_name='ir.attachment'compute='_compute_file'help='List all files created by this report background process' -
group_idsMany2many → res.groupscomodel_name='res.groups'help='Only user in selected groups can use this report.If left blank, everyone can use'string='Groups' -
job_idsMany2many → queue.jobcomodel_name='queue.job'compute='_compute_job'help='List all jobs related to this running report' -
job_infoTextcompute='_compute_job'help='Latest Job Error Message' -
job_statusSelectioncompute='_compute_job'help='Latest Job Status'selection=[('pending', 'Pending'), ('enqueued', 'Enqueued'), ('started', 'Started'), ('done', 'Done'), ('failed', 'Failed')] -
nameCharrelated='action_id.display_name'string='Name'
-
run_async(self) -
run_now(self) -
run_report(self, docids, data, report_id, user_id)@api.model -
view_files(self) -
view_jobs(self)
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…