Friday, March 24, 2023
53 changes · master
Enhancements to existing features
The Peruvian localization now includes official bank data sourced from the Central Reserve Bank of Peru. This helps businesses using Odoo in Peru keep banking information more complete and consistent for local operations.
Original PR description
Provides data on Peruvian Banks extracted from the Central Reserve Bank of Peru https://www.bcrp.gob.pe/sitios-de-interes/entidades-financieras.html Enterprise PR: https://github.com/odoo/enterprise/pull/38293 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update removes unnecessary spaces before punctuation marks such as colons, semicolons, question marks, and exclamation marks across many Odoo screens and messages. It improves the polish and consistency of user-facing text, helping the product look more professional in English and most other languages.
Original PR description
According to Wiktionary, French spacing is "the archaic practice (though still current in French) of inserting a space around colons, semicolons, question marks, and exclamation marks". This is not standard practice in English and most languages of the world. The purpose of this commit is to start purging the code from this typo, as it may reflect poorly on the software for some people. Enterprise: https://github.com/odoo/enterprise/pull/38542
Spanish accounting report definitions have been rewritten in English, with Spanish translations maintained separately. This makes the reports easier to maintain and supports future translations without changing the underlying report setup.
Original PR description
Spanish accounting reports were written in Spanish. We want the code to be fully written in English then translated to necessary languages. Task: 3235816 Community: https://github.com/odoo/odoo/pull/115968
This update removes extra spaces before punctuation marks such as colons, semicolons, question marks, and exclamation marks across multiple Odoo Enterprise areas. The change improves the professionalism and consistency of English-language text without altering business functionality.
Original PR description
According to Wiktionary, French spacing is "the archaic practice (though still current in French) of inserting a space around colons, semicolons, question marks, and exclamation marks". This is not standard practice in English and most languages of the world. The purpose of this commit is to start purging the code from this typo, as it may reflect poorly on the software for some people. Community: https://github.com/odoo/odoo/pull/116167
The Peruvian electronic invoicing module now relies on official bank reference data provided through the main Peru localization. This helps keep Peruvian bank information consistent and easier to maintain for local accounting and invoicing workflows.
Original PR description
Provides data on Peruvian Banks extracted from the Central Reserve Bank of Peru https://www.bcrp.gob.pe/sitios-de-interes/entidades-financieras.html Odoo PR: odoo/odoo#95870
Resolved issues and error corrections
The mobile main flow tour now checks for small screen size instead of requiring a specific mobile device identity. This makes automated testing more reliable and removes unnecessary browser configuration for custom user agents.
Original PR description
Main Flow Tour Mobile shouldn't require a specific `user_agent` as it targets a small screen and not a mobile platform (iOS, Android...). Actually, during refactoring of the tours (odoo/odoo@3a798039d6f200f8e28448ddb6a2d3c46654a203), a confusion was made between the legacy `isMobile`, which represents a small screen (cf. `env.isSmall`) and `isMobileOS`, which targets "mobile" platforms (ie. iOS, Android...) independently of the screen size. This commit applies the proper condition (isSmall) for the tours management and removes the useless `user_agent` property. It also removes the logic added to support custom user_agent in the Chrome automation for testing. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Code cleanup and technical improvements
The point of sale barcode reader has been reorganized into a shared service used by related POS features. This is an internal cleanup that should make barcode-related behavior easier to maintain without changing day-to-day cashier workflows.
Miscellaneous changes
Forward-Port-Of: odoo/odoo#115546
Original PR description
Forward-Port-Of: odoo/odoo#115546
When a shipping method is added to a confirmed sales order, the related undelivered delivery will now receive the correct carrier information. This helps keep delivery records accurate and avoids manual corrections for orders where shipping details are added after confirmation.
Original PR description
Before this commit ================== when SO is confirmed and Delivery is created then add the shipping method in SO, in this case, the shipping carrier is not set in the existing undelivered delivery of that SO. After this commit ================= So in this commit, we set the shipping carrier for that delivery. TaskId: 2946360
This fixes an issue where mail notification processing could stop early when one channel in a batch was not recognized. Other notifications in the same batch will now continue to be handled, improving reliability of message read-status updates.
Original PR description
Before this commit, the `mail.channel/seen` notification handler would have returned if the channel was unknown. This is incorrect since it would prevent other notifications from the same batch from being processed. This commit fixes the issue.
Fixed an issue where Knowledge articles with cover images could fail to load on the public-facing frontend. The update uses the correct cover image setting and adds test coverage to help prevent the problem from returning.
Original PR description
Purpose: ======== Replace the nonexistent `article.cover_height` field by the correct `article.cover_image_position` field in the frontend view. This commit also adds a cover to an article in the frontend tour to make sure that covers do not make knowledge crash in frontend. Task-3221175
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115966
Original PR description
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115966
**Current behavior before PR:** popover collapsed when there is fewer fields available. **Desired behavior after PR is merged:** Now, the popover will not be collapsed when there are fewer fields available. Task-3072813 Forward-Port-Of: odoo/odoo#114530
Original PR description
**Current behavior before PR:** popover collapsed when there is fewer fields available. **Desired behavior after PR is merged:** Now, the popover will not be collapsed when there are fewer fields available. Task-3072813 Forward-Port-Of: odoo/odoo#114530
In tests, if we need to interact with dropdowns, we should patch setTimout so that we don't have to wait x ms for the dropdown to open. 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#116280
Original PR description
In tests, if we need to interact with dropdowns, we should patch setTimout so that we don't have to wait x ms for the dropdown to open. 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#116280
Steps to reproduce ================== - Go to a form view with a binary field, or add one with studio - Upload a file a.txt to a record - Upload a file b.txt to another record - Switch between both records with the pager - The filename is not updated opw-3208810 Forward-Port-Of: odoo/odoo#116241 Forward-Port-Of: odoo/odoo#116179
Original PR description
Steps to reproduce ================== - Go to a form view with a binary field, or add one with studio - Upload a file a.txt to a record - Upload a file b.txt to another record - Switch between both records with the pager - The filename is not updated opw-3208810 Forward-Port-Of: odoo/odoo#116241 Forward-Port-Of: odoo/odoo#116179
## Current behaviour When checking on the activities that are "Late/Today/Future", the resulting search view doesn't apply any filter. ## Expected behaviour If you click on "Late" activities for Tasks, then you should see only the "Late" activities, not all of them. ## Steps to reproduce - Install Project - Create a project and 3 tasks for that project - On each task, put an activity that is "Late"/"Today"/"Future" respectively (1 activity per task) - Click on the activity widget (to
Original PR description
## Current behaviour When checking on the activities that are "Late/Today/Future", the resulting search view doesn't apply any filter. ## Expected behaviour If you click on "Late" activities for…
## Current behaviour When checking on the activities that are "Late/Today/Future", the resulting search view doesn't apply any filter. ## Expected behaviour If you click on "Late" activities for Tasks, then you should see only the "Late" activities, not all of them. ## Steps to reproduce - Install Project - Create a project and 3 tasks for that project - On each task, put an activity that is "Late"/"Today"/"Future" respectively (1 activity per task) - Click on the activity widget (top-right in the header) > Tasks > Today - All tasks are shown, not only those for "Today" ## Reason for the problem Since the view refactoring from b77f60b155bf97a115aa209847dc791677b2e924 , search filters follow an hierarchy of inheritance to reduce code duplication. The issue is that it's "delegation" inheritance (so the childs have a mode of type "primary") but all their priorities are the sames, so the algorithm for view matching (refer to documentation) matches the parent view, that doesn't contains the necessary filters for the activities, which are defined a few level lower in the inheritance. ## Fix Add descending priority in the inheritance chain so we match the lowest child when web-client requests the search view. ## Affected versions - saas-16.1 - saas-16.2 - master --- opw-3234525 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116188
This issue was caught in sentry. When we try to create or update an invoice by uploading an `.xlsx` attachment, it raises an Error as it will go to convert it into XML tree because the concerned LOC will check `xml` in `mimetype` of attachment which is `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`. ``` XMLSyntaxError: Start tag expected, '<' not found, line 1, column 1 (<string>, line 1) File "addons/account_edi/models/account_edi_format.py", line 207, in _decode_xm
Original PR description
This issue was caught in sentry. When we try to create or update an invoice by uploading an `.xlsx` attachment, it raises an Error as it will go to convert it into XML tree because the concerned LOC…
This issue was caught in sentry.
When we try to create or update an invoice by uploading an `.xlsx` attachment, it raises an Error as it will go to convert it into XML tree because the concerned LOC will check `xml` in `mimetype` of attachment which is `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`.
```
XMLSyntaxError: Start tag expected, '<' not found, line 1, column 1 (<string>, line 1)
File "addons/account_edi/models/account_edi_format.py", line 207, in _decode_xml
xml_tree = etree.fromstring(content)
File "src/lxml/etree.pyx", line 3252, in lxml.etree.fromstring
File "src/lxml/parser.pxi", line 1913, in lxml.etree._parseMemoryDocument
File "src/lxml/parser.pxi", line 1800, in lxml.etree._parseDoc
File "src/lxml/parser.pxi", line 1141, in lxml.etree._BaseParser._parseDoc
File "src/lxml/parser.pxi", line 615, in lxml.etree._ParserContext._handleParseResultDoc
File "src/lxml/parser.pxi", line 725, in lxml.etree._handleParseResult
File "src/lxml/parser.pxi", line 654, in lxml.etree._raiseParseError
```
sentry-3929855076
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#116231
Forward-Port-Of: odoo/odoo#115653Reproduce: * Create a journal entry * Add a new line * Select account * Select partner The selected account is annoyingly changed/removed. This should only be done for invoice-like documents. The account is selected manually for miscellaneous operations. Forward-Port-Of: odoo/odoo#114618
Original PR description
Reproduce: * Create a journal entry * Add a new line * Select account * Select partner The selected account is annoyingly changed/removed. This should only be done for invoice-like documents. The account is selected manually for miscellaneous operations. Forward-Port-Of: odoo/odoo#114618
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116221
Original PR description
--- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116221
Previously, the productScreen component used `numberBuffer.use()`, this function has been removed in this PR [[REF] point_of_sale, pos_*: remove usage of useListener](https://github.com/odoo/odoo/pull/112219) at line [56](https://github.com/odoo/odoo/pull/112219/files#diff-718fd151daf998076bbb1c05266a3d0e45276dd33fc7eb72be7d067d630eee3dL56) This removal causes a crash when in mobile mode. This is because the productScreen component tries to reset the buffer when it is mounted with `this.num
Original PR description
Previously, the productScreen component used `numberBuffer.use()`, this function has been removed in this PR [[REF] point_of_sale, pos_*: remove usage of useListener](https://github.com/odoo/odoo/pull/112219) at line [56](https://github.com/odoo/odoo/pull/112219/files#diff-718fd151daf998076bbb1c05266a3d0e45276dd33fc7eb72be7d067d630eee3dL56) This removal causes a crash when in mobile mode. This is because the productScreen component tries to reset the buffer when it is mounted with `this.numberBuffer.reset()`. The problem is that in mobile mode no component initializes the buffer in productScreen, which causes an error. Now a modification to the number_buffer service has been made, it prevents the state buffer from being reset if it does not exist. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#114299
Forward-Port-Of: odoo/odoo#116305
Original PR description
Forward-Port-Of: odoo/odoo#116305
Partner_to recipients of mail template are not displayed in the template preview. This fix solves the problem. To reproduce the problem (example): - install the project app with demo data - activate the debug mode - go to Settings -> Technical -> Templates - choose the template "Task: Rating Request" - in email configuration, "To (partners)" is set to ${object.rating_get_partner_id().id} - click on preview - choose the task: "Room 2: Decoration" - the "Recipients" field value should b
Original PR description
Partner_to recipients of mail template are not displayed in the template preview. This fix solves the problem. To reproduce the problem (example): - install the project app with demo data - activate…
Partner_to recipients of mail template are not displayed in the template preview. This fix solves the problem.
To reproduce the problem (example):
- install the project app with demo data
- activate the debug mode
- go to Settings -> Technical -> Templates
- choose the template "Task: Rating Request"
- in email configuration, "To (partners)" is set to ${object.rating_get_partner_id().id}
- click on preview
- choose the task: "Room 2: Decoration"
- the "Recipients" field value should be "YourCompany, Joel Willis" but this field remains empty without the fix
Technical note: partner_to of the template was not rendered which was making generate_recipients returning incorrect values for partner_ids.
Task-3196081
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#115812
Forward-Port-Of: odoo/odoo#113341Before: When taking a SO from the Sales app in the POS, there is no "Down payment limit". There is either no way to check what has still to be paid. So the POS user can charge a customer several times for the same down payment because he cannot see if it has already been paid. After: When you click on the Quotation/Order list the amount left to pay is displayed. When a down payment is chosen and a percentage is entered that is too high and represents more than the remaining amount to be
Original PR description
Before: When taking a SO from the Sales app in the POS, there is no "Down payment limit". There is either no way to check what has still to be paid. So the POS user can charge a customer several times for the same down payment because he cannot see if it has already been paid. After: When you click on the Quotation/Order list the amount left to pay is displayed. When a down payment is chosen and a percentage is entered that is too high and represents more than the remaining amount to be paid, a warning appears and warns that the orderline will be adjusted to the remaining price. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116049 Forward-Port-Of: odoo/odoo#113598
Before this commit, we could not change the currency on invoice if related journal has a default currency set. opw-3226228 Forward-Port-Of: odoo/odoo#116206
Original PR description
Before this commit, we could not change the currency on invoice if related journal has a default currency set. opw-3226228 Forward-Port-Of: odoo/odoo#116206
Create a Credit Note, save and confirm Go to Reporting>Invoice Analysis Switch to Pivot view, add mesures ntaxed Total and Total, expand rows by Move. The credit note untaxed total is correctly reported as negative, total is reported as positive opw-3223043 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-
Original PR description
Create a Credit Note, save and confirm Go to Reporting>Invoice Analysis Switch to Pivot view, add mesures ntaxed Total and Total, expand rows by Move. The credit note untaxed total is correctly reported as negative, total is reported as positive opw-3223043 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#116314
If the SO partner changes, we shouldn't use the pricelist id stored on the session, only the new partner pricelist. opw-3138262 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115029
Original PR description
If the SO partner changes, we shouldn't use the pricelist id stored on the session, only the new partner pricelist. opw-3138262 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115029
**Current behavior before PR:** Applying color on an empty selection generates traceback. **Desired behavior after PR is merged:** Now, able to apply color to an empty selection. Task-3089214 Forward-Port-Of: odoo/odoo#115996 Forward-Port-Of: odoo/odoo#110842
Original PR description
**Current behavior before PR:** Applying color on an empty selection generates traceback. **Desired behavior after PR is merged:** Now, able to apply color to an empty selection. Task-3089214 Forward-Port-Of: odoo/odoo#115996 Forward-Port-Of: odoo/odoo#110842
Before this commit, the field account was readonly on the expense sheet and the accountants have to go thourgh each expenses to change the account. After, we allow changing the account on the expense sheet directly. task-id: 3244925 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116297
Original PR description
Before this commit, the field account was readonly on the expense sheet and the accountants have to go thourgh each expenses to change the account. After, we allow changing the account on the expense sheet directly. task-id: 3244925 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116297
In large databases with > 2M stock_move_lines, installing the product_expiry module can raise a MemoryError because the field_cache is overfilled by the computation of the expiration_date computed stored field. Adding an `_auto_init` for this field prevents such errors from being raised by creating the column manually. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115206
Original PR description
In large databases with > 2M stock_move_lines, installing the product_expiry module can raise a MemoryError because the field_cache is overfilled by the computation of the expiration_date computed stored field. Adding an `_auto_init` for this field prevents such errors from being raised by creating the column manually. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115206
In https://github.com/odoo/odoo/pull/105730, we deleted `_compute_allocated_hours` method, but it is still referenced in the description of field `allocated_hours`. In this commit, we erase this reference. And because it is not compute anymore, no need to specify `store` and `readonly`. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116356
Original PR description
In https://github.com/odoo/odoo/pull/105730, we deleted `_compute_allocated_hours` method, but it is still referenced in the description of field `allocated_hours`. In this commit, we erase this reference. And because it is not compute anymore, no need to specify `store` and `readonly`. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116356
Before this commit, the discount name in the paid orders was different from the one displayed when creating the order. This was due to the fact that the `full_product_name` field was not being sent to the point of sale, so the discount product name was being used instead. This commit fixes the issue by ensuring that the `full_product_name` field is sent to the point of sale, which allows for the correct discount name to be displayed in the order menu. opw-3213225 --- I confirm I have s
Original PR description
Before this commit, the discount name in the paid orders was different from the one displayed when creating the order. This was due to the fact that the `full_product_name` field was not being sent to the point of sale, so the discount product name was being used instead. This commit fixes the issue by ensuring that the `full_product_name` field is sent to the point of sale, which allows for the correct discount name to be displayed in the order menu. opw-3213225 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#115925 Forward-Port-Of: odoo/odoo#115392
The tour tooltip breaks the order of the dropdown menu, rendering it under other elements. Steps to reproduce: 1. Install Sales 2. Start tour `sale_quote_tour` 3. Add a customer to the form 4. Click on "Add a product" 5. Open the dropdown selection of the "product" field 6. The 'Terms and conditions...' placeholder is above the dropdown Solution: Add a z-index on list_renderer with a tooltip_parent Problem: The tooltip adds class `.o_tooltip_parent` on .o_list_renderer [^1]. `.o
Original PR description
The tour tooltip breaks the order of the dropdown menu, rendering it under other elements. Steps to reproduce: 1. Install Sales 2. Start tour `sale_quote_tour` 3. Add a customer to the form 4. Click on "Add a product" 5. Open the dropdown selection of the "product" field 6. The 'Terms and conditions...' placeholder is above the dropdown Solution: Add a z-index on list_renderer with a tooltip_parent Problem: The tooltip adds class `.o_tooltip_parent` on .o_list_renderer [^1]. `.o_tooltip_parent` has the CSS rule `opacity: 0.999 !important`[^2] which creates a staking context. Because list_renderer doesn't have a z-index, it is placed under the other elements. [^1]: https://github.com/odoo/odoo/blob/e6fc7453d2849edaedcbcf823e3fbae3d3d9984f/addons/web_tour/static/src/js/tip.js#L286 [^2]: https://github.com/odoo/odoo/blob/e6fc7453d2849edaedcbcf823e3fbae3d3d9984f/addons/web_tour/static/src/scss/tip.scss#L35-L50 opw-3148770 Forward-Port-Of: odoo/odoo#116378
To reproduce the issue: 1. In Settings, enable "Multi-Step Routes" 2. Create a second warehouse WH02 - Let WH01 be the existing one 3. Create two storable products P_compo, P_finished 4. Create a BoM: - Product: P_finished - Components: 1 x P_compo - Operation Type: "WH02: Manufacturing" 5. Create a MO: - Product: P_finished Error: Once the product is set, nothing defines the BoM (and therefore the components, picking type, and so on) When opening the MO form, the
Original PR description
To reproduce the issue: 1. In Settings, enable "Multi-Step Routes" 2. Create a second warehouse WH02 - Let WH01 be the existing one 3. Create two storable products P_compo, P_finished 4. Create a BoM: - Product: P_finished - Components: 1 x P_compo - Operation Type: "WH02: Manufacturing" 5. Create a MO: - Product: P_finished Error: Once the product is set, nothing defines the BoM (and therefore the components, picking type, and so on) When opening the MO form, the picking type is directly defined with "WH01: Manufacturing". Therefore, when looking for a BoM, we use that picking type as criteria -> we will not find the BoM of step 4 Notes about the fix: - Small behaviour change: once the picking type is set, it does not change automaticaly (whatever the BoM is) OPW-3122384 Forward-Port-Of: odoo/odoo#115985 Forward-Port-Of: odoo/odoo#114816
After trying paying for a digital product and trying to download it from the customer portal a server interal error occurred. After this fix it will no longer be the case. opw - 3233478 opw-3216900 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116017
Original PR description
After trying paying for a digital product and trying to download it from the customer portal a server interal error occurred. After this fix it will no longer be the case. opw - 3233478 opw-3216900 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116017
Before this commit, the sub-menus that appear when the mouse hovers them were not displayed correctly. The Bootstrap/Popper code which is in charge of positioning the sub-menu could not work because the dropdowns were opened manually (which is not recommended) and so, the `show.bs.dropdown` event was never triggered which prevented Bootstrap/Popper from aligning the sub-menu items correctly. Steps to reproduce the bug: - Have a long sub-menu in the last position of the navbar. - In edi
Original PR description
Before this commit, the sub-menus that appear when the mouse hovers them were not displayed correctly. The Bootstrap/Popper code which is in charge of positioning the sub-menu could not work because the dropdowns were opened manually (which is not recommended) and so, the `show.bs.dropdown` event was never triggered which prevented Bootstrap/Popper from aligning the sub-menu items correctly. Steps to reproduce the bug: - Have a long sub-menu in the last position of the navbar. - In edit mode align the navbar elements to the right. - Enable the option to have the sub-menus displayed at hover. - Save the page. => When hovering the sub-menu, it opens on the right and overflows the page while there is enough space on the left. task-2904507 Forward-Port-Of: odoo/odoo#116248 Forward-Port-Of: odoo/odoo#115153
in the commit 763fbb1c of #101115 an assert is added for translated sized char fields It is too strict for some legacy customized fields, we decide to remove it 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#116370
Original PR description
in the commit 763fbb1c of #101115 an assert is added for translated sized char fields It is too strict for some legacy customized fields, we decide to remove it 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#116370
**Current behavior before PR:** When we select text and take the selection to the hex input box and then try again to add a solid color, it gives us a traceback. **Desired behavior after PR is merged:** Now it did not give traceback. Task-2965091 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116286 Forward-Port-Of: odoo/odoo#114281
Original PR description
**Current behavior before PR:** When we select text and take the selection to the hex input box and then try again to add a solid color, it gives us a traceback. **Desired behavior after PR is merged:** Now it did not give traceback. Task-2965091 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116286 Forward-Port-Of: odoo/odoo#114281
When printing the label of a lot, the datamatrix may overlap the product/lot name and will overlap the 'best before' date. To reproduce the issue: 1. In Settings: - Barcode Nomenclature: GS1 - Enable "Print GS1 barcodes for lots [...]" 2. Create a product P: - Name: a long name - Type: Storable - Barcode: 1111111111113 - Tracking: USN - Expiration Date: True - Dates > Expiration Date: 1 days 3. Process a receipt with 1 x P - The serial number should be
Original PR description
When printing the label of a lot, the datamatrix may overlap the product/lot name and will overlap the 'best before' date. To reproduce the issue: 1. In Settings: - Barcode Nomenclature: GS1 - Enable…
When printing the label of a lot, the datamatrix may overlap the product/lot name and will overlap the 'best before' date. To reproduce the issue: 1. In Settings: - Barcode Nomenclature: GS1 - Enable "Print GS1 barcodes for lots [...]" 2. Create a product P: - Name: a long name - Type: Storable - Barcode: 1111111111113 - Tracking: USN - Expiration Date: True - Dates > Expiration Date: 1 days 3. Process a receipt with 1 x P - The serial number should be long 4. Print Labels - To Print: Lot/SN Labels - (Confirm) - Format: 4 x 12 Error: the datamatrix overlaps the product name, the serial number, and the 'best before' date For the product/lot names, we can only improve the situation. If the user define a too long name, the issue will still happen and nothing can be done For the dates, we can shorten the labels. That way, the dates will always be correctly displayed OPW-3193836 Forward-Port-Of: odoo/odoo#115753 Forward-Port-Of: odoo/odoo#114196
Current behavior: If set an owner on a product and make a pos order with this product then refund this order. The owner would be lost on the refund. Steps to reproduce: - Activate the consignment feature - Create a product, and add some stock with an owner (e.g. "John Doe") - Create a pos order with this product - Refund the pos order - Go to the stock picking of the refund, the owner is not set on the move lines. opw-3146749 --- I confirm I have signed the CLA and read the PR guid
Original PR description
Current behavior: If set an owner on a product and make a pos order with this product then refund this order. The owner would be lost on the refund. Steps to reproduce: - Activate the consignment feature - Create a product, and add some stock with an owner (e.g. "John Doe") - Create a pos order with this product - Refund the pos order - Go to the stock picking of the refund, the owner is not set on the move lines. opw-3146749 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116054 Forward-Port-Of: odoo/odoo#115042
To reproduce the issue: 1. Go to Settings > Website 2. Activate "Automatically send abandoned checkout emails" 3. Click on "Customize Abandoned Email Template" 4. Template "Gamification" appears Error: The template "Ecommerce: Cart Recovery" should have appeared instead The hardcoded res_id was wrong OPW-3207424 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116002
Original PR description
To reproduce the issue: 1. Go to Settings > Website 2. Activate "Automatically send abandoned checkout emails" 3. Click on "Customize Abandoned Email Template" 4. Template "Gamification" appears Error: The template "Ecommerce: Cart Recovery" should have appeared instead The hardcoded res_id was wrong OPW-3207424 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116002
Previously, when the enterprise module `pos_settle_due` was installed, the customer button appeared twice following this [PR 114189](https://github.com/odoo/odoo/pull/114189). The functionality of the order and payment button swap was not taken into account when this other [PR 36775](https://github.com/odoo/enterprise/pull/36775) was created. Now, the customer button has been moved from `pos_restaurant` to `point_of_sale` in order to be overridden by the `pos_settle_due` module and correct t
Original PR description
Previously, when the enterprise module `pos_settle_due` was installed, the customer button appeared twice following this [PR 114189](https://github.com/odoo/odoo/pull/114189). The functionality of the order and payment button swap was not taken into account when this other [PR 36775](https://github.com/odoo/enterprise/pull/36775) was created. Now, the customer button has been moved from `pos_restaurant` to `point_of_sale` in order to be overridden by the `pos_settle_due` module and correct the problem. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#116309
Previously, when the enterprise module `pos_settle_due` was installed, the customer button appeared twice following this [PR 114189](https://github.com/odoo/odoo/pull/114189). The functionality of the order and payment button swap was not taken into account when this other [PR 36775](https://github.com/odoo/enterprise/pull/36775) was created. Now, the `ActionPadWidget` override has been modified so that it no longer replaces it but modifies its attributes to correct the duplication problem.
Original PR description
Previously, when the enterprise module `pos_settle_due` was installed, the customer button appeared twice following this [PR 114189](https://github.com/odoo/odoo/pull/114189). The functionality of the order and payment button swap was not taken into account when this other [PR 36775](https://github.com/odoo/enterprise/pull/36775) was created. Now, the `ActionPadWidget` override has been modified so that it no longer replaces it but modifies its attributes to correct the duplication problem. An override of the `CustomerButton` moved from `pos_restaurant` to `point_of_sale` has also been added to follow the previous specs. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/enterprise#38615
Forward-Port-Of: odoo/enterprise#37188
Original PR description
Forward-Port-Of: odoo/enterprise#37188
name is not 'gstr_india' but it's must be l10n_in_edi so from this commit IAP account name change to l10n_in_edi Forward-Port-Of: odoo/enterprise#38530
Original PR description
name is not 'gstr_india' but it's must be l10n_in_edi so from this commit IAP account name change to l10n_in_edi Forward-Port-Of: odoo/enterprise#38530
[IMP] account_reports: remove unnecessary domain term in get_options_domain This condition was anyway already handled by _get_options_all_entries_domain. This led to a query applying the same check twice in its WHERE clause. [IMP] account_reports: account_codes engine: improve query performance On large databases, the query previously ran by the account_codes engine was becoming slower, even when computing a single line, with a single expression, referencing a single account code in i
Original PR description
[IMP] account_reports: remove unnecessary domain term in get_options_domain This condition was anyway already handled by _get_options_all_entries_domain. This led to a query applying the same check twice in its WHERE clause. [IMP] account_reports: account_codes engine: improve query performance On large databases, the query previously ran by the account_codes engine was becoming slower, even when computing a single line, with a single expression, referencing a single account code in its formula. This was due to the fact we were limiting the computation to only the move lines done on the accounts we wanted: filtering them took time. With this commit, we don't do this filtering anymore, and compute more things than we need; but this makes the computation faster (balance sheet opens ~3 times faster on odoo.com). Forward-Port-Of: odoo/enterprise#38617
Prevents two lines to have the same id when they have a starting and ending balance. Forward-Port-Of: odoo/enterprise#38620
Original PR description
Prevents two lines to have the same id when they have a starting and ending balance. Forward-Port-Of: odoo/enterprise#38620
Updating the done quantity of a SML may lead to the creation of a useless quality check To reproduce the issue: 1. Create a product P 2. Create a control point: - Operations: Receipt - Control per: Product 3. Create a receipt with 1 x P - A quality check QC should be created for 1 x P 4. On the receipt, set the done qty to 0 - QC's quantity should be updated 5. On the receipt, set the done qty to 1 Error: QC's qty has been updated, which is correct, but a second and
Original PR description
Updating the done quantity of a SML may lead to the creation of a useless quality check To reproduce the issue: 1. Create a product P 2. Create a control point: - Operations: Receipt - Control per: Product 3. Create a receipt with 1 x P - A quality check QC should be created for 1 x P 4. On the receipt, set the done qty to 0 - QC's quantity should be updated 5. On the receipt, set the done qty to 1 Error: QC's qty has been updated, which is correct, but a second and useless quality check has been created (again for 1 x P) When writing the done quantity on a SML, if the old value was zero, we create a quality check. This is correct except if that quality check already exists OPW-3159731 Forward-Port-Of: odoo/enterprise#38601 Forward-Port-Of: odoo/enterprise#38561
Forward-Port-Of: odoo/enterprise#38618
Original PR description
Forward-Port-Of: odoo/enterprise#38618
Current behavior: if new translated field is added via studio on account.move.line, traceback appears in profit and loss report when analytic accounting is activated. This is due to the fact that jsonb field should not be cast as other type. This commit allows to cast translated fields as 'jsonb' opw-3208813 Forward-Port-Of: odoo/enterprise#38105
Original PR description
Current behavior: if new translated field is added via studio on account.move.line, traceback appears in profit and loss report when analytic accounting is activated. This is due to the fact that jsonb field should not be cast as other type. This commit allows to cast translated fields as 'jsonb' opw-3208813 Forward-Port-Of: odoo/enterprise#38105
When checking if the BS is balanced with a script,it seems that some accounts were missing in the BS and some sign were reverse, this pr corrects that. In this commit, I've removed an account_id.account_type part of the domain of the "report_line_balanceca4" because the account 1202 and 1203 are not account receivable, so they were not added to the BS which was wrong. Doing so I've not remove other account_id.account_type part since they were good. task-id: 3041738 Forward-Port-Of: odoo/e
Original PR description
When checking if the BS is balanced with a script,it seems that some accounts were missing in the BS and some sign were reverse, this pr corrects that. In this commit, I've removed an account_id.account_type part of the domain of the "report_line_balanceca4" because the account 1202 and 1203 are not account receivable, so they were not added to the BS which was wrong. Doing so I've not remove other account_id.account_type part since they were good. task-id: 3041738 Forward-Port-Of: odoo/enterprise#38152
The fields journal_id on document.workflow.rule needs to be company dependent. Else, when setting the fields, then switching company and triggering the action, you get a record.rule error. Forward-Port-Of: odoo/enterprise#38391
Original PR description
The fields journal_id on document.workflow.rule needs to be company dependent. Else, when setting the fields, then switching company and triggering the action, you get a record.rule error. Forward-Port-Of: odoo/enterprise#38391
### Before this commit: `suitable_picking_ids` is populated with all `done` pickings when returning a transfer without a `ticket_id`, which crashes the frontend upon loading. ### Steps to reproduce: 1. Install Stock & Helpdesk 2. Create thousands of transfers and mark them as done 3. Return a transfer ### After this commit: Set `suitable_picking_ids` to False when the transfer doesn't have a `ticket_id`, as the fields are not used in that case anyway. opw-3232319 Forward-Por
Original PR description
### Before this commit: `suitable_picking_ids` is populated with all `done` pickings when returning a transfer without a `ticket_id`, which crashes the frontend upon loading. ### Steps to reproduce: 1. Install Stock & Helpdesk 2. Create thousands of transfers and mark them as done 3. Return a transfer ### After this commit: Set `suitable_picking_ids` to False when the transfer doesn't have a `ticket_id`, as the fields are not used in that case anyway. opw-3232319 Forward-Port-Of: odoo/enterprise#38363
Before this commit, the `display_project_id` field was a bit confusing for the user to know what is the goal of this field. Also this field is available when the user wants to import his data into Odoo, if he does not know the goal of this field then he could be lost to know which field he should for his data to import (or even export). This commit removes the display_project_id field and so a task will be private one if the project and the parent fields are not set. The project to set to the
Original PR description
Before this commit, the `display_project_id` field was a bit confusing for the user to know what is the goal of this field. Also this field is available when the user wants to import his data into Odoo, if he does not know the goal of this field then he could be lost to know which field he should for his data to import (or even export). This commit removes the display_project_id field and so a task will be private one if the project and the parent fields are not set. The project to set to the timesheet will be the one set on the task or the one set on one of its parent tasks. task-3230063 Forward-Port-Of: odoo/enterprise#38297