Friday, August 23, 2024
23 changes · master
Enhancements to existing features
This update removes reliance on an older database query helper across several reporting and data cleanup areas. It keeps payroll, recruitment, planning, timesheet forecasting, and data cleaning reports aligned with the main platform’s database practices, reducing maintenance risk without changing day-to-day user workflows.
Original PR description
odoo/odoo#173992
This update adds automated test coverage for reacting to WhatsApp messages. It helps ensure upcoming WhatsApp messaging improvements work reliably before they reach users.
Original PR description
Preparation for PR odoo/odoo#170553
This update adjusts website sales and rental test tours to use the latest shared testing utility structure. It is an internal quality improvement that helps keep automated checks maintainable without changing customer-facing behavior.
This update improves how translated messages are built across multiple Odoo Enterprise apps, reducing cases where parts of messages could stay untranslated or appear in an unnatural word order. This helps deliver clearer, more accurate wording for users working in languages other than English.
Resolved issues and error corrections
Accounting report titles now match their updated menu names, avoiding confusion for users navigating reports. PDF exports also include proper side margins so report content no longer runs to the edge of the page.
Original PR description
In this commit: https://githu.com/odoo/enterprise/pull/67611/commits/982eaa3867576f581e5f12fa649a281d9407278b We renamed some reports menu item but we didn't change the name on top of the ui of the reports so there was a discordance. Before this commit the side of the pdf were extended to the side of the page. To resolve that issue adding a margin on the content of the pdf is enough. task: 4127269
Miscellaneous changes
Steps to reproduce: - Open Project app. - Go to all tasks/my tasks - Change view to gantt Issue: - You can observe that there is no visual effect(grey cell)for unavailability i.e, company holidays / timeoff. Reason: - The method ```_gantt_unavailability``` in ```project_task``` of ```project_enterprise``` is not having a sync on how it is providing the values - Technically speaking here the structure of data being sent is not compatible with extracting the unavailability maki
Original PR description
Steps to reproduce: - Open Project app. - Go to all tasks/my tasks - Change view to gantt Issue: - You can observe that there is no visual effect(grey cell)for unavailability i.e, company holidays /…
Steps to reproduce:
- Open Project app.
- Go to all tasks/my tasks
- Change view to gantt
Issue:
- You can observe that there is no visual effect(grey cell)for unavailability i.e, company holidays / timeoff.
Reason:
- The method ```_gantt_unavailability``` in ```project_task``` of ```project_enterprise``` is not having a sync on how it is providing the values
- Technically speaking here the structure of data being sent is not compatible with extracting the unavailability making them ignored.
The structure being sent is something like this
```{ 'unavailabilities': [intervals]}``` -- This wrong
```{user_id: [intervals]}, {user_id: [intervals]}``` -- something like this required
The current data being sent is getting overriden everytime it goes into the loop
Also we don't specify the users and their intervals.
Fix:
- Adapting the code to the above problems mentioned.
Affected from commit - https://github.com/odoo/enterprise/commit/c6ae9f78f88322d1074700ba6923162059dba42c
task-4063237
Forward-Port-Of: odoo/enterprise#67114Original PR description
There are many places in the code where translated strings are concatenated to other strings, translated or untranslated. While it is sometimes the right thing to do, there are also a lot of problematic cases: - When concatenating untranslated strings, it obviously means they won't be translated, even though they sometimes should be - Even if they don't need to be, the order of words can vary greatly between languages, and including it makes reordering easier. - The same issue can arise when concatenating multiple translated strings, especially if they are part of one sentence. This commit fixes the problematic occurrences of concatenation. It also adds some named placeholders and uses of the `format_list` helper. Community: https://github.com/odoo/odoo/pull/171425 Task-3997249
The field service worksheet setup test now waits until the template window has fully closed before continuing. This reduces false failures in automated checks and helps keep the feature validation more reliable.
Original PR description
Before this commit, when the step on the `fsm_task_form_tour` tour saves the worksheet template creation, the save action will take some times to be able to generate a new worksheet model for that worksheet template. The problem is the tour does not wait enough time before doing the next steps. This commit adds a step to wait the form view dialog of the worksheet template is closed before doing the other steps. runbot-72641
The restaurant appointment screen now shows the correct booking icon again. This fixes a visual mistake from a previous change, helping staff recognize booking actions more easily.
Original PR description
In commit ed556a111ead0c9a1fe517173cc97c495d0d6ac7 the booking icon was replaced by mistaked. In this commit we revert to the original one.
This fixes an automated test that could fail because it clicked a pager button before it was ready. The change makes the test wait until the button is enabled, improving test reliability without changing user-facing behavior.
Original PR description
The tour changes the number of elements in the pager. We then check that the number of elements do change in the list. But the button stay disabled longer, which implies that we try to click on it too soon in the tour, failing it. We should wait for the button to be enabled before clicking on it. runbot-74835
## Analysis Since a recent commit (https://github.com/odoo/enterprise/commit/25f72c0b716d5fdc15493b74375106e3d6f580fa), the operation_note is fetched independently from the other fields to avoid performance issues. This causes issues as, when computing data context (e.g. during `onChange`), we assume that all fields in data are available in config: ``` _computeDataContext() { ... const data = toRaw(this.data); for (const fieldName in data) { const value = data
Original PR description
## Analysis Since a recent commit (https://github.com/odoo/enterprise/commit/25f72c0b716d5fdc15493b74375106e3d6f580fa), the operation_note is fetched independently from the other fields to avoid…
## Analysis
Since a recent commit (https://github.com/odoo/enterprise/commit/25f72c0b716d5fdc15493b74375106e3d6f580fa), the operation_note is fetched independently from the other fields to avoid performance issues.
This causes issues as, when computing data context (e.g. during `onChange`), we assume that all fields in data are available in config:
```
_computeDataContext() {
...
const data = toRaw(this.data);
for (const fieldName in data) {
const value = data[fieldName];
const field = this.fields[fieldName]; // field == undefined
if (field.relatedPropertyField) { // traceback
continue;
}
...
}
```
## Steps to reproduce
- Create a product "TEST"
- Create a BoM For product "TEST", with a new product "TEST Component".
- Add 1 Operation OP1 (keep default value), set a description
- Add 1 step to OP1, with type "Register Production"
- Create MO for "TEST", Confirm, Plan,
- Start operation OP1
- On ShopFloor, go to MO, select workcenter, open step
- Update quantity: Error
## Solution
We make a way for manually fetched fields (most probably, all HTML fields which can contain base64 images) and add it to the fields to avoid them being undefined and causing tracebacks.
## References
opw-4103712
--
I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr)
Forward-Port-Of: odoo/enterprise#68497Before this commit, when the helpdesk ticket is created by the website form and need to insert an attachment, the subtype used is altered to be able to let the portal user to see it instead of a using a non internal subtype. This commit reverts the changes made in d9b06557baf692f707ff8b75106df6b67c6bc523 to avoid altering the subtype. Forward-Port-Of: odoo/enterprise#68771
Original PR description
Before this commit, when the helpdesk ticket is created by the website form and need to insert an attachment, the subtype used is altered to be able to let the portal user to see it instead of a using a non internal subtype. This commit reverts the changes made in d9b06557baf692f707ff8b75106df6b67c6bc523 to avoid altering the subtype. Forward-Port-Of: odoo/enterprise#68771
If longpolling fails, it displays a fail popup with help messages. We added a `fallback` parameter allowing to prevent this popup from displaying if we want to fallback on other methods (e.g. websocket). Forward-Port-Of: odoo/enterprise#68719
Original PR description
If longpolling fails, it displays a fail popup with help messages. We added a `fallback` parameter allowing to prevent this popup from displaying if we want to fallback on other methods (e.g. websocket). Forward-Port-Of: odoo/enterprise#68719
…bill Forward-Port-Of: odoo/enterprise#66846
Original PR description
…bill Forward-Port-Of: odoo/enterprise#66846
Currently, receipts are not take into account when generating the VAT Record books ### Steps to reproduce * install `l10n_es_reports` * switch to a Spanish company * enable sales (or purchase) receipts in the settings * create and confirm a sales receipt * open the generic tax report * select the dates for the receipt. * attempt to generate the VAT Record books You will be met with a traceback. ### Fix Include receipts and treat them as invoices. (confirmed with JCO) opw-
Original PR description
Currently, receipts are not take into account when generating the VAT Record books ### Steps to reproduce * install `l10n_es_reports` * switch to a Spanish company * enable sales (or purchase) receipts in the settings * create and confirm a sales receipt * open the generic tax report * select the dates for the receipt. * attempt to generate the VAT Record books You will be met with a traceback. ### Fix Include receipts and treat them as invoices. (confirmed with JCO) opw-4053187 Comunity PR: odoo/odoo#175002 Forward-Port-Of: odoo/enterprise#68804 Forward-Port-Of: odoo/enterprise#67621
Accounting > Configuration > Followup Levels Open the first level, enable 'Auto Execute' Delete the remaining follow up levels Create an invoice for a partner dated in the past with payment terms 'Immediate Payment' Run manually the cron 'Account Report Followup; Execute followup' Issue: partner will be processed by the cron, a warning will be logged but the partner next remainder date has not changed, so the next day the partner will be processed again. It is an issue when partner st
Original PR description
Accounting > Configuration > Followup Levels Open the first level, enable 'Auto Execute' Delete the remaining follow up levels Create an invoice for a partner dated in the past with payment terms 'Immediate Payment' Run manually the cron 'Account Report Followup; Execute followup' Issue: partner will be processed by the cron, a warning will be logged but the partner next remainder date has not changed, so the next day the partner will be processed again. It is an issue when partner starts to accumulate as all the partner with missing info will be processed daily without further notice This commit introduce the following mitigations for the issue: - Update the next remainder date even if no message has been sent - Limit the number of partner we process per run to 1000 - Add a message to the partner record in case the followup action failed opw-3935084 Forward-Port-Of: odoo/enterprise#68615 Forward-Port-Of: odoo/enterprise#66770
Add a new module that supports printing to the Philippine check format Task id # 3576570 Forward-Port-Of: odoo/enterprise#56117
Original PR description
Add a new module that supports printing to the Philippine check format Task id # 3576570 Forward-Port-Of: odoo/enterprise#56117
Commit fixes appointment description styling task-3446959 Forward-Port-Of: odoo/enterprise#68652 Forward-Port-Of: odoo/enterprise#65897
Original PR description
Commit fixes appointment description styling task-3446959 Forward-Port-Of: odoo/enterprise#68652 Forward-Port-Of: odoo/enterprise#65897
This will add rules for the "Crédit d'impôt salarié" and for the "Crédit d'Impôt pour Compensation taxe Carbone" to the Luxembourg loca. Task: 3970107 Forward-Port-Of: odoo/enterprise#68495 Forward-Port-Of: odoo/enterprise#64260
Original PR description
This will add rules for the "Crédit d'impôt salarié" and for the "Crédit d'Impôt pour Compensation taxe Carbone" to the Luxembourg loca. Task: 3970107 Forward-Port-Of: odoo/enterprise#68495 Forward-Port-Of: odoo/enterprise#64260
Steps to reproduce: - Create a project and a task - Attach a file to the task - Share the task with Joel Willis (portal user) - DO NOT share the project with him - Log in as Joel Willis (portal user) - Click Tasks > '1 Document' button next to project name This redirects back to portal home menu. This happens because the button leads to projects/id/documents, which Joel Willis has not been granted access to. The expectation would be a redirection to tasks/id/documents instead, as por
Original PR description
Steps to reproduce: - Create a project and a task - Attach a file to the task - Share the task with Joel Willis (portal user) - DO NOT share the project with him - Log in as Joel Willis (portal user) - Click Tasks > '1 Document' button next to project name This redirects back to portal home menu. This happens because the button leads to projects/id/documents, which Joel Willis has not been granted access to. The expectation would be a redirection to tasks/id/documents instead, as portal > projects handles this use case, and we curently do not have a way to share documents attached to a specific task through portal. opw-4009258 Forward-Port-Of: odoo/enterprise#68720 Forward-Port-Of: odoo/enterprise#67849
Steps to reproduce: - Create a partner with a ref "PARTNER01" - Import a FEC with the same partner ref Issue: You will 2 same contacts Cause: During the refactor, the check existing partner has been taken out https://github.com/odoo/enterprise/commit/f60263a105717a7e00b1996b2b2e7b89e514ca54#diff-0c2b1931af025d6a908eea7d818a8858c6e9b03b436757b3c49ffa9857e55ae1L208-L227 Solution: The flow has slightly changed. To make sure the records already existing have an xml_id, we update them
Original PR description
Steps to reproduce: - Create a partner with a ref "PARTNER01" - Import a FEC with the same partner ref Issue: You will 2 same contacts Cause: During the refactor, the check existing partner has been taken out https://github.com/odoo/enterprise/commit/f60263a105717a7e00b1996b2b2e7b89e514ca54#diff-0c2b1931af025d6a908eea7d818a8858c6e9b03b436757b3c49ffa9857e55ae1L208-L227 Solution: The flow has slightly changed. To make sure the records already existing have an xml_id, we update them opw-3932234 Forward-Port-Of: odoo/enterprise#68638 Forward-Port-Of: odoo/enterprise#63895
Purpose: ------- Currently, clicking several times quickly on the caret to unfold an article in the sidebar may throw an error and show the child articles several times in the sidebar. This commit fixes the issue by preventing to make a new request to load the child articles if one has already been made. Task-4099133 Forward-Port-Of: odoo/enterprise#68013
Original PR description
Purpose: ------- Currently, clicking several times quickly on the caret to unfold an article in the sidebar may throw an error and show the child articles several times in the sidebar. This commit fixes the issue by preventing to make a new request to load the child articles if one has already been made. Task-4099133 Forward-Port-Of: odoo/enterprise#68013
When auofilling towards the right the last colmn of a pivot whose column are grouped by date, we got a traceback. This was due to the fact that we were trying to use the measure string as argument of `increment_date`. Task: [4045799](https://www.odoo.com/web#id=4045799&cids=1&menu_id=4720&action=333&active_id=2328&model=project.task&view_type=form) Forward-Port-Of: odoo/enterprise#68677 Forward-Port-Of: odoo/enterprise#68358
Original PR description
When auofilling towards the right the last colmn of a pivot whose column are grouped by date, we got a traceback. This was due to the fact that we were trying to use the measure string as argument of `increment_date`. Task: [4045799](https://www.odoo.com/web#id=4045799&cids=1&menu_id=4720&action=333&active_id=2328&model=project.task&view_type=form) Forward-Port-Of: odoo/enterprise#68677 Forward-Port-Of: odoo/enterprise#68358
Duplicating a pricelist would copy over the price rules, but not the time-based rules. Adding copy to this field allows that to work. opw-4088788 Forward-Port-Of: odoo/enterprise#68426 Forward-Port-Of: odoo/enterprise#68066
Original PR description
Duplicating a pricelist would copy over the price rules, but not the time-based rules. Adding copy to this field allows that to work. opw-4088788 Forward-Port-Of: odoo/enterprise#68426 Forward-Port-Of: odoo/enterprise#68066