Monday, November 27, 2023
28 changes · master
Enhancements to existing features
The bank reconciliation screens have been visually refreshed as part of the broader Odoo 16 style update. This reduces unnecessary styling code and should make the accounting workflow feel cleaner and more consistent for users.
Original PR description
Requires: - https://github.com/odoo/odoo/pull/94397 Required by: - https://github.com/odoo/enterprise/pull/28792 This commit improves the design and removes unnecessary SCSS. Part of the overall v16 SCSS optimization/restyle, task-2704984. task-2879908
Features or functions removed from Odoo
The older manufacturing order scrap screen in the barcode app has been removed because it was already replaced by the newer shop floor-style digipad view. This reduces duplicated screens and helps keep the manufacturing barcode workflow aligned with the current user experience.
Original PR description
This PR removed the old scrap view for MOs, replaced in 17.0 by the digipad view. The PR that implements this replacement is here: https://github.com/odoo/enterprise/pull/50404 This PR should be merged after #50404 .
Code cleanup and technical improvements
Spreadsheet list and pivot side panels were reorganized to pass the selected item directly instead of storing it through internal commands. This reduces unnecessary internal state and makes the spreadsheet interface easier to maintain, with no intended change to end-user workflows.
Original PR description
There was `SELECT_ODOO_LIST` command that had the list UI plugin store a list id, which could then be fetched with the getter `getSelectedListId`. The getter was only used once (outside the tests): to display the correct list in the list side panel. But this is not even useful, as we can just give the correct list as a props of the side panel. This commit removes the `SELECT_ODOO_LIST` command and its corresponding getter. It also refactor the list side panel, now there is two distinct side panels (one for the list of lists, one for the details). This avoids having to manage a state to determine which list should be displayed. Also take the occasion to remove some left-over JQuery and legacy test utils in the tests. Same stuff for Pivots Task: [3557655](https://www.odoo.com/web#id=3557655&cids=1&model=project.task&view_type=form)
Miscellaneous changes
**Before this PR** Clicking to review an appointment after creating your first resource-based appointment type with onboarding panel still creates a new one. **After this PR** It opens the existing appointment. Task-3503869 Forward-Port-Of: odoo/enterprise#48091
Original PR description
**Before this PR** Clicking to review an appointment after creating your first resource-based appointment type with onboarding panel still creates a new one. **After this PR** It opens the existing appointment. Task-3503869 Forward-Port-Of: odoo/enterprise#48091
Issue: ====== In `Parnter Ledger` report it only shows the primary currency symbols and not the foreign currency (If the bill was in foreign currency) Steps to reproduce the issue: ============================= - Make vendor bill in `Accounting` app in a different currency than the journal - Open `Parnter Ledger` report (`Accounting` app > Reporting > Partner Ledger - The `Amount Currency` field will be debited in the journal currency, not the one you specified. (just a wrong symbol, di
Original PR description
Issue: ====== In `Parnter Ledger` report it only shows the primary currency symbols and not the foreign currency (If the bill was in foreign currency) Steps to reproduce the issue:…
Issue: ====== In `Parnter Ledger` report it only shows the primary currency symbols and not the foreign currency (If the bill was in foreign currency) Steps to reproduce the issue: ============================= - Make vendor bill in `Accounting` app in a different currency than the journal - Open `Parnter Ledger` report (`Accounting` app > Reporting > Partner Ledger - The `Amount Currency` field will be debited in the journal currency, not the one you specified. (just a wrong symbol, digits are fine). - This was due to the transition from version 16.3 > 16.4, in which currency symbols started to appear in the report (in previous versions symbols appeared only if it was a foreign currency), but the logic in the partner ledger remained the same, while the principle of passing a string to the report itself changed. Solution ======== I changed the logic of passing currency in report._build_column_dict by adding currency passing to the function and removing variables that are not used. opw-3584282 Forward-Port-Of: odoo/enterprise#51346 Forward-Port-Of: odoo/enterprise#50361
**Steps to reproduce** Step 1. As a customer, schedule a meeting Step 2. Add extra attendees from the backend through the calendar event Step 3. Now again go to the appointment confirmation page and try to cancel the meeting. -> error(page crash) **Technical** If there are more than 2 attendees in the meeting then the person who is cancelling the meeting should only leave the meeting and his leaving notification should display on the chatter. we are removing the attendee before and t
Original PR description
**Steps to reproduce** Step 1. As a customer, schedule a meeting Step 2. Add extra attendees from the backend through the calendar event Step 3. Now again go to the appointment confirmation page and try to cancel the meeting. -> error(page crash) **Technical** If there are more than 2 attendees in the meeting then the person who is cancelling the meeting should only leave the meeting and his leaving notification should display on the chatter. we are removing the attendee before and then trying to send the message from that attendee, so it is giving a traceback of not finding the record. **After this PR** Now the traceback is gone and user can cancel the meeting. Task-3505659 Forward-Port-Of: odoo/enterprise#51327 Forward-Port-Of: odoo/enterprise#48078
UPS rolled out their REST API with 0Auth credentials and as of June 2023 have stopped issuing new API access keys used by the older SOAP Integration. and as of June 2024, all requests with the old auth will be rejected. The new REST API Integration is added in the new module `delivery_ups_rest` to allow users a period to transition to the new integration. The old module `delivery_ups` is now deprecated and will be deleted in 2024 when it becomes obsolete. taskId: 3349269 COM PR: odoo/o
Original PR description
UPS rolled out their REST API with 0Auth credentials and as of June 2023 have stopped issuing new API access keys used by the older SOAP Integration. and as of June 2024, all requests with the old auth will be rejected. The new REST API Integration is added in the new module `delivery_ups_rest` to allow users a period to transition to the new integration. The old module `delivery_ups` is now deprecated and will be deleted in 2024 when it becomes obsolete. taskId: 3349269 COM PR: odoo/odoo#137713 Github Issue: odoo/odoo#123446 Forward-Port-Of: odoo/enterprise#51304 Forward-Port-Of: odoo/enterprise#43538
Issue: ====== After adding all the values in a sign doucent and then go back to change other fields, clicking in a text field and then clicking on another will make the sign & validate button unresponsive. Steps to reproduce the issue: ============================= - install sign - send a sign request to a customer , the sign document should have at least 2 text fields - - Open the sent link using mobile display and add all tha values but do not validate - Click on any text field - C
Original PR description
Issue: ====== After adding all the values in a sign doucent and then go back to change other fields, clicking in a text field and then clicking on another will make the sign & validate button…
Issue: ====== After adding all the values in a sign doucent and then go back to change other fields, clicking in a text field and then clicking on another will make the sign & validate button unresponsive. Steps to reproduce the issue: ============================= - install sign - send a sign request to a customer , the sign document should have at least 2 text fields - - Open the sent link using mobile display and add all tha values but do not validate - Click on any text field - Click on another text field and click next - Clicking on the button validate will do nothing. Origin of the issue: ==================== Toggling between text fields will remove `show` class from the old bottom sheet and add it to the new one. but when closing the new one , the old one will still exist but we can't see it because it doesn't have the class `show` but it's display is still `block` , that's why clicking on the button validate woudln't work , it's below the div of the bottom sheet. Solution: ========= Removing the manual style as block and adding it to the show class so it will be updated automatically when we add/remove the class. opw-3477410 opw-3511365m Forward-Port-Of: odoo/enterprise#51526 Forward-Port-Of: odoo/enterprise#51377
minor mistake. `_create_starting_transfer_log` method defined on `sale.order.log` model but given wrong reference by mistake to `sale_subscription`. so got error during upgrade database ``` File "/home/odoo/src/enterprise/17.0/sale_subscription/models/sale_order_log.py", line 132, in _create_mrr_log return sub._create_starting_transfer_log(sub, values.copy()) AttributeError: 'sale.order' object has no attribute '_create_starting_transfer_log' ``` Forward-Port-Of: odoo/enterprise#5
Original PR description
minor mistake. `_create_starting_transfer_log` method defined on `sale.order.log` model but given wrong reference by mistake to `sale_subscription`. so got error
during upgrade database
```
File "/home/odoo/src/enterprise/17.0/sale_subscription/models/sale_order_log.py", line 132, in _create_mrr_log
return sub._create_starting_transfer_log(sub, values.copy())
AttributeError: 'sale.order' object has no attribute '_create_starting_transfer_log'
```
Forward-Port-Of: odoo/enterprise#51549As this community PR https://github.com/odoo/odoo/pull/143348 is removing the rounding on unit price amount, some tests have to be adapted. opw-3509940 Forward-Port-Of: odoo/enterprise#51469
Original PR description
As this community PR https://github.com/odoo/odoo/pull/143348 is removing the rounding on unit price amount, some tests have to be adapted. opw-3509940 Forward-Port-Of: odoo/enterprise#51469
Steps ===== - Open app Project - In settings of Project activate task dependencies - Open a project with dependencies between task (e.g. research and development in demo data) - Go to the Gantt view of the tasks of this project in mobile view (or with as small window) - Deactivate all filters to ensure that tasks with dependencies appear in the current view - Switch to desktop view (or resize the window) Issue ===== A traceback appears indicating "Cannot read properties of undefined
Original PR description
Steps ===== - Open app Project - In settings of Project activate task dependencies - Open a project with dependencies between task (e.g. research and development in demo data) - Go to the Gantt view…
Steps ===== - Open app Project - In settings of Project activate task dependencies - Open a project with dependencies between task (e.g. research and development in demo data) - Go to the Gantt view of the tasks of this project in mobile view (or with as small window) - Deactivate all filters to ensure that tasks with dependencies appear in the current view - Switch to desktop view (or resize the window) Issue ===== A traceback appears indicating "Cannot read properties of undefined (reading '__pill__1')". Cause ===== The connections between dependent pill is only displayed if the user is not in mobile view. To avoid unecessary memory allocation, some variable used to manage the connections display (e.g. mappingPillToConnectors), are only declared if the user is not in mobile view. However, when resizing the window (or leaving mobile view), the onWillRender method is called and can make use of those variables if the connections need to be displayed. This create the traceback are those variables have not been declared. Fix === The method computeDerivedParams used to manage such variable declaration is called in the onWillRender method under the condition that connectors were not present in the previous render (i.e. it was in mobile view). Forward-Port-Of: odoo/enterprise#50525 Forward-Port-Of: odoo/enterprise#48107
1) Steps: - Install sale,timesheet and helpdesk app. - Add a timesheet and validate it. Issue: - Some field are not read-only even though timesheets are validated. Cause: - After this PR-https://github.com/odoo/enterprise/pull/24609 some of read-only attrs overridden by invisible attrs. Fix: - Add read-only attrs with invisible attrs in inherited views. 2) Before this commit user avatar and it's label are not correctly aligned. This commit align label and avatar by giving
Original PR description
1) Steps: - Install sale,timesheet and helpdesk app. - Add a timesheet and validate it. Issue: - Some field are not read-only even though timesheets are validated. Cause: - After this PR-https://github.com/odoo/enterprise/pull/24609 some of read-only attrs overridden by invisible attrs. Fix: - Add read-only attrs with invisible attrs in inherited views. 2) Before this commit user avatar and it's label are not correctly aligned. This commit align label and avatar by giving padding to to label of avatar. 3) Step: - Install planning. - Go to form view of shift. Issue: - Percentage field has more width than needed. Cause: - `oe_inline` give mw inherit to float field. Fix: - Added `o_field_percentage` class to get 7ch width same as percentage field. task-3282848 Forward-Port-Of: odoo/enterprise#51522 Forward-Port-Of: odoo/enterprise#37155
**Steps:** - Open Timesheet - In Grid View apply groupby - Switch to List View or Kanban View - Click on the start timer **Issue:** - on click of the start timer, we get a traceback **Cause:** - Due to some missing fields, the function is not able to get the correct values and so the values appear to be undefined. This is mainly because the parameters are wrongly passed. When the view is normally loaded, commonRecordParams are passed but when groupby is applied, commonGroupParams sho
Original PR description
**Steps:** - Open Timesheet - In Grid View apply groupby - Switch to List View or Kanban View - Click on the start timer **Issue:** - on click of the start timer, we get a traceback **Cause:** - Due to some missing fields, the function is not able to get the correct values and so the values appear to be undefined. This is mainly because the parameters are wrongly passed. When the view is normally loaded, commonRecordParams are passed but when groupby is applied, commonGroupParams should be applied as it has some extended parameters. **Fix:** - passing commonGroupParams along with commonRecordParams so that we do not get the undefined values. task-3422009 Forward-Port-Of: odoo/enterprise#50095 Forward-Port-Of: odoo/enterprise#44063
The [refactoring] of knowledge macros introduced 2 kinds of errors that are fixed in this work: 1) An infinite loop during a macro if a Knowledge article is accessed by going back in the breadcrumbs from any Form view (the macro button should not be visible in that case since the controller of the Form view is not accessible after going back). 2) An error saying that the "record can not be found" whilst the macro is actually succeeding in loading the correct record, that is caused by
Original PR description
The [refactoring] of knowledge macros introduced 2 kinds of errors that are fixed in this work: 1) An infinite loop during a macro if a Knowledge article is accessed by going back in the breadcrumbs from any Form view (the macro button should not be visible in that case since the controller of the Form view is not accessible after going back). 2) An error saying that the "record can not be found" whilst the macro is actually succeeding in loading the correct record, that is caused by the fact that an embedded view in an article can have breadcrumbs that make the macro advance too fast. See each commit for more details. [refactoring]: https://github.com/odoo/enterprise/commit/1fc6c7ef19462eda0cacfccb242f88e495f8ab1f task-3598754 Forward-Port-Of: odoo/enterprise#50779
The newly added widget for file generation error added in this commit https://github.com/odoo/enterprise/commit/49c9dc9151435fddfc2e3b62ad397015f144a7b6 needs a minor fix to be able to handle methods that have multiple arguments. task-3610890 Forward-Port-Of: odoo/enterprise#51456
Original PR description
The newly added widget for file generation error added in this commit https://github.com/odoo/enterprise/commit/49c9dc9151435fddfc2e3b62ad397015f144a7b6 needs a minor fix to be able to handle methods that have multiple arguments. task-3610890 Forward-Port-Of: odoo/enterprise#51456
This fix makes the helper of the closing entry button of the tax report be markuped as it is currently not the case and its content is in plain text. Forward-Port-Of: odoo/enterprise#51318 Forward-Port-Of: odoo/enterprise#50914
Original PR description
This fix makes the helper of the closing entry button of the tax report be markuped as it is currently not the case and its content is in plain text. Forward-Port-Of: odoo/enterprise#51318 Forward-Port-Of: odoo/enterprise#50914
In this commit (https://github.com/odoo/enterprise/commit/6c570325dc64adba441c748d834cee2c0fe488b7), there has been a changed in the options of reports and the consolidation report was impacted. In the PR, we will come back to the behavior of the 16.3 version task: 3471071 Forward-Port-Of: odoo/enterprise#51430 Forward-Port-Of: odoo/enterprise#46076
Original PR description
In this commit (https://github.com/odoo/enterprise/commit/6c570325dc64adba441c748d834cee2c0fe488b7), there has been a changed in the options of reports and the consolidation report was impacted. In the PR, we will come back to the behavior of the 16.3 version task: 3471071 Forward-Port-Of: odoo/enterprise#51430 Forward-Port-Of: odoo/enterprise#46076
WhatsApp category was shown in Discuss app sidebar in desktop, but was not visible in the bottom navbar in mobile. Part of Task-3525542 opw-3580979 Forward-Port-Of: odoo/enterprise#51393
Original PR description
WhatsApp category was shown in Discuss app sidebar in desktop, but was not visible in the bottom navbar in mobile. Part of Task-3525542 opw-3580979 Forward-Port-Of: odoo/enterprise#51393
Issue: This SQL query is slow when an user has a big quantity of account move lines and products. Analyze: In this query it joins the table of account_move_line with product_product to check if the product is active which is causing the slowness. The issue is that the CTEs are inlined by the planner due to this Postgres commit : postgres/postgres@608b167f. The source and ranking CTE become a single SQL query and thus the tsvector Filter is run on all the account_move_line instead of th
Original PR description
Issue: This SQL query is slow when an user has a big quantity of account move lines and products. Analyze: In this query it joins the table of account_move_line with product_product to check if the…
Issue: This SQL query is slow when an user has a big quantity of account move lines and products. Analyze: In this query it joins the table of account_move_line with product_product to check if the product is active which is causing the slowness. The issue is that the CTEs are inlined by the planner due to this Postgres commit : postgres/postgres@608b167f. The source and ranking CTE become a single SQL query and thus the tsvector Filter is run on all the account_move_line instead of the query limitation number. To solve the planner has to execute the first query (first_source) and then the second (source) on the result of first_source. Fix: In order to force the planner to make the limit on account_move_line a MATERIALIZED view has been used. (https://www.postgresql.org/docs/current/queries-with.html#QUERIES-WITH-CTE-MATERIALIZATION) Note: MATERIALIZED views have been implemented on PSQL 12. But all Odoo's internal servers (both Odoo.sh and SaaS) haven't any server running a previous version. Benchmark: | # Input data | Before PR | After PR | |:-------------:|:----------:|:---------:| | 3M AML | 28.579 s | 59.4 ms | | 47 AML (demo data) | 1.262ms (planning) + 0.682 ms (execution) | 5.289 ms + 0.994 ms | Related task: opw-3539632 (Query and Planners are available in the task) Forward-Port-Of: odoo/enterprise#51211 Forward-Port-Of: odoo/enterprise#50911
Purpose ======== Update demo data to better show what Appointment can do. Specification ============== 1). Changing the capacity of some tables -> Tables 1-4 => from 4 to 2. -> Tables 9-11 => from 4 to 6. 2). Main Floor Tables -> Linking all main floor tables to main floor table 1. 3). Changing the name of the Table 12 -> Table 12 (Patio) to 12-Patio (4). 4). Changing the resource name -> Table 3 (2) to Table 3 (🪑2) Technical ========== For the 3rd point, the eval was
Original PR description
Purpose ======== Update demo data to better show what Appointment can do. Specification ============== 1). Changing the capacity of some tables -> Tables 1-4 => from 4 to 2. -> Tables 9-11 => from 4 to 6. 2). Main Floor Tables -> Linking all main floor tables to main floor table 1. 3). Changing the name of the Table 12 -> Table 12 (Patio) to 12-Patio (4). 4). Changing the resource name -> Table 3 (2) to Table 3 (🪑2) Technical ========== For the 3rd point, the eval was not given correctly so the name of the table changed from 12-Patio to Table 12 (Patio). Task-3496910 Forward-Port-Of: odoo/enterprise#48438
This traceback arises when the user tries to click on Recent in Softphone To reproduce this issue: 1. Install `VoIP` 2. Open `Discuss/Softphone/Recent` 3. Try to search for something in the Voip search bar Error: ``` ValueError: too many values to unpack (expected 3) File "odoo/http.py", line 2157, in __call__ response = request._serve_db() File "odoo/http.py", line 1732, in _serve_db return service_model.retrying(self._serve_ir_http, self.env) File "odoo/service
Original PR description
This traceback arises when the user tries to click on Recent in Softphone To reproduce this issue: 1. Install `VoIP` 2. Open `Discuss/Softphone/Recent` 3. Try to search for something in the Voip…
This traceback arises when the user tries to click on Recent in Softphone
To reproduce this issue:
1. Install `VoIP`
2. Open `Discuss/Softphone/Recent`
3. Try to search for something in the Voip search bar
Error:
``` ValueError: too many values to unpack (expected 3)
File "odoo/http.py", line 2157, in __call__
response = request._serve_db()
File "odoo/http.py", line 1732, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "odoo/service/model.py", line 133, in retrying
result = func()
File "odoo/http.py", line 1759, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 1960, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "addons/website/models/ir_http.py", line 235, in _dispatch
response = super()._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 207, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 722, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/web/controllers/dataset.py", line 24, in call_kw
return self._call_kw(model, method, args, kwargs)
File "addons/web/controllers/dataset.py", line 20, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "odoo/api.py", line 462, in call_kw
result = _call_kw_model(method, model, args, kwargs)
File "odoo/api.py", line 435, in _call_kw_model
result = method(recs, *args, **kwargs)
File "home/odoo/src/enterprise/17.0/voip/models/voip_call.py", line 85, in get_recent_phone_calls
return self.search(domain, offset=offset, limit=limit, order="create_date DESC")._format_calls()
File "odoo/models.py", line 1604, in search
return self.search_fetch(domain, [], offset=offset, limit=limit, order=order)
File "odoo/models.py", line 1627, in search_fetch
query = self._search(domain, offset=offset, limit=limit, order=order or self._order)
File "odoo/models.py", line 5366, in _search
query = self._where_calc(domain)
File "odoo/models.py", line 5081, in _where_calc
return expression.expression(domain, self).query
File "odoo/osv/expression.py", line 788, in __init__
self.expression = domain_combine_anies(domain, model)
File "odoo/osv/expression.py", line 597, in domain_combine_anies
domain_any = _anyfy_leaves(domain, model)
File "odoo/osv/expression.py", line 371, in _anyfy_leaves
left, operator, right = item = tuple(item)
```
When the user tries to search for something in the search bar an invalid domain format is formed in `get_recent_phone_call`method. Which leads to the traceback from here
https://github.com/odoo/enterprise/blob/5c42708683905cfb5fe8c1005aabbbc9fb016fa2/voip/models/voip_call.py#L79-L85
After applying this commit will resolve the issue by giving a valid domain format to search.
sentry-4644858097
Forward-Port-Of: odoo/enterprise#51276This commit does 2 things: - avoids an error occurring when scanning a source location that has no (remaining) reserved qtys at that location to scan. Issue was due to: https://github.com/odoo/enterprise/blob/61d3aa2d4ba7540803b88ca4f426e6ee6503e8dd/stock_barcode/static/src/models/barcode_picking_model.js#L165 still being used by barcode_mrp_model, but this.needSourceConfirmation is set to `false` in the mrp model, so an error is thrown because booleans don't have an index. O
Original PR description
This commit does 2 things: - avoids an error occurring when scanning a source location that has no (remaining) reserved qtys at that location to scan. Issue was due to:…
This commit does 2 things:
- avoids an error occurring when scanning a source location that has no
(remaining) reserved qtys at that location to scan. Issue was due to:
https://github.com/odoo/enterprise/blob/61d3aa2d4ba7540803b88ca4f426e6ee6503e8dd/stock_barcode/static/src/models/barcode_picking_model.js#L165
still being used by barcode_mrp_model, but this.needSourceConfirmation
is set to `false` in the mrp model, so an error is thrown because
booleans don't have an index. Originally it was thought this
(picking) feature wasn't wanted for MOs, but this has been
reconsidered and we now want it (afterall, it is better to have
consistent behavior).
Note that in order to add this check in, the _createNewLine in MOs had
to be adjusted so that the assignment of the final product for an MO
created from scratch occurred before the check:
https://github.com/odoo/enterprise/blob/57986a41fb80deecd7c4d2a374afa801bc44a507/stock_barcode/static/src/models/barcode_picking_model.js#L51
because the this.location will throw a cache error due to there being
no default location to find (i.e. there are no locations for the MO
yet). No tests were added for this because existing tours already
failed when creating MOs from scratch.
Steps to reproduce:
- activate multi-locations + set barcode setting for manufacture
picking type: `restrict_scan_source_location`=`mandatory`
- create 2 products, 1 with stock in WH/Stock, the other with stock in
WH/Stock/Shelf 1, both with barcodes
- create MO using those 2 products + reserve
- open MO in barcode, scan "Shelf 1" barcode + scan component in that
loc
- scan "WH/Stock"
expected result: should switch source locations + should be able to
scan the other component
actual result: JS error
- adds in a test to avoid the same mistake that is fixed in the COM PR
of this branch. Existing test has been redone so the test includes:
+ the above location switching scanning (to scan a non-reserved
component)
+ the mandatory consumption check
+ the original test of scanning a diff lot than the one already
reserved
COM PR: https://github.com/odoo/odoo/pull/142933
Forward-Port-Of: odoo/enterprise#51171In barcode app, we need to apply a responsible filter for manufacturing orders. Only MO that are assigned to the user or unassigned should be displayed. task-3547356 Forward-Port-Of: odoo/enterprise#49802
Original PR description
In barcode app, we need to apply a responsible filter for manufacturing orders. Only MO that are assigned to the user or unassigned should be displayed. task-3547356 Forward-Port-Of: odoo/enterprise#49802
Currently in barcode app, you are limited to scan sub location of the picking. However in some cases, you would like to move the picking to another zone than initialy plan. Forward-Port-Of: odoo/enterprise#49814
Original PR description
Currently in barcode app, you are limited to scan sub location of the picking. However in some cases, you would like to move the picking to another zone than initialy plan. Forward-Port-Of: odoo/enterprise#49814
task-3568861 See also: - https://github.com/odoo/odoo/pull/139556 Forward-Port-Of: odoo/enterprise#50783 Forward-Port-Of: odoo/enterprise#49894
Original PR description
task-3568861 See also: - https://github.com/odoo/odoo/pull/139556 Forward-Port-Of: odoo/enterprise#50783 Forward-Port-Of: odoo/enterprise#49894