Tuesday, February 11, 2025
25 changes · saas-17.4
Resolved issues and error corrections
Portal users no longer hit an error when viewing time spent on sub-tasks in shared projects. The fix removes an internal timesheet timer header from the portal view, keeping the shared project experience stable and consistent.
Original PR description
- saas-17.4 ### Steps to reproduce: - Install the hr_timesheet module. - Create a portal user. - Create a project, task, and sub-task (with timesheet entries). - Share the project with the portal user. - Log in as the portal user. - Open the shared project and navigate to the task. - Click on the Time Spent on Sub-tasks action. ### Issue: Traceback error ### Cause: Tries to load timesheet timer header. ### Solution: Remove the timesheet header from the portal list view. The timesheet header is not displayed to internal users, so we can remove it for portal users. task-4369891 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Comparing times may give false error because of the precision and time to run a test. This commit adds a delta into which two datetime are considered the same in order to not make the test failing by mistake. runbot : 112119 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#196068 Forward-Port
Original PR description
Comparing times may give false error because of the precision and time to run a test. This commit adds a delta into which two datetime are considered the same in order to not make the test failing by mistake. runbot : 112119 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#196068 Forward-Port-Of: odoo/odoo#195457
Tremol USD device issues can be hard to investigate since we don't have access to all messages exchanged between the device and Odoo drivers. This PR adds logs for request and responses when the debug flag is enable on the proxy server installed on the user computer. opw-4453505 Forward-Port-Of: odoo/odoo#197218
Original PR description
Tremol USD device issues can be hard to investigate since we don't have access to all messages exchanged between the device and Odoo drivers. This PR adds logs for request and responses when the debug flag is enable on the proxy server installed on the user computer. opw-4453505 Forward-Port-Of: odoo/odoo#197218
Before this commit here was a discrepancy between getting a report from the Web interface in debug=assets and in debug=0 In debug=assets, some parts of the report were invisible, namely the footer. Following efforts made by 7c4e591d58dd2b882f0c237d52490b2756c94203, this commit forces the PDF rendering in debug=0 mode Some behaviors are left mysterious though. The web.minimal_layout has a <base /> node to make sure every resources is fetched by wkhtml from that origin. It seems that wkhtml
Original PR description
Before this commit here was a discrepancy between getting a report from the Web interface in debug=assets and in debug=0 In debug=assets, some parts of the report were invisible, namely the footer.…
Before this commit here was a discrepancy between getting a report from the Web interface in debug=assets and in debug=0 In debug=assets, some parts of the report were invisible, namely the footer. Following efforts made by 7c4e591d58dd2b882f0c237d52490b2756c94203, this commit forces the PDF rendering in debug=0 mode Some behaviors are left mysterious though. The web.minimal_layout has a <base /> node to make sure every resources is fetched by wkhtml from that origin. It seems that wkhtmltopdf actually makes a fetch request to that raw url with unspecified debug mode. The session being open, ir_qweb is in debug mode anyway, which makes that rpc rendering the main page in debug=assets. For some reason, probably time and memory, that call is responsible for hiding some parts of the report in PDF. 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#196138
Previously, the company check on a relational field was ensuring that at least one of the related records had a compatible company. This worked fine for many2one fields, which have a single related record, but not for one2many and many2many fields, which can have multiple related records (only one of them needed to have a compatible company for the check to succeed). This fix rewrites the company check to ensure that none of the related records have an incompatible company. Forward-Port-Of:
Original PR description
Previously, the company check on a relational field was ensuring that at least one of the related records had a compatible company. This worked fine for many2one fields, which have a single related record, but not for one2many and many2many fields, which can have multiple related records (only one of them needed to have a compatible company for the check to succeed). This fix rewrites the company check to ensure that none of the related records have an incompatible company. Forward-Port-Of: odoo/odoo#189847
Fixed inconsistent rounding of quantities displayed on the order button and table diff counters in the floor plan. **Steps to reproduce the issue:** 1. Add an orderline by clicking on a product. 2. Set the quantity to "2". 3. Click "Order". 4. Click "." and then "2" to adjust the quantity. 5. We can observe really long quantity (not rounded like `0.20000000000000018` instead of `0.2`) **Changes:** - Added `roundQuantity` utility to ensure consistent rounding to 2 decimals. - Applied
Original PR description
Fixed inconsistent rounding of quantities displayed on the order button and table diff counters in the floor plan. **Steps to reproduce the issue:** 1. Add an orderline by clicking on a product. 2. Set the quantity to "2". 3. Click "Order". 4. Click "." and then "2" to adjust the quantity. 5. We can observe really long quantity (not rounded like `0.20000000000000018` instead of `0.2`) **Changes:** - Added `roundQuantity` utility to ensure consistent rounding to 2 decimals. - Applied `roundQuantity` to table diff counters (on floorplan) and order category counters (on the order button inside ProductScreen) . task-id: 4488523 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#194422
When the vendor price is set in a different currency than main one in product's form, the PO triggered by the procurement is created in main currency. Steps to reproduce: - Activate foreign currency - Activate Route MTO - Have a product [PROD] configured with - [General Info tab] Product Type: Storable Product - [Purchase tab] Set a Vendor, a price, and foreign currency - [Inventory Tab] Routes Buy, MTO - Create a Sales Order with [PROD] and confirm it - Open the created Purchas
Original PR description
When the vendor price is set in a different currency than main one in product's form, the PO triggered by the procurement is created in main currency. Steps to reproduce: - Activate foreign currency - Activate Route MTO - Have a product [PROD] configured with - [General Info tab] Product Type: Storable Product - [Purchase tab] Set a Vendor, a price, and foreign currency - [Inventory Tab] Routes Buy, MTO - Create a Sales Order with [PROD] and confirm it - Open the created Purchase order Issue: currency is in company currency and not the currency set in the product configuration opw-4398597 Forward-Port-Of: odoo/odoo#193005
### Steps to reproduce: - Create a storable product FP tracked by SN with a BOM: - 1 Operation: - instruction: Register Production type (per product) - 1 x Comp (storable product in stock) - Create and confirm an MO for one unit of FP. - Go to the shopfoor app > open the instruction of your operation - Type a non-existing serial number in the search bar > Create "new_sn" > This opens a form view of the stock.lot model - Save and close the new stock.lot > Invalid operation: You
Original PR description
### Steps to reproduce: - Create a storable product FP tracked by SN with a BOM: - 1 Operation: - instruction: Register Production type (per product) - 1 x Comp (storable product in stock) - Create…
### Steps to reproduce:
- Create a storable product FP tracked by SN with a BOM:
- 1 Operation: - instruction: Register Production type (per product)
- 1 x Comp (storable product in stock)
- Create and confirm an MO for one unit of FP.
- Go to the shopfoor app > open the instruction of your operation
- Type a non-existing serial number in the search bar > Create "new_sn"
> This opens a form view of the stock.lot model
- Save and close the new stock.lot
> Invalid operation: You are not allowed to create or edit a lot or serial number for the components with the operation type
> "Manufacturing". To change this, go on the operation type and tick the box "Create New Lots/Serial Numbers for
> Components"
#### Expected behavior:
The invalid operation should not be raised as the "required" option concerns only componenets and not final products.
### Cause of the issue:
Creating a stock lot will first launch a call of the `_check_create`: https://github.com/odoo/odoo/blob/c25d71f14fa168807f07cd88bed805d15db8add5/addons/stock/models/stock_lot.py#L150-L153 However, since this check does not verifies that the product for which we create the lot is indeed related to a component of the MO it will raise the invalid operation even for final products: https://github.com/odoo/odoo/blob/c25d71f14fa168807f07cd88bed805d15db8add5/addons/mrp/models/stock_lot.py#L11-L17
### Issue 2:
Currently, the `quickCreate` ("Create *sn_name*") option of the lot field of te "register production" dialog calls a `name_create` that will set an error message in the logs as the product_id required field can not be provided neither in the vals or the context of the `name_create`. You then fall back on the same form dialog than the "Create and edit". The `quickCreate` option should therefore just be disabled.
Enterprise: https://github.com/odoo/enterprise/pull/77265
opw-4452747
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#196663
Forward-Port-Of: odoo/odoo#193965Steps to Reproduce: -> Drag and Drop the Facebook Snippet. -> Click on the snippet. -> Enter any random text. -> The snippet's content is editable. Solution: By adding the `o_not_editable` class to the Facebook Snippet, it prevent user's input from affecting the snippet. This PR ensures that the Facebook Snippet does not accept any user input. task-4517743 Forward-Port-Of: odoo/odoo#197195 Forward-Port-Of: odoo/odoo#195549
Original PR description
Steps to Reproduce: -> Drag and Drop the Facebook Snippet. -> Click on the snippet. -> Enter any random text. -> The snippet's content is editable. Solution: By adding the `o_not_editable` class to the Facebook Snippet, it prevent user's input from affecting the snippet. This PR ensures that the Facebook Snippet does not accept any user input. task-4517743 Forward-Port-Of: odoo/odoo#197195 Forward-Port-Of: odoo/odoo#195549
## Description of the issue/feature this PR addresses Unable to reach Kiosk mode while in debug mode due to props validation ``` Error: Invalid props for component 'kioskAttendanceApp': unknown key 'token', unknown key 'companyId', unknown key 'companyName', unknown key 'employees', unknown key 'departments', unknown key 'kioskMode', unknown key 'barcodeSource' ``` ### Steps to reproduce - Install `hr_attendance` - Open Kiosk Mode - Enable debug mode => Blank screen ## Current b
Original PR description
## Description of the issue/feature this PR addresses Unable to reach Kiosk mode while in debug mode due to props validation ``` Error: Invalid props for component 'kioskAttendanceApp': unknown key…
## Description of the issue/feature this PR addresses Unable to reach Kiosk mode while in debug mode due to props validation ``` Error: Invalid props for component 'kioskAttendanceApp': unknown key 'token', unknown key 'companyId', unknown key 'companyName', unknown key 'employees', unknown key 'departments', unknown key 'kioskMode', unknown key 'barcodeSource' ``` ### Steps to reproduce - Install `hr_attendance` - Open Kiosk Mode - Enable debug mode => Blank screen ## Current behavior before PR Before this commit, when we were in debug mode, we couldn't access Kiosk mode (white screen with message in console). This was because the props were not fully declared, and, in debug mode, we validated the props here : https://github.com/odoo/odoo/blob/c3e7ee585a58fc07c11d07677d1d64dbd357d6b7/addons/web/static/lib/owl/owl.js#L5715-L5717 As the components are only used in one place each, I've updated the props declaration to match the usage. Forward-Port-Of: odoo/odoo#195831 Forward-Port-Of: odoo/odoo#189412
With this Commit : ---------------------------------------------------------- - In the previous implementation, components marked for manual consumption were automatically consumed, like auto-consumed components, when starting production on a manufacturing order (MO). This occurred due to missing logic and conditions in the code that failed to differentiate between manual and automatic component consumption, and it only affected the shop floor operations. - This update corrects the componen
Original PR description
With this Commit : ---------------------------------------------------------- - In the previous implementation, components marked for manual consumption were automatically consumed, like auto-consumed components, when starting production on a manufacturing order (MO). This occurred due to missing logic and conditions in the code that failed to differentiate between manual and automatic component consumption, and it only affected the shop floor operations. - This update corrects the components' consumption process and enhances production tracking's reliability, ensuring that manual components are managed according to their intended usage. Task id: 4096514 Enterprise PR: odoo/enterprise#77831 Forward-Port-Of: odoo/odoo#175816
Before this PR: Placeholder for empty char/text fields were disappearing in editor. <br> Steps to reproduce: 1. Open any appointment page with an operator assigned. 2. Go into edit mode. 3. The field with the placeholder "Add a function here..." will disappear. > Similar issue can be seen for any char/text field types. <br> The issue occurs after the https://github.com/odoo/odoo/pull/165197 update, which uses the fillEmpty utility function to add: - \<br> in empty **block** fields
Original PR description
Before this PR: Placeholder for empty char/text fields were disappearing in editor. <br> Steps to reproduce: 1. Open any appointment page with an operator assigned. 2. Go into edit mode. 3. The field…
Before this PR: Placeholder for empty char/text fields were disappearing in editor. <br> Steps to reproduce: 1. Open any appointment page with an operator assigned. 2. Go into edit mode. 3. The field with the placeholder "Add a function here..." will disappear. > Similar issue can be seen for any char/text field types. <br> The issue occurs after the https://github.com/odoo/odoo/pull/165197 update, which uses the fillEmpty utility function to add: - \<br> in empty **block** fields (char/text) - and Zero Width Space (ZWS) in empty **inline** fields (char/text) Since placeholders for fields are added via SCSS targeting empty fields, the char/text fields are no longer considered empty due to the \<br> tag and ZWS. As a result, placeholders are not displayed. <br> This fix ensures that the SCSS now applies the same styling to fields if they are empty, contain only a \<br> tag, or contain only ZWS. Additionally, the value for `data-oe-zws-empty-inline` attribute is now updated dynamically, enabling CSS to target fields with only ZWS content, as ZWS cannot be selected directly from CSS. <br> task-4297507 Forward-Port-Of: odoo/odoo#187892
before this commit, opening sessions menu raising a single ton error. * navigate to point of sale app * click on orders -> session * traceback is shown self.env['pos.payment']._read_group(self._get_captured_payments_domain(), ['session_id'], ['amount:sum']) File "/home/dev/Git/17.0/git/odoo/addons/point_of_sale/models/pos_session.py", line 1504, in _get_captured_payments_domain return [('session_id', '=', self.id), ('pos_order_id.state', 'in', ['paid', 'invoiced'])] File "/hom
Original PR description
before this commit, opening sessions menu raising a single ton error. * navigate to point of sale app * click on orders -> session * traceback is shown…
before this commit, opening sessions menu raising a single ton error.
* navigate to point of sale app
* click on orders -> session
* traceback is shown
self.env['pos.payment']._read_group(self._get_captured_payments_domain(), ['session_id'], ['amount:sum'])
File "/home/dev/Git/17.0/git/odoo/addons/point_of_sale/models/pos_session.py", line 1504, in _get_captured_payments_domain
return [('session_id', '=', self.id), ('pos_order_id.state', 'in', ['paid', 'invoiced'])]
File "/home/dev/Git/17.0/git/odoo/odoo/fields.py", line 5159, in __get__
raise ValueError("Expected singleton: %s" % record)
ValueError: Expected singleton: pos.session(1562, 1561, 1560, 1559, 1558, 1557, 1506, 1505, 1504, 1503, 1502, 1501, 1498, 1497, 1496,
introduced in: https://github.com/odoo/odoo/commit/0ee6d2881150c04631efc9f38f0e098b0a10dee9
after this commit, without any issues, the sessions
will opened.
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#197138GLN is the default that many people want to use, but that should not be the default for everybody. Instead use the real Peppol Endpoint when it's filled. We only take care of those that the schematron allows and where we know the correspondence. For the others and if the peppol fields are not filled, we still fallback on the VAT opw-4502607 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#194551
Original PR description
GLN is the default that many people want to use, but that should not be the default for everybody. Instead use the real Peppol Endpoint when it's filled. We only take care of those that the schematron allows and where we know the correspondence. For the others and if the peppol fields are not filled, we still fallback on the VAT opw-4502607 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#194551
*: http_routing Since [1], the tel:// format was preferred over tel: due to reasons stated in [2]. However, the change in [2] was a workaround for a bug in the Python library used to parse URLs. According to the relevant RFC, the tel: protocol should not include double slashes. When clicking on a link like `tel://+112351221233` in a browser, a popup may appear attempting to handle the communication using `http://tel//+112351221233` as the browser does not recognize the tel protocol when do
Original PR description
*: http_routing Since [1], the tel:// format was preferred over tel: due to reasons stated in [2]. However, the change in [2] was a workaround for a bug in the Python library used to parse URLs.…
*: http_routing Since [1], the tel:// format was preferred over tel: due to reasons stated in [2]. However, the change in [2] was a workaround for a bug in the Python library used to parse URLs. According to the relevant RFC, the tel: protocol should not include double slashes. When clicking on a link like `tel://+112351221233` in a browser, a popup may appear attempting to handle the communication using `http://tel//+112351221233` as the browser does not recognize the tel protocol when double slashes are included.   This commit removes the unnecessary double slashes to comply with RFC recommendations and just add a trailing white space to be sure that the url_parse method from werkzeug works properly. [1]: https://github.com/odoo/odoo/commit/6d4a3b3ab5c0f3361d1d681d05b974e295dcbabe [2]: https://github.com/odoo/odoo/commit/56ce29e71f75a657d4b518d86c1d7084891e898e task-4331070 Forward-Port-Of: odoo/odoo#190860
Those tests were too long and sometimes triggered a timeout when the runbot happened to be too slow. This commit separates each test into its own async function so that the timeout is applied on each test separately, thus significantly decreasing the likelihood of a timeout to occur in any of them. runbot-112694 runbot-112819 Forward-Port-Of: odoo/odoo#196986
Original PR description
Those tests were too long and sometimes triggered a timeout when the runbot happened to be too slow. This commit separates each test into its own async function so that the timeout is applied on each test separately, thus significantly decreasing the likelihood of a timeout to occur in any of them. runbot-112694 runbot-112819 Forward-Port-Of: odoo/odoo#196986
[FIX] currency_rate_live: Fix BI service API calls failing. This fix adapts our request to the BI service's "unpublished changes" that require a user agent when making a request to their API. opw-4475353 Forward-Port-Of: odoo/enterprise#78362
Original PR description
[FIX] currency_rate_live: Fix BI service API calls failing. This fix adapts our request to the BI service's "unpublished changes" that require a user agent when making a request to their API. opw-4475353 Forward-Port-Of: odoo/enterprise#78362
Before this commit: When using the sign app, after clicking on a signature field to sign, attempting to drag the signature field away, which is unnecessary and pointless, causes the app to crash. After this commit: Dragging a signed signature field is not possible since it is pointless. The file should remain unchanged, and no crash should occur. Merge Note: This fix should be applied for the branches > 17.0 and before 18.1. It should be ignored by 18.1 and after. task-4489008 Forw
Original PR description
Before this commit: When using the sign app, after clicking on a signature field to sign, attempting to drag the signature field away, which is unnecessary and pointless, causes the app to crash. After this commit: Dragging a signed signature field is not possible since it is pointless. The file should remain unchanged, and no crash should occur. Merge Note: This fix should be applied for the branches > 17.0 and before 18.1. It should be ignored by 18.1 and after. task-4489008 Forward-Port-Of: odoo/enterprise#77325
Steps to reproduce the bug: - Create two storable products “P1” and “P2”: - Tracked by Serial Number - Create a quality control point: - Operation: Receipt - Control per: Quantity - Create a receipt: - 10 units of P1 - 10 units of P2 - Mark it as "To Do." - Open the detailed operation of P1: - Assign two SNs: - SN1 - SN2 - Save. - The “Quantity” field of the P1 move is updated to 2. - Mark the move of P1 as "Picked." - Validate the receipt. - The backorde
Original PR description
Steps to reproduce the bug:
- Create two storable products “P1” and “P2”:
- Tracked by Serial Number
- Create a quality control point:
- Operation: Receipt
- Control per: Quantity
- Create a receipt:
- 10 units of P1
- 10 units of P2
- Mark it as "To Do."
- Open the detailed operation of P1:
- Assign two SNs: - SN1 - SN2 - Save.
- The “Quantity” field of the P1 move is updated to 2.
- Mark the move of P1 as "Picked."
- Validate the receipt.
- The backorder wizard is triggered → Validate it.
Problem:
A wizard to process the quality check is triggered, but 12 quality checks (2 for P1 and 10 for P2) are loaded instead of only 2 for P1.
Expected Behavior:
Quality checks should only be triggered for picked moves
opw-4442564
Forward-Port-Of: odoo/enterprise#76478### Steps to reproduce: - Create a storable product FP tracked by SN with a BOM: - 1 Operation: - instruction: Register Production type (per product) - 1 x Comp (storable product in stock) - Create and confirm an MO for one unit of FP. - Go to the shopfoor app > open the instruction of your operation - Type a non-existing serial number in the search bar > Create "new_sn" > This opens a form view of the stock.lot model - Save and close the new stock.lot > Invalid operation: You
Original PR description
### Steps to reproduce: - Create a storable product FP tracked by SN with a BOM: - 1 Operation: - instruction: Register Production type (per product) - 1 x Comp (storable product in stock) - Create…
### Steps to reproduce:
- Create a storable product FP tracked by SN with a BOM:
- 1 Operation: - instruction: Register Production type (per product)
- 1 x Comp (storable product in stock)
- Create and confirm an MO for one unit of FP.
- Go to the shopfoor app > open the instruction of your operation
- Type a non-existing serial number in the search bar > Create "new_sn"
> This opens a form view of the stock.lot model
- Save and close the new stock.lot
> Invalid operation: You are not allowed to create or edit a lot or serial number for the components with the operation type
> "Manufacturing". To change this, go on the operation type and tick the box "Create New Lots/Serial Numbers for
> Components"
#### Expected behavior:
The invalid operation should not be raised as the "required" option concerns only componenets and not final products.
### Cause of the issue:
Creating a stock lot will first launch a call of the `_check_create`: https://github.com/odoo/odoo/blob/c25d71f14fa168807f07cd88bed805d15db8add5/addons/stock/models/stock_lot.py#L150-L153 However, since this check does not verifies that the product for which we create the lot is indeed related to a component of the MO it will raise the invalid operation even for final products: https://github.com/odoo/odoo/blob/c25d71f14fa168807f07cd88bed805d15db8add5/addons/mrp/models/stock_lot.py#L11-L17
### Issue 2:
Currently, the `quickCreate` ("Create *sn_name*") option of the lot field of te "register production" dialog calls a `name_create` that will set an error message in the logs as the product_id required field can not be provided neither in the vals or the context of the `name_create`. You then fall back on the same form dialog than the "Create and edit". The `quickCreate` option should therefore just be disabled.
Community: https://github.com/odoo/odoo/pull/193965
opw-4452747
---
Forward-Port-Of: odoo/enterprise#78632
Forward-Port-Of: odoo/enterprise#77265Before when sending request to hmrc we had a fraud prevention headers creation but only with part of the data needed, client_data was provided for one of the two request. Another problem was the ips. If we are in a private network we should still send the public IP. task-4387562 Forward-Port-Of: odoo/enterprise#78905 Forward-Port-Of: odoo/enterprise#75383
Original PR description
Before when sending request to hmrc we had a fraud prevention headers creation but only with part of the data needed, client_data was provided for one of the two request. Another problem was the ips. If we are in a private network we should still send the public IP. task-4387562 Forward-Port-Of: odoo/enterprise#78905 Forward-Port-Of: odoo/enterprise#75383
Users manually reconciling foreign currency entries sometimes do not perfectly balance the operation. In this case the system needs to collect the amount residual by currency and propose a write-off. Currently the system will raise a traceback when the residual amount is only in foreign currency Steps to reproduce: - Have a foreign currency (EUR) with exchange rate 36.0 - Have a Journal [JNL] in foreign currency - In [JNL] register a Vendor Payment of amount 51,993.01 EUR (1444.25 USD) -
Original PR description
Users manually reconciling foreign currency entries sometimes do not perfectly balance the operation. In this case the system needs to collect the amount residual by currency and propose a write-off.…
Users manually reconciling foreign currency entries sometimes do not perfectly balance the operation. In this case the system needs to collect the amount residual by currency and propose a write-off. Currently the system will raise a traceback when the residual amount is only in foreign currency
Steps to reproduce:
- Have a foreign currency (EUR) with exchange rate 36.0
- Have a Journal [JNL] in foreign currency
- In [JNL] register a Vendor Payment of amount 51,993.01 EUR (1444.25 USD)
- In [JNL] register a new transaction as follows:
- Foreign currency: USD
- Amount in Currency: 1444.25
- Open Journal Items and select:
- The credit entry from the Vendor Payment
- The debit entry from the transaction
- Reconcile
Issue: A traceback will raise
```
File "[...]/account_accountant/wizard/account_reconcile_wizard.py", line 337, in <genexpr>
residual_values[amls.company_currency_id]['residual']
KeyError: res.currency(1,)
```
opw-4514336
Forward-Port-Of: odoo/enterprise#78735With is Commit : ---------------------------------------------------------- - In the previous implementation, components marked for manual consumption were automatically consumed, like auto-consumed components, when starting production on a manufacturing order (MO). This occurred due to missing logic and conditions in the code that failed to differentiate between manual and automatic component consumption, and it only affected the shop floor operations. - This update corrects the components
Original PR description
With is Commit : ---------------------------------------------------------- - In the previous implementation, components marked for manual consumption were automatically consumed, like auto-consumed components, when starting production on a manufacturing order (MO). This occurred due to missing logic and conditions in the code that failed to differentiate between manual and automatic component consumption, and it only affected the shop floor operations. - This update corrects the components' consumption process and enhances production tracking's reliability, ensuring that manual components are managed according to their intended usage. Task id: 4096514 Community PR: odoo/odoo#175816 Forward-Port-Of: odoo/enterprise#77831
Before this commit, the leaderboard data is fetched even if we are sure the feature is disabled. This commit checks the feature is enabled before getting leaderboard data. task-4509858 Forward-Port-Of: odoo/enterprise#78858
Original PR description
Before this commit, the leaderboard data is fetched even if we are sure the feature is disabled. This commit checks the feature is enabled before getting leaderboard data. task-4509858 Forward-Port-Of: odoo/enterprise#78858
Here [1] compute method does not handle multiple recordsets, The goal here is to handle more than one record at a time. This issue has been resolved in saas-18.1 by this commit [2]. [1] - https://github.com/odoo/enterprise/blob/a07631c9c58ac52866bbeb31fcf2653267190618/planning/models/planning.py#L446 [2] - https://github.com/odoo/enterprise/pull/74265/commits/8771ac92f5e0a08a052ea5ff1c423af6a3de063a Forward-Port-Of: odoo/enterprise#77970
Original PR description
Here [1] compute method does not handle multiple recordsets, The goal here is to handle more than one record at a time. This issue has been resolved in saas-18.1 by this commit [2]. [1] - https://github.com/odoo/enterprise/blob/a07631c9c58ac52866bbeb31fcf2653267190618/planning/models/planning.py#L446 [2] - https://github.com/odoo/enterprise/pull/74265/commits/8771ac92f5e0a08a052ea5ff1c423af6a3de063a Forward-Port-Of: odoo/enterprise#77970