Tuesday, September 17, 2024
37 changes · saas-17.4
Resolved issues and error corrections
DIN5008 invoices, sales, purchase, and repair documents now display dates using the user's configured date format instead of always showing YYYY-MM-DD. This keeps printed business documents consistent with company and localization preferences.
Original PR description
Versions -------- - saas-17.4+ Steps ----- 1. Set document layout to DIN5008; 2. create an invoice; 3. print invoice. Issue ----- Dates are formatted as YYYY-MM-DD, regardless of date formatting preferences. Cause ----- Commit 6d36b380315 moved DIN5008 formatting logic from Python to XML. In doing so, dates were no longer getting formatted. Solution -------- Add the `date` widget to the XML fields to format them accordingly. opw-4172138 Enterprise PR: https://github.com/odoo/enterprise/pull/70142
The CRM Sales menu now opens My Quotations as a list of quotations instead of starting on a new quotation form. This helps sales users quickly review their existing quotations and avoids confusion when navigating from CRM.
Original PR description
In version 17.4, "My Quotations" (in the CRM module) opens a new quotation in the form view, rather than displaying a list of all quotations. Steps to reproduce the issue: Go to the CRM module. Navigate to Sales -> My Quotations. This fix ensures that the "My Quotations" menu correctly opens the list view of all quotations. OPW-4150236 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Grouped Kanban views no longer show record counts when there are no real records and only sample data is displayed. This avoids misleading users with counts that do not reflect actual business data.
Original PR description
Since [1], a display of the number of records was added in a kanban view when grouped. This commit removes this display when the Kanban view does not have any records and the sample data is used. [1]: https://github.com/odoo/odoo/commit/f486bca505cb6ef9bf477e5d02d06c420b27de56
Users can once again filter tasks by project when adding a blocking task. This makes it easier to find tasks from another project without searching across all projects manually.
Original PR description
Before this commit, due to some changes in #153989, the project field is no longer displayed in the search view displayed in the modal displayed when the user would like to add a task as blocking…
Before this commit, due to some changes in #153989, the project field is no longer displayed in the search view displayed in the modal displayed when the user would like to add a task as blocking task. This commit reverts the invisible condition added on that field in the search since that change was not really needed for project sharing since project sharing feature does not really use that search view. Steps to reproduce: ================== 1. Install project 2. Enable `Task dependencies` feature in Settings > Configuration of project app. 3. Create a project with `Task dependencies` feature enabled. 4. Add a new task in that project and click on `Add a line` in `Blocked By` tab inside the form view. 5. Search another project inside the search by taping the name of another project. Current behavior ---------------- The project field is not in the search and so it is impossible to quickly search tasks in another project. Expected behavior ----------------- The project field should be displayed in the search view to be able to search tasks in another project instead of search in all projects (if the default filter is removed).
This fixes an issue where archived product pages could fail to preview on the website when certain product recommendation blocks were present. Website managers can now access those archived product pages without encountering an error, improving reliability during catalog maintenance.
Original PR description
Currently, an exception was generated when the user added a dynamic filter like 'Recently Sold Products', 'Accessories for Product', or 'Products Recently Sold With Product' to the product website…
Currently, an exception was generated when the user added a dynamic filter like 'Recently Sold Products', 'Accessories for Product', or 'Products Recently Sold With Product' to the product website view and tried to preview archived products from website. Steps to produce: 1. Create a product with Alternative Products from the sales tab. 2. Archive this product 3. Click on Go to Website Icon >> error occurs Error: `TypeError: int() argument must be a string, a bytes-like object or a real number, not 'NoneType'` This is because we receive 'product_template_id' as None, and when [1] tries to convert it onto Integer, it will generate an exception. With the recently merged https://github.com/odoo/odoo/commit/d526b6c70bcf21bf84be83615daefee5ad972d14, added this code but not handled case with product_template_id as None. This commit will resolve the above issue by setting 'current_template' as false when `current_template` is None. [1] - https://github.com/odoo/odoo/blob/2aa4ee0d66af8079694a42b84d341fe118f12c0b/addons/website_sale/models/website_snippet_filter.py#L216 sentry-5704306029 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Customer invoices now display the payment reference field as expected. This helps users see and confirm the correct payment details directly on the invoice, reducing confusion during payment follow-up.
Original PR description
In version 17.4, the payment reference field is invisible for customer invoices. This fix ensures that it is visible for customer invoices. OPW-4156009 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Sale order totals with very large amounts now adjust their text size in the customer portal so the amount stays on one line. This improves readability and presentation for customers viewing sale order previews.
Original PR description
Version: - saas-17.4 Steps to reproduce: - create a sale order - add a product with bigger amount - open customer preview Issue: - when total amount is too big it shows amount in two lines which is not looks good. Cause: - total amount is displayed in two lines due to font size of text is not get reduce according to length of amount Solution: - adapt size of text based on length of total amount to display amount in one line task-4103473 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
DIN5008 invoices and related reports now display dates using each user's preferred date format instead of always showing a fixed YYYY-MM-DD style. This makes printed documents clearer and consistent with company localization settings.
Original PR description
Versions -------- - saas-17.4+ Steps ----- 1. Set document layout to DIN5008; 2. create an invoice; 3. print invoice. Issue ----- Dates are formatted as YYYY-MM-DD, regardless of date formatting preferences. Cause ----- Commit 7f63dab38a6 moved DIN5008 formatting logic from Python to XML. In doing so, dates were no longer getting formatted. Solution -------- Add the `date` widget to the XML fields to format them accordingly. opw-4172138 Community PR: https://github.com/odoo/odoo/pull/180415
This fixes an error that occurred when users tried to set the DateV Vendor field on a partner contact in the German reporting module. The change ensures the company-specific value is handled correctly, preventing interruptions in accounting data setup.
Original PR description
Open a partner contact Go to Accounting tab Try to set 'DateV Vendor' field Issue: Traceback will raise ''' psycopg2.errors.UndefinedColumn: column "l10n_de_datev_identifier" does not exist LINE 3: WHERE l10n_de_datev_identifier != 0 ''' This occurs because l10n_de_datev_identifier is set as comapny_dependant, so its value isn't stored on the model table, but it is registered as `ir.property`. opw-4163804
Fixed an issue where users could not find Sales Order Items when adding time billing details to a Helpdesk ticket. This restores expected search results, helping teams link support work to the correct customer billing item.
Original PR description
Steps ----- On runbot: 1. Enable Time Billing for a Helpdesk team. 2. Create a ticket for Deco Addict. 3. Remove the "Sales Order Item". 4. Try to search a "Sales Order Item". ** No results appear ** Change ----- Correct domain, `commercial_partner_id` needs to be unquoted or it will be interpreted as a string. opw-4177705
Project update panels now display budgets only when they are confirmed or done, excluding revised budgets. This keeps project budget information aligned with finalized statuses and reduces confusion for users reviewing project progress.
Original PR description
Before this commit: - In the project update, budgets in the 'Confirmed', 'Revised' and 'Done' state are visible in the project update panel. After this commit: - In the project update, only budgets in the 'Confirmed' or 'Done' state are visible in the project update panel. Task-4180079
Miscellaneous changes
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#180361 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#180361 Forward-Port-Of: odoo/odoo#180277
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
This error occurs when attempting to save a manufacturing order that is in a confirmed state. Steps to reproduce: - Install the ``mrp_workorder_hr_account`` module - Create a new MO, add a line, and ``Confirm`` - Now remove a line and click on the ``Save`` button Traceback: ``ValueError: not enough values to unpack (expected 3, got 2)`` The error at [1] occurred because we were not receiving the expected value of ``field_values`` in ``move_vals``. We expected 3 values but only recei
Original PR description
This error occurs when attempting to save a manufacturing order that is in a confirmed state. Steps to reproduce: - Install the ``mrp_workorder_hr_account`` module - Create a new MO, add a line, and ``Confirm`` - Now remove a line and click on the ``Save`` button Traceback: ``ValueError: not enough values to unpack (expected 3, got 2)`` The error at [1] occurred because we were not receiving the expected value of ``field_values`` in ``move_vals``. We expected 3 values but only received 2. [1]- https://github.com/odoo/odoo/blob/c48d62098b2809cd046742435afd4f7ba3a4cbe1/addons/mrp/models/mrp_production.py#L843-L844 sentry-5819387893 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#179642
### NOT FOR MASTER **17.0 -> Master - 0.1** Steps to reproduce the bug: - Go to Time Off -> Allocation -> Create - put a name - change the allocation type -> the name is reset Expected result: The name should not be reset to the old value Reason: The displayed name is relies on the private_name field to get its value. And thus every time an onchange is triggered the name is reset. Fix: Put the private_name field in the form view instead of the name field. Because we rely
Original PR description
### NOT FOR MASTER **17.0 -> Master - 0.1** Steps to reproduce the bug: - Go to Time Off -> Allocation -> Create - put a name - change the allocation type -> the name is reset Expected result: The name should not be reset to the old value Reason: The displayed name is relies on the private_name field to get its value. And thus every time an onchange is triggered the name is reset. Fix: Put the private_name field in the form view instead of the name field. Because we rely on the onchange of name on the dashboard to task-3713656 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#153044
[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
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#180228 Forward-Port-Of: odoo/odoo#174178
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
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
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#180265-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
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
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#180362 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#180362 Forward-Port-Of: odoo/odoo#180316
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
Steps --- * create a set-up with 2 companies using different currencies. eg: * company 1: usd * company 2: eur * from the company 2: set a conversion rate from eur to usd in *Currencies* * from company 1: create a based on rules shipping method (with prices in usd) * from company 2: * create an SO for some products * add the shipping method * => the price in dollars is used unconverted as the price in eur Cause --- when we have a base_on_rule delivery without a speci
Original PR description
Steps --- * create a set-up with 2 companies using different currencies. eg: * company 1: usd * company 2: eur * from the company 2: set a conversion rate from eur to usd in *Currencies* * from company 1: create a based on rules shipping method (with prices in usd) * from company 2: * create an SO for some products * add the shipping method * => the price in dollars is used unconverted as the price in eur Cause --- when we have a base_on_rule delivery without a specified company, we convert prices as if the price was in the current company's currency. Fix --- Consider the price to be in the main company's currency instead opw-4105047 Forward-Port-Of: odoo/odoo#180227 Forward-Port-Of: odoo/odoo#177932
# Main changes: Always show the expiration date on the move lines of concerned products. # Before: Show a warning when the expiration date has been reached. # After: Show the expiration date of the product if it has one. Rather than showing an alert if the expiration date has been reached, set the text-danger bootstrap class on the expiration date. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#143323
Original PR description
# Main changes: Always show the expiration date on the move lines of concerned products. # Before: Show a warning when the expiration date has been reached. # After: Show the expiration date of the product if it has one. Rather than showing an alert if the expiration date has been reached, set the text-danger bootstrap class on the expiration date. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#143323
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
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
Steps --- 1. install `mrp,sales_management` 2. Create a manufacture-routed product P with a manufacturing BOM: * Operation OP1, duration = 1 hr * some component 3. Create a reording rule for P with a manufacturing route: * min qty = 0 * max qty = 0 4. Create an SO for 15 > Confirm * (A MO for 15 P should have been generated) 6. duplicate the SO > Confirm * (The **same** MO is now for 30 P) 7. duplicate the SO > Confirm => The MO is for 75 P instead of 45 Cause
Original PR description
Steps --- 1. install `mrp,sales_management` 2. Create a manufacture-routed product P with a manufacturing BOM: * Operation OP1, duration = 1 hr * some component 3. Create a reording rule for P with a…
Steps --- 1. install `mrp,sales_management` 2. Create a manufacture-routed product P with a manufacturing BOM: * Operation OP1, duration = 1 hr * some component 3. Create a reording rule for P with a manufacturing route: * min qty = 0 * max qty = 0 4. Create an SO for 15 > Confirm * (A MO for 15 P should have been generated) 6. duplicate the SO > Confirm * (The **same** MO is now for 30 P) 7. duplicate the SO > Confirm => The MO is for 75 P instead of 45 Cause --- When the reordering rule is triggered, we attempt create a procurement for the opposite of the forecast quantity of product P and add it to the MO. But the reordering rule's visibility days is 0 (default), so once the MO's expected finished date (now + qty * 1 hr) is tomorrow or more [1] we do not consider the quantity coming from the MO for the stock forecast. Therefore the procurement is for the sum of all the previous orders for P (ie 15 * 3 = 45), so the MO's quantity will be 30 + 45 = 75 instead of 30 + 15 = 45 [1] (cf commit 1) There is another bug this PR fixes where the date finished for MOs is not computed at creation time but only at write time, therefore, we need to be at least on the 3rd SO for the bug to appear. (The 2nd one writes to the MO) Fix --- When computing the quantity in progress for product P, take into account MOs such that `date_start <= end_of_orderpoint_forecast < date_finished` \+ [1] Do compute the finished date at creation when it isn't specified in the vals and do not specify it in the above flow. opw-4034475 Forward-Port-Of: odoo/odoo#173842
When parsing a claim status from the SII, the list of events in the response can either be a single event or a list of events. If a list was returned this would fail with a parsing error because the original implementation only expects a single event. That then led to the status getting repeatedly checked and logging "list indices must be integers or slices, not str" when done through a cron. This fix supports both the single and multiple event scenario. The l10n_cl_claim field is not display
Original PR description
When parsing a claim status from the SII, the list of events in the response can either be a single event or a list of events. If a list was returned this would fail with a parsing error because the…
When parsing a claim status from the SII, the list of events in the response can either be a single event or a list of events. If a list was returned this would fail with a parsing error because the original implementation only expects a single event. That then led to the status getting repeatedly checked and logging "list indices must be integers or slices, not str" when done through a cron. This fix supports both the single and multiple event scenario. The l10n_cl_claim field is not displayed anywhere by default and is only used to check if the claim status still needs to be logged in the chatter or not. Since multiple response codes are possible, in theory it should be a list instead of a single value, but that would be more appropriate for a change in master. A boolean flag would also suffice if the response code doesn't need to be displayed separately. We currently just set the last code that was returned. The responses observed in the customer database include the code NCA, which isn't expected by Odoo. This code was added as a valid one. opw-3920273 Forward-Port-Of: odoo/enterprise#70167 Forward-Port-Of: odoo/enterprise#66498
### NOT FOR MASTER **17.0 -> Master - 0.1** Steps to reproduce the bug: - Go to Time Off -> Allocation -> Create - put a name - change the allocation type -> the name is reset Expected result: The name should not be reset to the old value Reason: The displayed name is relies on the private_name field to get its value. And thus every time an onchange is triggered the name is reset. Fix: Put the private_name field in the form view instead of the name field. Because we rely
Original PR description
### NOT FOR MASTER **17.0 -> Master - 0.1** Steps to reproduce the bug: - Go to Time Off -> Allocation -> Create - put a name - change the allocation type -> the name is reset Expected result: The name should not be reset to the old value Reason: The displayed name is relies on the private_name field to get its value. And thus every time an onchange is triggered the name is reset. Fix: Put the private_name field in the form view instead of the name field. Because we rely on the onchange of name on the dashboard to task-3713656 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/enterprise#67931
Sequences of optional employer insurance payments should come before gross Forward-Port-Of: odoo/enterprise#70070
Original PR description
Sequences of optional employer insurance payments should come before gross Forward-Port-Of: odoo/enterprise#70070
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