Tuesday, January 17, 2023
6 changes
Enhancements to existing features
The message composer has been updated across mail-related workflows to make writing and sending messages smoother for users. This should improve day-to-day communication in Odoo by making a commonly used interface more reliable and easier to use.
This update streamlines how Odoo creates, posts, and sends messages from templates and the composer. It improves reliability and performance for customer communications, adds support for batch posting and multiple report attachments, and makes future mail-related changes easier to maintain.
Original PR description
Purpose of this merge is to cleanup usage of main mail.thread post methods and helpers. In this merge we notably * cleanup input / output as well as default values for message_post as well as 'with…
Purpose of this merge is to cleanup usage of main mail.thread post methods and
helpers. In this merge we notably
* cleanup input / output as well as default values for message_post as well
as 'with view' and 'with template' helpers. Those are now cleaned and
two main helpers are introduced: post with source (view or template)
and mail with source (view or template), depending on main notification
style.
* rewrite and improve template code generating values from the template
definition. It is now cleaner, delegated into sub methods and made
more efficient in batch mode, notably when computing or creating
recipients;
* rewrite and improve composer code generating values for either posting
either sending a mass mailing. It is now better separated into a static
rendering and a dynamic rendering;
* supports a batch post on documents, instead of being limited to a single
res_id and improve overall code to be batch-enabled;
* support scheduled_date from template;
* support multi reports templates;
* perform various code cleaning, rewriting in order to achieve both a more
readable code, easier to override and understand as well as better tested
and documented;
* cleanup configuration of composer. Use fields, better define and update
their value. Don't add them in UI but allow more fine-grain usage, notably
when invoked in code;
Already done previously through pre-merges
* cleanup mail.alias definitions;
* cleanup mail posting tests;
* move code currently located on template model into the correct model
notably in accounting;
See community PR odoo/odoo#99482 for more details.
LINKS
Task-2710804 (Mail: Clean MailThread Posting API)
Task-3035101 (Mail: Support batch-posting from composer)
Task-2868153 (Mail: Allow multi-reports mail templates)
Prepares Task-2088884 (Mail: Use editable computed stored fields in composer)The spreadsheet-related Enterprise modules were adapted to work with the latest Odoo spreadsheet engine. This helps keep document spreadsheets and dashboards compatible, with updated menu actions and test coverage to reduce upgrade risk.
Original PR description
See community PR https://github.com/odoo/odoo/pull/110106 Odoo task 3090717
Financial reports now hide the company currency symbol where amounts are already clearly in the company currency. This reduces visual clutter, saves space in report columns, and makes key figures easier to scan.
Original PR description
There is a lot of use case where reports are exclusively in the company currency, or have columns only in this currency. In these case, showing the currency symbol is redundant, takes space and makes the reading slower. With this change, we will avoid displaying the symbol in a variety of use case where it is not needed. Task id #2868674
The employee profile view has been reorganized so the Payroll section is handled within the Belgian payroll localization. This keeps payroll-related information aligned with country-specific requirements and makes the general employee profile cleaner.
Original PR description
- Move the Payroll group to the Belgian localization. task-3127455
Aged Receivable and Aged Payable reports now show the invoice date instead of the due date, making it easier to understand when invoices were issued. The Expected Date column is also more complete because it falls back to the due date when no expected date is set.
Original PR description
In Aged Receivable/Aged Payable reports: - Due Date column should be replaced with the Invoice Date column - When the expected date is not set, the due date should be used instead in the Expected Date column. Currently, it's empty most of the time. task-3103845