Tuesday, September 17, 2024
24 changes · saas-17.2
Resolved issues and error corrections
The timesheet timer now uses the intended task display that includes hours instead of falling back to a generic task view. This helps users see the right task and hour information while tracking time, reducing confusion during timesheet entry.
Original PR description
This commit's purpose is to force the use of the widget 'taskWithHours' when the timesheet timer is launched. Previously, this was done through the xml by setting the 'type' attribute. This is no longer an option, so instead, we update the arguments given in the getPropertyFieldInfo method on the js side with the type we need. task - 4166816 affected version saas-17.2 - master
Long canned response shortcut text now stays within the message composer suggestion list instead of spilling outside it. This keeps the mail interface cleaner and easier to read when users work with longer shortcuts.
Original PR description
Purpose of this PR: When a canned response have a long shortcut text, the text overflow the navigablelist. Before:  After: 
Miscellaneous changes
For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175 Forward-Port-Of: odoo/enterprise#66563
Original PR description
For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175 Forward-Port-Of: odoo/enterprise#66563
We removed the ```select_iot``` method here https://github.com/odoo/enterprise/pull/68325 Since, the client's non-updated views still call it, and get a traceback. ```AttributeError: The method 'select_iot' does not exist on the model 'select.printers.wizard'``` We add it again to fix the issue. Sentry-5804153543 Forward-Port-Of: odoo/enterprise#69820
Original PR description
We removed the ```select_iot``` method here https://github.com/odoo/enterprise/pull/68325 Since, the client's non-updated views still call it, and get a traceback. ```AttributeError: The method 'select_iot' does not exist on the model 'select.printers.wizard'``` We add it again to fix the issue. Sentry-5804153543 Forward-Port-Of: odoo/enterprise#69820
This commit is checking that we have a value before checking it with the today's date. no task id Forward-Port-Of: odoo/enterprise#70103
Original PR description
This commit is checking that we have a value before checking it with the today's date. no task id Forward-Port-Of: odoo/enterprise#70103
Problem: Auto-vacuum is incorrectly archiving reformatted spreadsheet documents that were generated from unsupported file uploads. Specifically, when an .xlsx file is uploaded, Odoo creates a new, compatible spreadsheet document. However, this newly generated document is mistakenly deleted during the auto-vacuum process if it is older than 24 hours. Purpose: Add a domain to prevent Odoo created spreadsheets from uploads being caught by autocron vacuum from improvement to 17.0 last year S
Original PR description
Problem: Auto-vacuum is incorrectly archiving reformatted spreadsheet documents that were generated from unsupported file uploads. Specifically, when an .xlsx file is uploaded, Odoo creates a new, compatible spreadsheet document. However, this newly generated document is mistakenly deleted during the auto-vacuum process if it is older than 24 hours. Purpose: Add a domain to prevent Odoo created spreadsheets from uploads being caught by autocron vacuum from improvement to 17.0 last year Steps to reproduce bug: 1.) Upload an xlsx file 2.) Click on the xlsx file 3.) It will generate an Odoo file of the same type 4.) Set the date of the new file to older than 24 hours 5.) The formatted file will be deleted when the autocron hits opw-4087851 Forward-Port-Of: odoo/enterprise#68581
Before this commit, the is_zero attribute was not recomputed correctly when updating the columns. task: 4188758 Forward-Port-Of: odoo/enterprise#70097
Original PR description
Before this commit, the is_zero attribute was not recomputed correctly when updating the columns. task: 4188758 Forward-Port-Of: odoo/enterprise#70097
Currently, an error occurs when enabling 'Email Alias' in the helpdesk team and helpdesk team name is not available. Step to produce: - Install the 'helpdesk' module. - Navigate to Helpdesk / Configuration / Helpdesk Teams. - Open any record remove a name and disable 'Email Alias'. - Then enable 'Email Alias'. ```AttributeError: 'bool' object has no attribute 'replace'``` An error occurs when the system tries to replace a helpdesk team name at [1] but it is not available. Link
Original PR description
Currently, an error occurs when enabling 'Email Alias' in the helpdesk team and helpdesk team name is not available. Step to produce: - Install the 'helpdesk' module. - Navigate to Helpdesk / Configuration / Helpdesk Teams. - Open any record remove a name and disable 'Email Alias'. - Then enable 'Email Alias'. ```AttributeError: 'bool' object has no attribute 'replace'``` An error occurs when the system tries to replace a helpdesk team name at [1] but it is not available. Link [1]: https://github.com/odoo/enterprise/blob/f9b1be600825651c9a893920d7532b9b95e3dc02/helpdesk/models/helpdesk_team.py#L574 To resolve the issue, add a condition that calls the '_alias_get_creation_values' method if the helpdesk team name is available. Sentry-5831429098 Forward-Port-Of: odoo/enterprise#69921
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#180316
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#180316
Steps to reproduce =================== 1. Create a new lead in CRM with only an email address. 2. Send a message to the email through the chatter. -> The contact is created but it has no name. Issue ================= The issue was in _get_customer_information() for CRM. The function uses parse_contact_from_email which returns an empty name for a simple email. After this commit ================= Email will serve as a name for the contact created through the chatter in CRM. Task
Original PR description
Steps to reproduce =================== 1. Create a new lead in CRM with only an email address. 2. Send a message to the email through the chatter. -> The contact is created but it has no name. Issue ================= The issue was in _get_customer_information() for CRM. The function uses parse_contact_from_email which returns an empty name for a simple email. After this commit ================= Email will serve as a name for the contact created through the chatter in CRM. Task-4129454 Forward-Port-Of: odoo/odoo#178797
It appears that `chromium-browser` sometimes asks for user to sign in, displaying an unwanted popup instead of the IoT Box display homepage. We fix this by adding `--bwsi` argument to the command line. Forward-Port-Of: odoo/odoo#180190
Original PR description
It appears that `chromium-browser` sometimes asks for user to sign in, displaying an unwanted popup instead of the IoT Box display homepage. We fix this by adding `--bwsi` argument to the command line. Forward-Port-Of: odoo/odoo#180190
the search logic for productions by component availability is currently incorrect: it matches productions for which at least one bom line has the requested availability. We align it with the compute method's logic Note: at the current time we have to perform a search within the search method, which will hurt performance if we have many MO, but it is not possible to compute the domain without accessing the records because the relevant product fields are compute and non-searchable opw-405
Original PR description
the search logic for productions by component availability is currently incorrect: it matches productions for which at least one bom line has the requested availability. We align it with the compute method's logic Note: at the current time we have to perform a search within the search method, which will hurt performance if we have many MO, but it is not possible to compute the domain without accessing the records because the relevant product fields are compute and non-searchable opw-4055859 Forward-Port-Of: odoo/odoo#174178
If the IoT Box is in access point mode, it should mean that it has no internet connection. Thus, we avoid returning the linked db url to avoid fetching it. We used to check the access point mode with a `subprocess` call to `hostapd` service. We now check the IP, as it is set to `10.11.12.1` when in AP mode. Task: 4182947 Forward-Port-Of: odoo/odoo#180159
Original PR description
If the IoT Box is in access point mode, it should mean that it has no internet connection. Thus, we avoid returning the linked db url to avoid fetching it. We used to check the access point mode with a `subprocess` call to `hostapd` service. We now check the IP, as it is set to `10.11.12.1` when in AP mode. Task: 4182947 Forward-Port-Of: odoo/odoo#180159
In this Pr: https://github.com/odoo/odoo/pull/176313, we did a fix for the order of the lines in the report but included only the invoices in the t-set. task: 4179612 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#180274 Forward-Port-Of: odoo/odoo#179935
Original PR description
In this Pr: https://github.com/odoo/odoo/pull/176313, we did a fix for the order of the lines in the report but included only the invoices in the t-set. task: 4179612 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#180274 Forward-Port-Of: odoo/odoo#179935
The "Closed On" filter in project and project_todo relies on using a date filter in conjunction with a domain, which is not possible before https://github.com/odoo/odoo/pull/156746. This PR removes those filters, as they don't work before the above PR. Task-3973609 Forward-Port-Of: odoo/odoo#175030
Original PR description
The "Closed On" filter in project and project_todo relies on using a date filter in conjunction with a domain, which is not possible before https://github.com/odoo/odoo/pull/156746. This PR removes those filters, as they don't work before the above PR. Task-3973609 Forward-Port-Of: odoo/odoo#175030
-Probably miss by script since https://github.com/odoo/odoo/commit/332c117f60a36f723c450f61ce2e0e7181d66c21 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#177707
Original PR description
-Probably miss by script since https://github.com/odoo/odoo/commit/332c117f60a36f723c450f61ce2e0e7181d66c21 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#177707
Currently a traceback may arises when there is no `filter_domain`, while the user tries to group projects. Error:- ``` AttributeError: 'bool' object has no attribute '_name' File "odoo/models.py", line 6643, in __and__ if self._name != other._name: TypeError: unsupported operand types in: project.project(2,) & False File "odoo/http.py", line 2383, in __call__ response = request._serve_db() File "odoo/http.py", line 1913, in _serve_db return self._transactioning
Original PR description
Currently a traceback may arises when there is no `filter_domain`, while the user tries to group projects. Error:- ``` AttributeError: 'bool' object has no attribute '_name' File "odoo/models.py",…
Currently a traceback may arises when there is no `filter_domain`,
while the user tries to group projects.
Error:-
```
AttributeError: 'bool' object has no attribute '_name'
File "odoo/models.py", line 6643, in __and__
if self._name != other._name:
TypeError: unsupported operand types in: project.project(2,) & False
File "odoo/http.py", line 2383, in __call__
response = request._serve_db()
File "odoo/http.py", line 1913, in _serve_db
return self._transactioning(
File "odoo/http.py", line 1976, in _transactioning
return service_model.retrying(func, env=self.env)
File "odoo/service/model.py", line 134, in retrying
result = func()
File "odoo/http.py", line 1943, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 2187, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 227, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 757, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/web/controllers/dataset.py", line 35, in call_kw
return call_kw(request.env[model], method, args, kwargs)
File "odoo/api.py", line 459, in call_kw
result = getattr(recs, name)(*args, **kwargs)
File "addons/web/models/models.py", line 242, in web_read_group
groups = self._web_read_group(domain, fields, groupby, limit, offset, orderby, lazy)
File "addons/web/models/models.py", line 268, in _web_read_group
groups = self.read_group(domain, fields, groupby, offset=offset, limit=limit,
File "addons/project/models/project_task.py", line 1982, in read_group
return super().read_group(domain, fields, groupby, offset, limit, orderby, lazy)
File "odoo/models.py", line 2800, in read_group
rows_dict = self._read_group_fill_results(
File "odoo/models.py", line 2247, in _read_group_fill_results
values = group_expand(self, groups, domain).sudo()
File "home/odoo/src/enterprise/saas-17.4/industry_fsm/models/project_task.py", line 194, in _group_expand_project_ids
res &= search_on_comodel
File "odoo/models.py", line 6648, in __and__
raise TypeError(f"unsupported operand types in: {self} & {other!r}")
```
This is because of the recent changes from the below commit
Commit:- https://github.com/odoo/odoo/pull/172973/commits/600b379c91059bfce5ebf6c53a9d282a07e5c640
When the `_search_on_comodel` method returns `False` if there is no `filter_domain`,
it leads to a traceback because `&` is used between an empty recordset and a False.
https://github.com/odoo/enterprise/blob/ce508a604bf70af06347e43000f25426473fb867/industry_fsm/models/project_task.py#L149-L151
We can resolve this issue by returning an empty record, Instead of returning False.
sentry-5836960027
Forward-Port-Of: odoo/odoo#180265Steps to reproduce: Create 2 products with a product tag (ex. '3+1') Create Buy X Get Y reward. In the conditional rules choose: - in the 'among' section the product tag '3+1', - in the 'grant' 1 point per unit paid In the rewards choose: - reward type as 'Free product' - in exchage of 3 points - in the 'among' section the product tag '3+1' Go to /shop page and add 3 products with the tag '3+1' Try to click on the button 'Free product'
Original PR description
Steps to reproduce:
Create 2 products with a product tag (ex. '3+1')
Create Buy X Get Y reward.
In the conditional rules choose:
- in the 'among' section the product tag '3+1',
- in the 'grant' 1 point per unit paid
In the rewards choose:
- reward type as 'Free product'
- in exchage of 3 points
- in the 'among' section the product tag '3+1'
Go to /shop page and add 3 products with the tag '3+1'
Try to click on the button 'Free product'
The reward is not applied
Reason:
In the claim_reward function a reward is not applied if it is a multi_product one.
Fix:
added a dropdown on template that will allow user to select product. the selected product will be sent to backend and processed in claim_reward function
Task : 3774033
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#179400
Forward-Port-Of: odoo/odoo#164868For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175 Forward-Port-Of: odoo/odoo#180288
Original PR description
For the US, it is mandatory to have the accrual gains, usage and balance on the payslip. This adds a new table with the information for the current period. Task: 3993175 Forward-Port-Of: odoo/odoo#180288
Add `account_edi_ubl_cii_tax_extension` module to transifex. Pot file already added in original PR that adds in new module into stable. Orig PR: https://github.com/odoo/odoo/pull/176221 opw-4061329 Forward-Port-Of: odoo/odoo#180325 Forward-Port-Of: odoo/odoo#180277
Original PR description
Add `account_edi_ubl_cii_tax_extension` module to transifex. Pot file already added in original PR that adds in new module into stable. Orig PR: https://github.com/odoo/odoo/pull/176221 opw-4061329 Forward-Port-Of: odoo/odoo#180325 Forward-Port-Of: odoo/odoo#180277
With an AR setup Create a branch company with: - Tax ID: same as in the parent company - Address: same as in the parent company - Certificate/Private key: same as parent company Create an invoice in Journal "Factura electrónica (FE)" Set customer "ADHOC SA" Confirm When the system attempt to send the e-invoice raceback pops up "ValueError: External ID not found in the system: account.5_tax_group_percepcion_ganancias" This occurs because the sytem looks for an xmlid which is only prese
Original PR description
With an AR setup Create a branch company with: - Tax ID: same as in the parent company - Address: same as in the parent company - Certificate/Private key: same as parent company Create an invoice in Journal "Factura electrónica (FE)" Set customer "ADHOC SA" Confirm When the system attempt to send the e-invoice raceback pops up "ValueError: External ID not found in the system: account.5_tax_group_percepcion_ganancias" This occurs because the sytem looks for an xmlid which is only present in the parent company opw-4151003 Forward-Port-Of: odoo/odoo#178992
[ADD] l10n_qa: Add localization package for qatar Add CoA and account groups with all the default account mappings for qatar Improve user experience in qatar task-id#3927918 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#178370
Original PR description
[ADD] l10n_qa: Add localization package for qatar Add CoA and account groups with all the default account mappings for qatar Improve user experience in qatar task-id#3927918 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#178370
This commit simplifies the labels on invoices in the Indian accounting localization package. task-4035245 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#172469
Original PR description
This commit simplifies the labels on invoices in the Indian accounting localization package. task-4035245 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#172469
Before this commit: While generating E-waybill from a SO/PO with different currency the price unit in E-waybill is displayed incorrect in INR, the currency conversion rate is not applied and the price unit is displayed as it is in INR which is incorrect After this commit: We resolve the above issue. Now the currency conversation rate is applied correctly on the price unit while generating E-waybill from SO/PO Description of the issue/feature this PR addresses: Current behavior before
Original PR description
Before this commit: While generating E-waybill from a SO/PO with different currency the price unit in E-waybill is displayed incorrect in INR, the currency conversion rate is not applied and the price unit is displayed as it is in INR which is incorrect After this commit: We resolve the above issue. Now the currency conversation rate is applied correctly on the price unit while generating E-waybill from SO/PO Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#180289