Monday, October 28, 2024
24 changes · saas-17.2
Resolved issues and error corrections
This change corrects setup information for several country-specific reporting apps so they install automatically when the related accounting and localization apps are installed. It helps businesses get the right local reporting features without extra manual configuration.
Original PR description
It was previously already done in commit 148810637bf9e7a9cc53338f665ec612221a1ba2 . But in the meantime new modules were added or the 'countries' info were added back to the manifest. Currently the auto_install does not work correctly. E.g. installing `account_reports` and then `l10n_lv` does not automatically install `l10n_lv_reports` (which it should). After this commit the auto_install works again.
Miscellaneous changes
**Current behavior:** Using the DHL delivery shipping module, if you complete a sale order's delivery and then add new product to the order and, again, validate the new delivery, the shipping chatter will be posted in all of the sale order's pickings. **Expected behavior:** The chatter should only be posted in the picking which was actually validated. **Steps to reproduce:** *Install delivery_dhl and l10n_be_hr_payroll* *Swap to My Belgian Company* *Duplicate the My Belgian Compan
Original PR description
**Current behavior:** Using the DHL delivery shipping module, if you complete a sale order's delivery and then add new product to the order and, again, validate the new delivery, the shipping chatter…
**Current behavior:** Using the DHL delivery shipping module, if you complete a sale order's delivery and then add new product to the order and, again, validate the new delivery, the shipping chatter will be posted in all of the sale order's pickings. **Expected behavior:** The chatter should only be posted in the picking which was actually validated. **Steps to reproduce:** *Install delivery_dhl and l10n_be_hr_payroll* *Swap to My Belgian Company* *Duplicate the My Belgian Company partner record, giving it new unique values where necessary (VAT, address, etc.)* 1. Create a new sale order to the copied Belgian company 2. Add some storable product and add DHL EU shipping to the order (only DHL connector working) 3. Confirm the order, and validate the delivery 4. Back on the sale order, add another order line and save 5. Validate the new delivery, see that the delivery chatter is posted on both deliveries **Cause of the issue:** The message is currently logged on `sale_id.picking_ids`. **Fix:** Change the line in question to only log the message on the currently iterated over picking, as well as any relevant, previously created ones (e.g., in a multistep route context). opw-4059145 Forward-Port-Of: odoo/enterprise#72730 Forward-Port-Of: odoo/enterprise#71441
### Steps to reproduce: - Enable "Multi-Steps Routes" in the settings - Add a barcode to a different location that WH/Stock - Go to the barcode > Operations > Internal Transfers > New > The header propose to scan a product - Do not scan the product by click on `+ ADD PRODUCT` - Add 1 unit of your favorite product > The header propose to scan a product or a destination location - Scan the location you had set #### > The location scan is ignored ### Cause of the issue: During the
Original PR description
### Steps to reproduce: - Enable "Multi-Steps Routes" in the settings - Add a barcode to a different location that WH/Stock - Go to the barcode > Operations > Internal Transfers > New > The header…
### Steps to reproduce: - Enable "Multi-Steps Routes" in the settings - Add a barcode to a different location that WH/Stock - Go to the barcode > Operations > Internal Transfers > New > The header propose to scan a product - Do not scan the product by click on `+ ADD PRODUCT` - Add 1 unit of your favorite product > The header propose to scan a product or a destination location - Scan the location you had set #### > The location scan is ignored ### Cause of the issue: During the `_parseBracode` called to determine what was scanned by the barcode, a location corresponding to the barcode scanned will be found. To use this barcode, if it makes sense, the `_setLocationFromBcode` will be called in turn. However, during internal transfers, this location will only be used as a destination location under very specific conditions: https://github.com/odoo/enterprise/blob/8035abddf9991f6bfb71bb7889b703e5ed31a179/stock_barcode/static/src/models/barcode_picking_model.js#L1603-L1619 And, since we did add the product manually rather than using a scan, in our case, `this.previousScannedLines.lengt` will be null rather than positive so that the location will not be used to set the destination. opw-4201489 Forward-Port-Of: odoo/enterprise#72283
Before this commit: while creating the app for the 'Suggested features for your new model' title the line is not completed. After this commit: the line should be completed. Task:-3845561 Forward-Port-Of: odoo/enterprise#72828 Forward-Port-Of: odoo/enterprise#61824
Original PR description
Before this commit: while creating the app for the 'Suggested features for your new model' title the line is not completed. After this commit: the line should be completed. Task:-3845561 Forward-Port-Of: odoo/enterprise#72828 Forward-Port-Of: odoo/enterprise#61824
This pr is created to help de user to know the origin of the afip error 10016. The error 10016 can be caused by different origins, so here we give the user more precision about the origin. The objective of this pr is to be able to differentiate what is the origin of error 10016 and to be able to give a more precise message to the client. 1) If the last afip invoice validated has a higher date than the date of the invoice that is being validated then the message shown to the user is '10016-
Original PR description
This pr is created to help de user to know the origin of the afip error 10016. The error 10016 can be caused by different origins, so here we give the user more precision about the origin. The…
This pr is created to help de user to know the origin of the afip error 10016.
The error 10016 can be caused by different origins, so here we give the user more precision about the origin. The objective of this pr is to be able to differentiate what is the origin of error 10016 and to be able to give a more precise message to the client.
1) If the last afip invoice validated has a higher date than the date of the invoice that is being validated then the message shown to the user is '10016-1': 'The invoice date cannot be after the last invoice validated in AFIP.'
2) If the last afip invoice number is higher than the current invoice number being validated in Odoo, then the message shown to the user is '10016-2': 'There may have been a mismatch in the numbering of this type of document between Odoo and AFIP.'
3) If any other reason cause the error '10016' then the message shown to the user is:
* Please note that if you are trying to validate an invoice with a date other than today, you must verify if it falls within the date range according to the AFIP concept or document type:
a) If it is Product: N+5 or N-5 with N being today's date.
b) If it is Services or Products and services: N+10 or N-10 with N being today's date.
c) If it is a MiPyme Invoice: N-5 0 N+1 with N being today's date. For Debit Note or Credit Note only N-5"
Task Adhoc side: 37771
Task latam side: 1194
This pr replaces https://github.com/odoo/enterprise/pull/65675
Forward-Port-Of: odoo/enterprise#72656Steps to reproduce the bug: - Create a storable product “P1”: - Tracked with SN - Create a BoM: - no need to component - Add an operation “OP1” with steps - Control by product - Create a manufacturing order for one unit of P1 - Confirm the MO - Go to the shop floor and process “OP1” - Validate the MO - Go to the SN of P1 Problem: The quality check smart button is not displayed, while the SN is linked to a QC. opw-4189396 Forward-Port-Of: odoo/e
Original PR description
Steps to reproduce the bug:
- Create a storable product “P1”:
- Tracked with SN
- Create a BoM:
- no need to component
- Add an operation “OP1” with steps
- Control by product
- Create a manufacturing order for one unit of P1
- Confirm the MO
- Go to the shop floor and process “OP1”
- Validate the MO
- Go to the SN of P1
Problem:
The quality check smart button is not displayed, while the SN is linked to a QC.
opw-4189396
Forward-Port-Of: odoo/enterprise#72693X-original-commit: 698b81c Forward-Port-Of: odoo/enterprise#72859
Original PR description
X-original-commit: 698b81c Forward-Port-Of: odoo/enterprise#72859
this commit reverts changes introduced in https://github.com/odoo/odoo/pull/183616 During reconciliation when two payment methods (cash and bank) are used simultaneously. the change amount is incorrectly deducted from the bank payment. An attempt to resolve this issue introduced further complications with payment amounts. By creating a single account move, it attempted to deduct the change amount from the cash payment, which led to inaccurate payment amounts. opw-4276421 --- I confirm
Original PR description
this commit reverts changes introduced in https://github.com/odoo/odoo/pull/183616 During reconciliation when two payment methods (cash and bank) are used simultaneously. the change amount is incorrectly deducted from the bank payment. An attempt to resolve this issue introduced further complications with payment amounts. By creating a single account move, it attempted to deduct the change amount from the cash payment, which led to inaccurate payment amounts. opw-4276421 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185323 Forward-Port-Of: odoo/odoo#185291
The `move.reversed_move_id` field only represents the credit note that the user has manually created to revert a move, entirely or partially, but it doesn't take into consideration all moves reconciled through other means. We now use the method `move._get_reconciled_invoices()` which goes through all the partials to retrieve them instead. This enables also the reconciliation with the outstanding credits case to be covered. Closed 16.0 PR: odoo/odoo#119132 Task [link](https://www.odoo
Original PR description
The `move.reversed_move_id` field only represents the credit note that the user has manually created to revert a move, entirely or partially, but it doesn't take into consideration all moves reconciled through other means. We now use the method `move._get_reconciled_invoices()` which goes through all the partials to retrieve them instead. This enables also the reconciliation with the outstanding credits case to be covered. Closed 16.0 PR: odoo/odoo#119132 Task [link](https://www.odoo.com/odoo/project/967/tasks/3281816) task-3281816 Forward-Port-Of: odoo/odoo#184783
Bug introcued by this commit: https://github.com/odoo/odoo/pull/174984/commits/7bcfc3a1107650deff9dd8af02a3717304cb7d4e Steps to reproduce the bug: - Create a storable product “P1” tracked by serial number - update the qty with SN1 - Create a delivery order with SN1 - Validate it - go to the product and come back to the delivery - click on detailed operation in the move line Problem: “Unnamed” is displayed instead of the display_name of the quant opw-4279953 opw-4277630 opw-42
Original PR description
Bug introcued by this commit: https://github.com/odoo/odoo/pull/174984/commits/7bcfc3a1107650deff9dd8af02a3717304cb7d4e Steps to reproduce the bug: - Create a storable product “P1” tracked by serial number - update the qty with SN1 - Create a delivery order with SN1 - Validate it - go to the product and come back to the delivery - click on detailed operation in the move line Problem: “Unnamed” is displayed instead of the display_name of the quant opw-4279953 opw-4277630 opw-4276882 opw-4276058 opw-4252901 Forward-Port-Of: odoo/odoo#184920
Before this commit: Steps 1) Switch to DE company 2) Upload invoice using corrupted PDF (size = 0 KB) 3) Delete that invoice => It shows an error with a traceback File "/data/build/odoo/addons/l10n_de/models/ir_attachment.py", line 17, in <lambda> and guess_mimetype(attachment.raw) in ( File "/data/build/odoo/odoo/tools/mimetypes.py", line 156, in _odoo_guess_mimetype if bin_data.startswith(signature): AttributeError: 'bool' object has no attribute 'startswith' After this commit:
Original PR description
Before this commit: Steps 1) Switch to DE company 2) Upload invoice using corrupted PDF (size = 0 KB) 3) Delete that invoice => It shows an error with a traceback File "/data/build/odoo/addons/l10n_de/models/ir_attachment.py", line 17, in <lambda> and guess_mimetype(attachment.raw) in ( File "/data/build/odoo/odoo/tools/mimetypes.py", line 156, in _odoo_guess_mimetype if bin_data.startswith(signature): AttributeError: 'bool' object has no attribute 'startswith' After this commit: Invoices in l10n_de with corrupted attachments will be deleted without errors screen recording: https://drive.google.com/file/d/1TMjkwYbLZwEXyLfbSzjmDaO6jOrRk2RO/view?usp=sharing opw-4115496 Forward-Port-Of: odoo/odoo#183768
Issue: ====== We can't save address in website of latam company (peru for example) Steps to reproduce the issue: ============================= - Install ecommerce and peru localization - Change the company of the website to the peru company - Go to website add anything to cart and checkout - Edit the address - Save - Required fields missing even though there is no field with red showing a warning. Origin of the issue: ==================== In the template of the address of `l1
Original PR description
Issue: ====== We can't save address in website of latam company (peru for example) Steps to reproduce the issue: ============================= - Install ecommerce and peru localization - Change the company of the website to the peru company - Go to website add anything to cart and checkout - Edit the address - Save - Required fields missing even though there is no field with red showing a warning. Origin of the issue: ==================== In the template of the address of `l10n_pe_website_sale` we show the `partner_info` using an xpath on `vat`. But in the common template we show the VAT number on condition so when that condition is false we will have some mandatory fields missing because we didn't show them in the address form. Solution: ========= backport of https://github.com/odoo/odoo/commit/3a2eb31de39c9da162ef1bc53deb88a4c6b841f6 opw-4148782 Forward-Port-Of: odoo/odoo#180416
* STEP TO REPRODUCE: create a new uom category and add a new line -> Save. Then delete one line (uom_ids) -> raise UserError because the system force an uom category need to have at least one reference unit. * Fix by allowing to delete uom categ when it only has one single line of reference (by first delete the line and then delete the category), just like behaviour in v15 when we just make a user warning and still allow user to delete it Related forum issue: https://www.odoo.com/forum/
Original PR description
* STEP TO REPRODUCE: create a new uom category and add a new line -> Save. Then delete one line (uom_ids) -> raise UserError because the system force an uom category need to have at least one reference unit. * Fix by allowing to delete uom categ when it only has one single line of reference (by first delete the line and then delete the category), just like behaviour in v15 when we just make a user warning and still allow user to delete it Related forum issue: https://www.odoo.com/forum/help-1/unit-of-measure-categories-archive-option-255227 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#173990
**[FIX] l10n_in: Remove Enterprise Widget from Indian Electronic Waybill** **Description of the issue/feature this PR addresses:** System shows Enterprise Widget on Indian Electronic Waybill module. Although Indian Electronic Waybill is available in community addons . **Impacted versions:** * 17.0 * 18.0 **Steps to Reproduce :** - Install l10n_in module. - Now Go to the invoicing --> Configuration --> Setting. - See the Enterprise Widget is on Indian Electronic Waybill. **Curr
Original PR description
**[FIX] l10n_in: Remove Enterprise Widget from Indian Electronic Waybill** **Description of the issue/feature this PR addresses:** System shows Enterprise Widget on Indian Electronic Waybill module. Although Indian Electronic Waybill is available in community addons . **Impacted versions:** * 17.0 * 18.0 **Steps to Reproduce :** - Install l10n_in module. - Now Go to the invoicing --> Configuration --> Setting. - See the Enterprise Widget is on Indian Electronic Waybill. **Current behaviour before PR:** Enterprise Widget Should not show on Indian Electronic Waybill as it is available in community addons. **Desired behaviour after PR is merged:** After this PR merge, System will allow to install Indian Electronic Waybill module in community version. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184401
If the bank account number is not in a valid format, it is rejected by `NAV`. When that happened we returned a `(None) None: None` error message, which is not very useful. This was due to an error in xml namespace when looking for the error message. Now, we return the proper error message. We also check that the bank account number is in a valid format before sending it to `NAV` and **warn** the user. The user is still free to send the document anyway. Task-id: 4254627 --- I confirm
Original PR description
If the bank account number is not in a valid format, it is rejected by `NAV`. When that happened we returned a `(None) None: None` error message, which is not very useful. This was due to an error in xml namespace when looking for the error message. Now, we return the proper error message. We also check that the bank account number is in a valid format before sending it to `NAV` and **warn** the user. The user is still free to send the document anyway. Task-id: 4254627 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184470
When typing '>:)' in the composer, it should be replaced by '😈'. The problem is that the emoji generator doesn't work with '<', '>' because the text is escaped and the '<', '>'is replaced by '<', '>'. In this case, the regrex doesn't match. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185192 Forward-Port-Of: odoo/odoo#185091
Original PR description
When typing '>:)' in the composer, it should be replaced by '😈'. The problem is that the emoji generator doesn't work with '<', '>' because the text is escaped and the '<', '>'is replaced by '<', '>'. In this case, the regrex doesn't match. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185192 Forward-Port-Of: odoo/odoo#185091
It is currently not possible to embed the factur-x.xml in custom pdf templates, although it is supported in 17.4. In this commit, we add the possibility to to do so, by adding a system parameter "account.custom_templates_facturx_list" that contains a list of the custom report names (field `report_name` on `ir.actions.report`) for which we want to embed a factur-x.xml. We also re-introduce the extension of `_render_qweb_pdf_prepare_streams`. In addition, we add a context_key `from_account_
Original PR description
It is currently not possible to embed the factur-x.xml in custom pdf templates, although it is supported in 17.4. In this commit, we add the possibility to to do so, by adding a system parameter "account.custom_templates_facturx_list" that contains a list of the custom report names (field `report_name` on `ir.actions.report`) for which we want to embed a factur-x.xml. We also re-introduce the extension of `_render_qweb_pdf_prepare_streams`. In addition, we add a context_key `from_account_move_send` to avoid adding the Factur-X twice in case we are in the Send & Print flow (see `_hook_invoice_document_after_pdf_report_render`). See https://github.com/odoo/odoo/pull/179548 opw-4160945 Forward-Port-Of: odoo/odoo#184451
Versions -------- - 16.0 up to saas-17.4 Steps ----- 1. Add one or more lines to an SO with the same tax; 2. apply a discount coupon. Issue ----- Tax gets mentioned in the discount line name, even though it isn't really necesarry in this scenario. Cause ----- When generating the discount line description, a `tax_desc` gets added for any tax with a name. Solution -------- Only add `tax_desc` if there's more than one discount line being generated due to multiple taxes. op
Original PR description
Versions -------- - 16.0 up to saas-17.4 Steps ----- 1. Add one or more lines to an SO with the same tax; 2. apply a discount coupon. Issue ----- Tax gets mentioned in the discount line name, even though it isn't really necesarry in this scenario. Cause ----- When generating the discount line description, a `tax_desc` gets added for any tax with a name. Solution -------- Only add `tax_desc` if there's more than one discount line being generated due to multiple taxes. opw-4072437 Forward-Port-Of: odoo/odoo#183686
When the language is not in the context the report will always show the en_US version. opw-4220270 Description of the issue/feature this PR addresses: Current behavior before PR: - translation is bypassed Desired behavior after PR is merged: - report will be shown in the correct language --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184538
Original PR description
When the language is not in the context the report will always show the en_US version. opw-4220270 Description of the issue/feature this PR addresses: Current behavior before PR: - translation is bypassed Desired behavior after PR is merged: - report will be shown in the correct language --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184538
Issue --> A noticeable amount of time is spent in the method `_get_outgoing_incoming_moves` when doing the `OR` operation on the stock.move recordsets when there is a large number of moves to iterate through. Solution --> Replace the odoo recordset operations with set operations. Benchmarks --> | # of moves | Before | After | |--------|--------|--------| | 32000 | 24.08s | 1.43s | | 7300 | 1.74s | 0.40s | opw-4220302 Forward-Port-Of: odoo/odoo#185068 Forward-Port-Of: odoo/
Original PR description
Issue --> A noticeable amount of time is spent in the method `_get_outgoing_incoming_moves` when doing the `OR` operation on the stock.move recordsets when there is a large number of moves to iterate through. Solution --> Replace the odoo recordset operations with set operations. Benchmarks --> | # of moves | Before | After | |--------|--------|--------| | 32000 | 24.08s | 1.43s | | 7300 | 1.74s | 0.40s | opw-4220302 Forward-Port-Of: odoo/odoo#185068 Forward-Port-Of: odoo/odoo#183671
Adds default value to a few required selection fields as currently a value is apparently set in the form (as the select field will pick the first value) but without having the value really set in the field, meaning that on save, the field will appear as invalid. Also, to be able to select the "almost default" value, you'd need to select another value then pick the first value again to properly set it in the field and be able to save the form. To avoid those issue, we can add a default value t
Original PR description
Adds default value to a few required selection fields as currently a value is apparently set in the form (as the select field will pick the first value) but without having the value really set in the field, meaning that on save, the field will appear as invalid. Also, to be able to select the "almost default" value, you'd need to select another value then pick the first value again to properly set it in the field and be able to save the form. To avoid those issue, we can add a default value to those fields corresponding to the current "default" value in the form. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185269 Forward-Port-Of: odoo/odoo#184939
When archiving an operation in a bom, currently it will unlink if from bom lines that had it set as their `Consumed in Operation`. However, it's not the case for byproducts, meaning that the byproducts lines will still display the now archived operation. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185290 Forward-Port-Of: odoo/odoo#185093
Original PR description
When archiving an operation in a bom, currently it will unlink if from bom lines that had it set as their `Consumed in Operation`. However, it's not the case for byproducts, meaning that the byproducts lines will still display the now archived operation. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#185290 Forward-Port-Of: odoo/odoo#185093
On small images, the actions to delete image is barely usable. In mobile, these actions are always shown, so they could even prevent clicking on attachment to view in dialog. Also on big a image the 2 actions are far away, which is can be exhausting. This commit fixes the issue by using a dropdown when there is more than 1 action or when the image is considered very small. Images visual is at most 75px width and height, so smaller images now show a background, which ensures image actions and
Original PR description
On small images, the actions to delete image is barely usable. In mobile, these actions are always shown, so they could even prevent clicking on attachment to view in dialog. Also on big a image the 2 actions are far away, which is can be exhausting. This commit fixes the issue by using a dropdown when there is more than 1 action or when the image is considered very small. Images visual is at most 75px width and height, so smaller images now show a background, which ensures image actions and clicking on image for preview are both reachable with ease, also added the required changes accordingly. task-3563828 Backport of: https://github.com/odoo/odoo/pull/180671 Forward-Port-Of: odoo/odoo#185219
HTML user menu items were escaped on the mobile client Fixes #145693 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#152809
Original PR description
HTML user menu items were escaped on the mobile client Fixes #145693 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#152809