Thursday, July 18, 2024
20 changes · saas-17.2
Miscellaneous changes
This homogenizes the address format we send for each location and adds the terms and conditions and delivery date. This makes the customer invoice PDF that Avatax generates more complete and less confusing for users and their customers. task-3894745 Forward-Port-Of: odoo/enterprise#66868
Original PR description
This homogenizes the address format we send for each location and adds the terms and conditions and delivery date. This makes the customer invoice PDF that Avatax generates more complete and less confusing for users and their customers. task-3894745 Forward-Port-Of: odoo/enterprise#66868
Steps to reproduce ================== - Install account_accountant,l10n_fr_invoice_addr,web_studio,website_sale - Go to invoices - Open studio ``` enterprise/web_studio/models/ir_ui_view.py:103 in _postprocess_access_rights 100 │ │ │ for node in tree.xpath('//*[@groups]'): 101 │ │ │ │ node_groups[node] = node.get('groups') ❱ 103 │ │ │ │ if not self.user_has_groups(node.get('groups')): odoo/odoo/models.py:1550 in user_has_groups ❱ 1550 │ │ │ if
Original PR description
Steps to reproduce ================== - Install account_accountant,l10n_fr_invoice_addr,web_studio,website_sale - Go to invoices - Open studio ``` enterprise/web_studio/models/ir_ui_view.py:103 in…
Steps to reproduce
==================
- Install account_accountant,l10n_fr_invoice_addr,web_studio,website_sale
- Go to invoices
- Open studio
```
enterprise/web_studio/models/ir_ui_view.py:103 in _postprocess_access_rights
100 │ │ │ for node in tree.xpath('//*[@groups]'):
101 │ │ │ │ node_groups[node] = node.get('groups')
❱ 103 │ │ │ │ if not self.user_has_groups(node.get('groups')):
odoo/odoo/models.py:1550 in user_has_groups
❱ 1550 │ │ │ if group_ext_id[0] == '!':
1551 │ │ │ │ not_has_groups.append(group_ext_id[1:])
IndexError: string index out of range
```
Cause of the issue
==================
The l10n_fr_invoice_addr sets an [empty group] attribute on a node. When opening studio, user_has_groups is called with the groups attribute value. In this case, it's an empty string and it fails.
Solution
========
Since an empty group is [allowed] by the ORM, we simply check that the value is not empty before calling user_has_groups
---
[empty group]: https://github.com/odoo/odoo/blob/00a78373f87c84dfa8ffa97ca255cf01368cd423/addons/l10n_fr_invoice_addr/models/account_move.py#L17
[allowed]: https://github.com/odoo/odoo/blob/a913272136182e6f4b1e28337686dd14616ea0ca/odoo/addons/base/tests/test_views.py#L2791
opw-4046078
Forward-Port-Of: odoo/enterprise#66682
Forward-Port-Of: odoo/enterprise#66595We get a singleton error in multicompany setup when opening the accounting dashboard Steps: - Have at least two companies, one with l10n_fr_reports installed - Select the two companies in the caompany selector - Go to accounting dashboard -> singleton error opw-4053554 Forward-Port-Of: odoo/enterprise#66790 Forward-Port-Of: odoo/enterprise#66757
Original PR description
We get a singleton error in multicompany setup when opening the accounting dashboard Steps: - Have at least two companies, one with l10n_fr_reports installed - Select the two companies in the caompany selector - Go to accounting dashboard -> singleton error opw-4053554 Forward-Port-Of: odoo/enterprise#66790 Forward-Port-Of: odoo/enterprise#66757
In [1], a limit was introduced to the amount of records that can be displayed at the same time in the shop floor app. However, it was not always very clear to the user that they may only be viewing a subset of the available records. It was also impossible to show any records beyond the first 40 that conform to the filter criteria. In this commit, we introduce a pager to resolve these issues. The pager will only be displayed when relevant (ie when not all available records are displayed). Usin
Original PR description
In [1], a limit was introduced to the amount of records that can be displayed at the same time in the shop floor app. However, it was not always very clear to the user that they may only be viewing a subset of the available records. It was also impossible to show any records beyond the first 40 that conform to the filter criteria. In this commit, we introduce a pager to resolve these issues. The pager will only be displayed when relevant (ie when not all available records are displayed). Using this new pager it is also possible for the user to dynamically increase or decrease the default limit of 40, which was not possible before. [1] https://github.com/odoo/enterprise/pull/64551 (and forward ports) Forward-Port-Of: odoo/enterprise#66740 Forward-Port-Of: odoo/enterprise#65995
**Steps to reproduce**: - Create an MO for Stool - In the shop floor, open the "assembly" step of the created WO **Currently**: scanning barcode for back/skip does not do anything. **After this commit**: scanning the barcode executes the expected command. task-4047193 Forward-Port-Of: odoo/enterprise#66617 Forward-Port-Of: odoo/enterprise#66579
Original PR description
**Steps to reproduce**: - Create an MO for Stool - In the shop floor, open the "assembly" step of the created WO **Currently**: scanning barcode for back/skip does not do anything. **After this commit**: scanning the barcode executes the expected command. task-4047193 Forward-Port-Of: odoo/enterprise#66617 Forward-Port-Of: odoo/enterprise#66579
Before this commit, in about 8% of the time for some test tours, some edition of the report was triggered before the OdooEditor had a chance to start, so the concerned step failed. After this commit, there is no such race condition, as we add OdooEditor's specific class to the step selectors. runbot-error-29949 (and all linked error) Forward-Port-Of: odoo/enterprise#66815
Original PR description
Before this commit, in about 8% of the time for some test tours, some edition of the report was triggered before the OdooEditor had a chance to start, so the concerned step failed. After this commit, there is no such race condition, as we add OdooEditor's specific class to the step selectors. runbot-error-29949 (and all linked error) Forward-Port-Of: odoo/enterprise#66815
- Go to Dashboards > Configuration > Dashboards - Open the Human Resources section - Open the payroll dashboard - Open the Period filter configuration panel - the field matching period offset of pivot 3 and 4 are inverted. In the Data sheet, the column named "current" (pivot 3) is filtering on previous, and the one called "previous" (pivot 4) is not filtering on anything. Note that this fix is only active on new databases or if the dashboard is deleted then the module "spreadsheet_das
Original PR description
- Go to Dashboards > Configuration > Dashboards - Open the Human Resources section - Open the payroll dashboard - Open the Period filter configuration panel - the field matching period offset of pivot 3 and 4 are inverted. In the Data sheet, the column named "current" (pivot 3) is filtering on previous, and the one called "previous" (pivot 4) is not filtering on anything. Note that this fix is only active on new databases or if the dashboard is deleted then the module "spreadsheet_dashboard_hr_payroll" is updated. Task: 4056412 Forward-Port-Of: odoo/enterprise#66760
The current code is taking the residual amount instead of the statement line amount. When doing a reco model 'percentage_st_line' on 1000: Line 1 - 74% Line 2 - 24% Line 3 - 2% We get: 1000 * 0.74 = 740 (1000 - 740) * 0.24 = 62.4 (1000 - 740 - 62.4) * 0.02 = 3.95 Instead of: 1000 * 0.74 = 740 1000 * 0.24 = 240 1000 * 0.02 = 20 task_id: 3940370 Forward-Port-Of: odoo/enterprise#66366 Forward-Port-Of: odoo/enterprise#62884
Original PR description
The current code is taking the residual amount instead of the statement line amount. When doing a reco model 'percentage_st_line' on 1000: Line 1 - 74% Line 2 - 24% Line 3 - 2% We get: 1000 * 0.74 = 740 (1000 - 740) * 0.24 = 62.4 (1000 - 740 - 62.4) * 0.02 = 3.95 Instead of: 1000 * 0.74 = 740 1000 * 0.24 = 240 1000 * 0.02 = 20 task_id: 3940370 Forward-Port-Of: odoo/enterprise#66366 Forward-Port-Of: odoo/enterprise#62884
Fixes a commit e3d7b06 Should look at the `self.order_id` creator instead of `self`. opw-3933511 Forward-Port-Of: odoo/enterprise#66748
Original PR description
Fixes a commit e3d7b06 Should look at the `self.order_id` creator instead of `self`. opw-3933511 Forward-Port-Of: odoo/enterprise#66748
When printing an invoice including a fixed tax, we don't want the base amount to be displayed after said tax, since the fixed computation doesn't take into account said amount. Added a check to differentiate fixed taxes from other and adapt display accordingly. Since the function modified has been updated in 17.2, another PR will be necessary. See https://github.com/odoo/odoo/pull/168634 task-3964942 Forward-Port-Of: odoo/odoo#170741 Forward-Port-Of: odoo/odoo#168638
Original PR description
When printing an invoice including a fixed tax, we don't want the base amount to be displayed after said tax, since the fixed computation doesn't take into account said amount. Added a check to differentiate fixed taxes from other and adapt display accordingly. Since the function modified has been updated in 17.2, another PR will be necessary. See https://github.com/odoo/odoo/pull/168634 task-3964942 Forward-Port-Of: odoo/odoo#170741 Forward-Port-Of: odoo/odoo#168638
### Issue: The `test_backorder_batching_2` is failling on the nightly community build of 17.0 because the order of the final records is not the same. ### Fix: The problematic assert on the product identity was not important and has been removed. Follow up of commit 386b32e --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171623 Forward-Port-Of: odoo/odoo#171547
Original PR description
### Issue: The `test_backorder_batching_2` is failling on the nightly community build of 17.0 because the order of the final records is not the same. ### Fix: The problematic assert on the product identity was not important and has been removed. Follow up of commit 386b32e --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171623 Forward-Port-Of: odoo/odoo#171547
16.0 update changes the back-end design interpretation, leading to a width display issue with mailing_list_view_form_simplified. I remove some useless <group> tags in order to fix the width of the fields in the form task-4042993 Forward-Port-Of: odoo/odoo#173348
Original PR description
16.0 update changes the back-end design interpretation, leading to a width display issue with mailing_list_view_form_simplified. I remove some useless <group> tags in order to fix the width of the fields in the form task-4042993 Forward-Port-Of: odoo/odoo#173348
Issue ---- Demo data company data contains a phone number of a real person, who receives phone calls from people asking to buy stuff :) note: extension of 05f344b6a0b4cd71b4d0f0abcb4825856fdf4edc after finding the number is in other views as well. Steps ---- Number is available on website footer. Cause ---- A real number is used in demo data. opw-3853066 Forward-Port-Of: odoo/odoo#173235 Forward-Port-Of: odoo/odoo#171192
Original PR description
Issue ---- Demo data company data contains a phone number of a real person, who receives phone calls from people asking to buy stuff :) note: extension of 05f344b6a0b4cd71b4d0f0abcb4825856fdf4edc after finding the number is in other views as well. Steps ---- Number is available on website footer. Cause ---- A real number is used in demo data. opw-3853066 Forward-Port-Of: odoo/odoo#173235 Forward-Port-Of: odoo/odoo#171192
Steps to reproduce: - Install planning and switch to calendar view - try resizing the pill that is already resizable (pills that span for multiple days) Issue: pill resizing is not working as expected. Cause: the end date wasn't being calculated correctly for this. Fix: after this commit, the end date is calculated correctly. task-3326281 Forward-Port-Of: odoo/odoo#139893
Original PR description
Steps to reproduce: - Install planning and switch to calendar view - try resizing the pill that is already resizable (pills that span for multiple days) Issue: pill resizing is not working as expected. Cause: the end date wasn't being calculated correctly for this. Fix: after this commit, the end date is calculated correctly. task-3326281 Forward-Port-Of: odoo/odoo#139893
Currently if there are no IR rules preventing a low right user to write on a record, no error notification will appear when the user tries to add a property field to the child model since no error is raised in the checkDefinitionWriteAccess method. If this user does not have access rights on the model of the parent record an unwanted traceback will appear since nothing prevents him from trying to add a property field to the model Here we're using the canChangeDefinition which is loaded
Original PR description
Currently if there are no IR rules preventing a low right user to write on a record, no error notification will appear when the user tries to add a property field to the child model since no error is raised in the checkDefinitionWriteAccess method. If this user does not have access rights on the model of the parent record an unwanted traceback will appear since nothing prevents him from trying to add a property field to the model Here we're using the canChangeDefinition which is loaded by checkingAccessRight on the user at the start of the component startup Task-3815748 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#158165
This commit improves the performance of the related_models.js file by using Map instead of Object and Array to keep ordering of records. This commit also improves the performance of the product_screen.js file by filtering product after slicing the product list. Forward-Port-Of: odoo/odoo#172303
Original PR description
This commit improves the performance of the related_models.js file by using Map instead of Object and Array to keep ordering of records. This commit also improves the performance of the product_screen.js file by filtering product after slicing the product list. Forward-Port-Of: odoo/odoo#172303
Currently, invoices cannot be sent to TicketBAI if the invoice sequence does not end with `/<sequence_number>`. ### Steps to Reproduce * Install `l10n_es_edi_tbai`. * Ensure your invoice has a sequence that does not contain a `/`. * Attempt to send the invoice through TicketBAI. A traceback error occurs: `ValueError: not enough values to unpack (expected 2, got 1)` ### Cause When parsing invoice sequence numbers for TicketBAI, the system splits the sequence number by the rightm
Original PR description
Currently, invoices cannot be sent to TicketBAI if the invoice sequence does not end with `/<sequence_number>`. ### Steps to Reproduce * Install `l10n_es_edi_tbai`. * Ensure your invoice has a sequence that does not contain a `/`. * Attempt to send the invoice through TicketBAI. A traceback error occurs: `ValueError: not enough values to unpack (expected 2, got 1)` ### Cause When parsing invoice sequence numbers for TicketBAI, the system splits the sequence number by the rightmost `/`. This fails when the sequence number does not contain a `/`. opw-3959956 Forward-Port-Of: odoo/odoo#168654
Before this commit, translations in data modules were not taken into account as there were not extracted nor loaded. This commit adds the possibility to add a i18n folder that contains the translations for the imported module task-3734243 To-do in master: - Merge `get_po_paths` and `get_po_paths_env` - Add an argument `env` to `_load_module_terms` so that `_import_module` (in base_import_module) calls `_load_module_terms` directly. Forward-Port-Of: odoo/odoo#165449
Original PR description
Before this commit, translations in data modules were not taken into account as there were not extracted nor loaded. This commit adds the possibility to add a i18n folder that contains the translations for the imported module task-3734243 To-do in master: - Merge `get_po_paths` and `get_po_paths_env` - Add an argument `env` to `_load_module_terms` so that `_import_module` (in base_import_module) calls `_load_module_terms` directly. Forward-Port-Of: odoo/odoo#165449
Current behavior: --- On a mobile phone, using Chrome, when scanning a barcode that begins with the FNC1 character, ']C1' will be added to the final code. Expected behavior: --- ']C1' should be removed from the final code Steps to reproduce: --- 1. On a mobile phone, with chrome 2. Go to the barcode module 3. Scan a barcode starting with FNC1 4. Code will begin with ]C1 Cause of the issue: --- https://github.com/odoo/odoo/blob/321d16950ee9dcf4d722ecbfe0a49ca8f7d855a6/addons
Original PR description
Current behavior: --- On a mobile phone, using Chrome, when scanning a barcode that begins with the FNC1 character, ']C1' will be added to the final code. Expected behavior: --- ']C1' should be removed from the final code Steps to reproduce: --- 1. On a mobile phone, with chrome 2. Go to the barcode module 3. Scan a barcode starting with FNC1 4. Code will begin with ]C1 Cause of the issue: --- https://github.com/odoo/odoo/blob/321d16950ee9dcf4d722ecbfe0a49ca8f7d855a6/addons/web/static/lib/zxing-library/zxing-library.js#L6928 zxing-library is adding ']C1' to barcodes starting with a FNC1 character opw-3853913 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#163404
Current behavior: In hr_expenses, list and kanban views have different buttons being shown: list view displays 'New', 'Scan' and 'Create Report', while kanban view displays only 'New' and 'Upload'. In mobile, list view shows only 'New', and kanban shows 'Scan' and 'New'. Expected behavior: 'Create Report' button should be displayed in both list and kanban view, in mobile or desktop. In mobile list view, 'Scan' should also be displayed. Cause of the issue: The static view for list includ
Original PR description
Current behavior: In hr_expenses, list and kanban views have different buttons being shown: list view displays 'New', 'Scan' and 'Create Report', while kanban view displays only 'New' and 'Upload'.…
Current behavior: In hr_expenses, list and kanban views have different buttons being shown: list view displays 'New', 'Scan' and 'Create Report', while kanban view displays only 'New' and 'Upload'. In mobile, list view shows only 'New', and kanban shows 'Scan' and 'New'. Expected behavior: 'Create Report' button should be displayed in both list and kanban view, in mobile or desktop. In mobile list view, 'Scan' should also be displayed. Cause of the issue: The static view for list includes only button 'Scan' with display utility classes that hide the button in mobile. Similarly for 'Create Report' button in list. In Kanban, the button 'Create Report' has not been added. Fix: In the list view, 'Upload' button was added for desktop view, and the classes of the 'Scan' button were changed to display it in mobile view. The display utility classes for 'Create Report' were removed, so the button is displayed in mobile. In kanban view, button 'Create Report' was added. The main div of web.KanbanView.Buttons is replaced to ensure that the mobile view buttons are also displayed correctly. Without replacing it, the buttons 'New' and 'Scan' do not match the height of 'Create Report'. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#172442 Forward-Port-Of: odoo/odoo#169396