Daily updates from Odoo
Thursday, March 28, 2024
14 changes · master
Enhancements to existing features
The helpdesk time confirmation wizard now uses clearer button labels and a trash icon for deletion. This makes it easier for users to understand whether they are logging time, resuming the timer, or deleting the entry.
Original PR description
After this commit:
- confirm time spent wizard: buttons changed:
save -> log time
discard -> resume timer
delete -> fa-trash icon
task-3799828Studio now checks approval rules for all form buttons in a single request instead of one by one. This improves form loading performance and reduces database work, especially on screens with multiple approval-controlled actions.
Original PR description
Studio approval is the mechanism that allows to restrict some buttons to some users until they are approved by a manager. Before, the approval was fetched one by one, for each button in the form view. This commit changes this to fetch all the approvals in one request in order to improve the performance. The python code has been improved as well, making as few sql requests as possible. The counterpart of this commit is a change of API of the public method `studio.approval.rule:@get_approval_spec` that can handle fetching rules for any combination of `model * res_ids * method * action_ids` task-3601171
Users can now move through spreadsheet templates and selector dialogs with the keyboard arrow keys. This makes choosing templates or spreadsheets faster and more accessible, especially for users who prefer keyboard navigation.
Original PR description
## Description - Introduces arrow key functionality for navigating templates within the template dialog and spreadsheet selector dialog. Task ID: [3700699](https://www.odoo.com/web#id=3700699&cids=2&menu_id=4720&action=333&active_id=2328&model=project.task&view_type=form)
Users can now adjust pivot table groups and measures directly from the spreadsheet side panel. This makes reporting more flexible by allowing changes to measure calculations, group ordering, and date grouping granularity without rebuilding the pivot table.
The appointment booking form now disables the confirmation button and shows a loading state after the first click. This prevents users from accidentally submitting the same appointment request multiple times and avoids confusing error messages about the slot already being taken.
Original PR description
Purpose ======= Prevent multiple submits of the attendee form when the user spam clicks on the "Confirm Appointment" button. Specifications ============== Spam clicking the submit button is submitting multiple times the form which redirects the user to the "Date & Time" step with a red banner indicating that another user already has reserved this time slot a few seconds ago. Adding a loading effect on the confirmation button to disable it after a single click and inform the user that the form submission is correctly processed. Task-3815493
Resolved issues and error corrections
The Gantt view test suite has been adjusted so desktop-only behavior is no longer checked in mobile mode. This reduces irrelevant test failures and helps keep quality checks focused on how the feature is actually intended to work.
Original PR description
This commit changes the scope of gantt non-mobile tests to desktop only because most are not supposed to work in mobile mode.
The Appointments resource booking schedule no longer crashes when opened. This restores access to the booking view so teams can manage appointment resources as expected.
Original PR description
Since https://github.com/odoo/enterprise/pull/57517, when we go to Appointments > Schedule > Ressource Booking, we get a traceback. Restore the previous behavior, use the new `_read_group_groupby` hook instead, and add a search method `_search_resource_ids` to be fully correct with the domain returned by web_read_group.
Miscellaneous changes
Com PR: https://github.com/odoo/odoo/pull/157897 --- We must disable the cache for the header when there are record links in it. When the runbot performs enterprise tests, "Helpdesk" appears in the header, which includes a record link. This commit removes record like urls in the menu before doing the performance test to prevent increasing the query count. opw-3694651 opw-3750925 opw-3781668 Forward-Port-Of: odoo/enterprise#59358 Forward-Port-Of: odoo/enterprise#58853
Original PR description
Com PR: https://github.com/odoo/odoo/pull/157897 --- We must disable the cache for the header when there are record links in it. When the runbot performs enterprise tests, "Helpdesk" appears in the header, which includes a record link. This commit removes record like urls in the menu before doing the performance test to prevent increasing the query count. opw-3694651 opw-3750925 opw-3781668 Forward-Port-Of: odoo/enterprise#59358 Forward-Port-Of: odoo/enterprise#58853
## Issue: - when you create an appraisal and you click on 'send by email' and add some text on the body of the email, it doesn't appear nor in the chatter, nor in the email sent. ## Steps To Reproduce: - create an appraisal - click on SEND BY email - add email body - notice missing email body in the chatter. ## Solution: - add user_body to "_compute_body" dependencies to trigger it otherwise it wont be computed and body is kept empty. opw-3787796 Forward-Port-
Original PR description
## Issue:
- when you create an appraisal and you click on 'send by email' and add some text on the body of the email, it doesn't appear
nor in the chatter, nor in the email sent.
## Steps To Reproduce:
- create an appraisal
- click on SEND BY email
- add email body
- notice missing email body in the chatter.
## Solution:
- add user_body to "_compute_body" dependencies to trigger it otherwise it wont be computed and body is kept empty.
opw-3787796
Forward-Port-Of: odoo/enterprise#59284
Forward-Port-Of: odoo/enterprise#58374Clean the implementation. Forward-Port-Of: odoo/enterprise#58819
Original PR description
Clean the implementation. Forward-Port-Of: odoo/enterprise#58819
The account code 5003 is used for the salary advance account but in hr.salary.rule the account linked to it is 5004 Holidays payment after departure. see [here](https://github.com/odoo/enterprise/blob/17.0/l10n_ch_hr_payroll_account/models/account_chart_template.py#L15). But that should be Salary Advance. Although I am not very sure about this, I saw the code and it seems to be suspicious. Before fix:- . But that should be Salary Advance. Although I am not very sure about this, I saw the code and it seems to be suspicious. Before fix:-  After fix:-  Forward-Port-Of: odoo/enterprise#59002
Before this commit, some archived sign.requests were triggering reminders by the cron when they shouldn't, because they weren't active anymore. After this commit, archived sign.requests no longer trigger reminders by the cron, they are skipped in the SQL query. task-3806013 Forward-Port-Of: odoo/enterprise#58649
Original PR description
Before this commit, some archived sign.requests were triggering reminders by the cron when they shouldn't, because they weren't active anymore. After this commit, archived sign.requests no longer trigger reminders by the cron, they are skipped in the SQL query. task-3806013 Forward-Port-Of: odoo/enterprise#58649
Change adds inputs and rules used for calculating salary in UAE. task-3634461 Forward-Port-Of: odoo/enterprise#53553
Original PR description
Change adds inputs and rules used for calculating salary in UAE. task-3634461 Forward-Port-Of: odoo/enterprise#53553
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version 17.0, a new record 'invoice_date' is inserted into the account_report_column table, but the corresponding 'Invoice Date' column is not visible in the journal report. ### Current situation: account_report_column ``` aksi_test=# select id, name, sequence , report_id, expression_label from account_rep
Original PR description
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version…
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version 17.0, a new record 'invoice_date' is inserted into the account_report_column table, but the corresponding 'Invoice Date' column is not visible in the journal report.
### Current situation:
account_report_column
```
aksi_test=# select id, name, sequence , report_id, expression_label from account_report_column where report_id = 17 order by id;
id | name | sequence | report_id | expression_label
----+---------------------------+----------+-----------+------------------
63 | {"en_US": "Account"} | | 17 | account
64 | {"en_US": "Label"} | | 17 | label
65 | {"en_US": "Debit"} | | 17 | debit
66 | {"en_US": "Credit"} | | 17 | credit
67 | {"en_US": ""} | | 17 | additional_col_1
68 | {"en_US": ""} | | 17 | additional_col_2
85 | {"en_US": "Invoice Date"} | | 17 | invoice_date
(7 rows)
```
### After Fix:
Journal Report

Forward-Port-Of: odoo/enterprise#58858