Wednesday, June 21, 2023
53 changes · master
Enhancements to existing features
This change removes leftover code in the Point of Sale area that was no longer being used after a previous update. It reduces unnecessary maintenance burden without changing how users interact with the system.
Original PR description
before this commit, in point_of_sale module a super call is made for the function _get_reconciled_vals , but this function has been removed/changed in this commit: https://github.com/odoo/odoo/commit/785d49f3f0a21720d8c929d597d4041918ab7f41 currently this is deadcode and not called from any where and left over during this: https://github.com/odoo/odoo/commit/785d49f3f0a21720d8c929d597d4041918ab7f41 after this commit, the dead function will be removed. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Survey print actions now open in a new window so appraisal-related survey flows work more smoothly. This improves the user experience when surveys are reused within employee appraisal processes.
Original PR description
see odoo/enterprise#37387
The e-invoicing banner text has been shortened so it fits on one line. This makes the message easier to read and reduces visual clutter for users working with invoices.
Original PR description
Goal of this pr is to improve the banner on top of all e-invoicing by shorten the text and make it one line task:3374897 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update adds a missing description to the Mexican EDI Extended module manifest. It improves clarity for users and administrators reviewing the module, without changing business workflows or functionality.
Original PR description
There is no description in the current manifest. This proposed change is to add this description to the manifest.
The appraisal survey screens have been adjusted to better match the employee appraisal workflow. Unused survey buttons are hidden and view names are clarified, making the appraisal process cleaner and easier for users to navigate.
Original PR description
remove buttons not used in appraisal flow and rename views https://www.odoo.com/web#id=3127424&menu_id=4720&cids=1&action=333&active_id=1251&model=project.task&view_type=form
Helpdesk team labels have been updated to say “Helpdesk Team” instead of the more generic “Team.” This makes it easier for users to distinguish helpdesk teams from teams used in other Odoo apps such as Sales, CRM, Maintenance, or Quality.
Original PR description
Several apps in odoo have the notion of team (crm/sales, maintenance, quality...). We need to differentiate helpdesk teams from the other kind of teams. task-3251737
Contract templates now hide fields and actions that are only relevant when an employee is linked. This reduces empty information and unnecessary options, making the template view clearer for HR users.
Original PR description
A contract is a template when there is no employee linked to it, so the employee, payslips column of the view will always be empty and the index contract button should not need to be there, we hide it. task-3343545
Odoo Studio now shows the disable creation and disable opening settings for partner and product configurator selection fields. This gives users the same configuration controls across related field types, improving consistency when customizing forms.
Original PR description
PURPOSE
In Studio, the 'Disable creation' (no_create) and 'Disable opening' (no_open) options have been made available in the configuration tab of many2one widgets.
The purpose of this task is simply to also displayed those options for the following two widgets that inherit from the many2one widget:
res_partner_many2one
product_configurator
SPECIFICATION
In the studio configuration tab, add the 'Disable creation' (no_create) and 'Disable opening' (no_open) options to the res_partner_many2one and product_configurator widgets.
TASK 2608073Resolved issues and error corrections
This change removes obsolete HR code that was no longer responsible for opening employee chats. The existing chat widget continues to handle the feature, reducing maintenance risk without changing the user experience.
Original PR description
OpenChat feature in `hr` is managed by the view widget "hr_employee_chat", which is added in kanban template. The override of Kanban View to add openChat feature is not called at all, so this commit removes this dead code, and the js_class, as its only purpose was adding openChat. https://github.com/odoo/enterprise/pull/42897
Features or functions removed from Odoo
Outdated code in the HR and Time Off areas has been removed after being previously deprecated. This keeps the system cleaner and easier to maintain, with low expected impact on day-to-day users.
Original PR description
Remove deprecated code from odoo/odoo#96545
Miscellaneous changes
After preventing "async" code on link tools update in [1], the `'link_tools'` test is still failing because of another race condition issue: The click on "save" after setting the link style to secondary triggers an event handler that destroys the link tools widget (see `Wysiwyg` > `destroyLinkTools()`), leading to calling the `_removeHintClasses()` method first (both `_addHintClasses()` and `_removeHintClasses()` will disable the editor observer while adding / removing the link hint cl
Original PR description
After preventing "async" code on link tools update in [1], the `'link_tools'` test is still failing because of another race condition issue: The click on "save" after setting the link style to…
After preventing "async" code on link tools update in [1], the `'link_tools'` test is still failing because of another race condition issue: The click on "save" after setting the link style to secondary triggers an event handler that destroys the link tools widget (see `Wysiwyg` > `destroyLinkTools()`), leading to calling the `_removeHintClasses()` method first (both `_addHintClasses()` and `_removeHintClasses()` will disable the editor observer while adding / removing the link hint class to prevent their mutations to be recorded...). Since the observer is inactive, the changes made to the link using the link tools will not be processed, and the block will not be set as `.o_dirty`. As mentioned previously, (and starting from [2]) the editor observer is inactive (while handling the `.oe_edited_link` class) in order to prevent recording the mutations... But since [3], the editor had the ability to prevent some classes (including `.oe_edited_link`) from being taken into consideration in the `filterMutationRecords()` method... The goal of this commit is to fix this race condition issue by simply keeping the observer activated while handling the link hint class... Remarks: - These changes are supposed to fix the `link_tools` test that fails on 16.0+, but 15.0 was targeted here since the `.oe_edited_link` class is ignored by the editor starting from 15.0 and also to prevent any future issue linked to disabling the observer... - Adding and removing the `active` class should not affect the history, since it targets the `linktTools` toolbar button... [1]: https://github.com/odoo/odoo/pull/109250/commits/f42715fdc89a6a88446c5f88ecec29e6a9c96fe1 [2]: https://github.com/odoo/odoo/pull/90064/commits/26377710a6e3ad61a8c266e9f7c0b8ade98f657d [3]: https://github.com/odoo/odoo/commit/1c25ddb42393b136cac2a0ee0b9b7280fd803e7d runbot-18747 Forward-Port-Of: odoo/odoo#121622
A naming mismatch introduced during refactoring has been corrected in the preparation display. This helps ensure the point-of-sale preparation screen opens and works as expected without disruption.
Original PR description
During refactoring, a template name adaptation was forgotten. The error has now been corrected.
The appraisal area no longer includes unused code for opening employee chats, since that chat feature is already handled elsewhere. This reduces maintenance complexity without changing how users interact with appraisals or chats.
Original PR description
OpenChat feature in `hr` is managed by the view widget "hr_employee_chat", which is added in kanban template. The override of Kanban View to add openChat feature is not called at all, so this commit removes this dead code, and the js_class, as its only purpose was adding openChat. https://github.com/odoo/odoo/pull/125753
This update adds coverage to ensure the app name field is automatically ready for typing when users create a new app in Studio. It helps prevent a small usability regression where users had to manually click the input before entering the app name.
Original PR description
PURPOSE since commit: ff870d8 autofocus hook was not working in some cases for example: open studio -> create new app -> dialog to enter app name is displayed but input do not have focus. SPEC Revert commit and move to the previous implementation for autofocus hook which was working without checking dependency computation. TASK 2610975
The recruitment time-in-stage report now skips deleted stage references instead of failing when historical chatter points to a removed stage. This keeps reporting available even after recruitment stages are cleaned up or reorganized.
Original PR description
Time in stage analysis report bases itself on stage changes in the mail chatter. If you delete a stage, it will search for the lost reference and crash. Solution is to ignore the column if it does not exist anymore. task 3358569
Opening a report in Studio no longer crashes when there are no records available to preview. Instead, users see a clear warning notification, helping them understand the issue without encountering an error screen.
Original PR description
PURPOSE When opening a report in the studio when there is no record available then the studio throws traceback because current implementation of the report the editor assumes that there will always be a record to show in the report but there can be a case when there is no record and the user opens the report editor from the studio. SPEC When there is no record and the user tries to open the report editor from the studio then it should show danger notification. TASK 2612024
Upgrading the chart template will point or create xmlid to existing records to avoid duplicate account group for `code_prefix_start` which will raise validationError ``` Account Groups with the same granularity can\'t overlap ``` 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#125255
Original PR description
Upgrading the chart template will point or create xmlid to existing records to avoid duplicate account group for `code_prefix_start` which will raise validationError ``` Account Groups with the same granularity can\'t overlap ``` 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#125255
It is a tradeoff since we will add extra requests in case of 404 to check if a redirect exists. But it will allow to redirect old unlinked record to a new record. Until now, if you delete e.g. a product instead to archive it, you have no way to redirect old url to the new product. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125746
Original PR description
It is a tradeoff since we will add extra requests in case of 404 to check if a redirect exists. But it will allow to redirect old unlinked record to a new record. Until now, if you delete e.g. a product instead to archive it, you have no way to redirect old url to the new product. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125746
Because if a tag is still linked to a tax, then it's probably also still referenced in a tax report line, and it makes no sense allowing to delete such a tag Supposedly, it will also reduce the number of useless sentry reports we have to deal with --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125654 Forward-Port-Of: odoo/odoo#124789
Original PR description
Because if a tag is still linked to a tax, then it's probably also still referenced in a tax report line, and it makes no sense allowing to delete such a tag Supposedly, it will also reduce the number of useless sentry reports we have to deal with --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125654 Forward-Port-Of: odoo/odoo#124789
When notification type is set as sms we need to check whether the template which is referenced is coming from a correct model or not. Applying this commit will fix this issue. Enterprise PR: https://github.com/odoo/enterprise/pull/41322 sentry-4195133685 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125709 Forward-Port-Of: odoo/odoo#122026
Original PR description
When notification type is set as sms we need to check whether the template which is referenced is coming from a correct model or not. Applying this commit will fix this issue. Enterprise PR: https://github.com/odoo/enterprise/pull/41322 sentry-4195133685 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125709 Forward-Port-Of: odoo/odoo#122026
Forward-Port-Of: odoo/odoo#125795
Original PR description
Forward-Port-Of: odoo/odoo#125795
Prior to this commit, when using the "Slide Hover" reveal effect on the footer, Safari would glitch it scrolls and could result in unreadable content. Note that this seems to happen only at certain resolutions (1024x768). After this commit, the glitches will still happen as it seems to be a bug on Safari's side but once scrolling events stop arriving, we force a repaint to ensure all the content is readable. task-3302302 Forward-Port-Of: odoo/odoo#122029
Original PR description
Prior to this commit, when using the "Slide Hover" reveal effect on the footer, Safari would glitch it scrolls and could result in unreadable content. Note that this seems to happen only at certain resolutions (1024x768). After this commit, the glitches will still happen as it seems to be a bug on Safari's side but once scrolling events stop arriving, we force a repaint to ensure all the content is readable. task-3302302 Forward-Port-Of: odoo/odoo#122029
We have introduced a new tag `website_nightly` which is linked to a custom build on the nightly. It has been introduced with this commit [1]. The goal is to extract the `external` tagged tests linked to the website app to another special build linked to the website team. Otherwise, we would not see when the test fail, as the `external` build of the nightly is always red and we don't check why all the time. Encapsulating this in a new build and linking to our team means that whenever the t
Original PR description
We have introduced a new tag `website_nightly` which is linked to a custom build on the nightly. It has been introduced with this commit [1]. The goal is to extract the `external` tagged tests linked…
We have introduced a new tag `website_nightly` which is linked to a custom build on the nightly. It has been introduced with this commit [1]. The goal is to extract the `external` tagged tests linked to the website app to another special build linked to the website team. Otherwise, we would not see when the test fail, as the `external` build of the nightly is always red and we don't check why all the time. Encapsulating this in a new build and linking to our team means that whenever the test fail in a nightly, we will be visually warned on the runbot homepage by a red warning, see screenshot on the PR of this commit. Sadly, before 16.4, as there is not yet `website_nightly` tours, the build is considered failed, showing the error. Another solution would have been to somehow disable this tour on Odoo versions < 16.4 but it we opted for this solution as: - It's simpler, no need to add yet another custom stuff in runbot - It will work out of the box should be introduce such a test in those versions: we won't need to ask runbot to activate the test in another version, should we even think about it.. [1]: https://github.com/odoo/odoo/commit/a0d0afb20594aa103eb1d0476d53012b9821e861 ------------ The warning / error show to our team for this build is the following:  Spec: https://discord.com/channels/678381219515465750/704997651833159831/1118887457581187112 Forward-Port-Of: odoo/odoo#125676 Forward-Port-Of: odoo/odoo#125662
Follow the same behavior than project. Only import the code for the views. It's not a good idea to import all the backend since it's not needed and it could cause issue with extra features 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#118667 Forward-Port-Of: odoo/odoo#117494
Original PR description
Follow the same behavior than project. Only import the code for the views. It's not a good idea to import all the backend since it's not needed and it could cause issue with extra features 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#118667 Forward-Port-Of: odoo/odoo#117494
When picking a mailing template, the size of the contents of the iframe changes but we failed to signal it so the iframe could resize as well. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125740
Original PR description
When picking a mailing template, the size of the contents of the iframe changes but we failed to signal it so the iframe could resize as well. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125740
When converting inline svg shapes to images, we checked if the source ended with ".svg", which is not enough, as it can include query parameters (eg, .svg?color=red). We now simply check if it includes ".svg" instead. We also need to make sure we didn't make a clone of the image in an mso before converting it, as the source wouldn't get converted in the mso. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125764
Original PR description
When converting inline svg shapes to images, we checked if the source ended with ".svg", which is not enough, as it can include query parameters (eg, .svg?color=red). We now simply check if it includes ".svg" instead. We also need to make sure we didn't make a clone of the image in an mso before converting it, as the source wouldn't get converted in the mso. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125764
To reproduce: 1- Activate dropshipping from settings 2- Create lot tracked product and enable dropship route 3- Add a vendor in product purchase tab 4- Create a SO with the product and confirm 5- Go to generated PO and confirm 6- Go to generated dropship transfer linked to SO /PO 7- Enter a lot name for the product move line validate 8- Go to 'Inventory>Products>Lots/Serial Numbers' 9- Expand the dropshipped product, find the serial number used in dropship 10- Show the 'Transfer T
Original PR description
To reproduce: 1- Activate dropshipping from settings 2- Create lot tracked product and enable dropship route 3- Add a vendor in product purchase tab 4- Create a SO with the product and confirm 5- Go to generated PO and confirm 6- Go to generated dropship transfer linked to SO /PO 7- Enter a lot name for the product move line validate 8- Go to 'Inventory>Products>Lots/Serial Numbers' 9- Expand the dropshipped product, find the serial number used in dropship 10- Show the 'Transfer To' field if not visible, you will find it empty Expected: The 'Transfer To' field should have the last partner the serial was delivered to, in this case the customer in the SO This commit fixes the issue and adds a test (also imporves the test class) opw-3225342 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#125783 Forward-Port-Of: odoo/odoo#123242
Commit 1e82e2731b03e adds cogs account move lines for 'ship later' config at the picking validation. The issue appears if the delivery flow is in multiple steps. The account move lines will be created for each pickings. This commit ensure the last one actually create the aml only opw: 3324972 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 a
Original PR description
Commit 1e82e2731b03e adds cogs account move lines for 'ship later' config at the picking validation. The issue appears if the delivery flow is in multiple steps. The account move lines will be created for each pickings. This commit ensure the last one actually create the aml only opw: 3324972 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#125657 Forward-Port-Of: odoo/odoo#123152
978d0905 forgot to implement some changes in the module, making it unusable This finishes the implementation 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#125765
Original PR description
978d0905 forgot to implement some changes in the module, making it unusable This finishes the implementation 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#125765
cf commits Forward-Port-Of: odoo/odoo#124373 Forward-Port-Of: odoo/odoo#123692
Original PR description
cf commits Forward-Port-Of: odoo/odoo#124373 Forward-Port-Of: odoo/odoo#123692
When the user click on the 'import' button without lots in the import serial/lots wizard in stock then this issue is generated. Steps to reproduce: - Install Inventory. - Inventory >> Operations >> Receipts >> create the new Receipt - Add product to the receipt which has tracking 'by lots', Save the Receipts - Click on the button in a tree view which opens the detailed operation wizard, And click on Import Serial/Lots in it - In Import Serial/ Lots wizard click on the import butt
Original PR description
When the user click on the 'import' button without lots in the import serial/lots wizard in stock then this issue is generated. Steps to reproduce: - Install Inventory. - Inventory >> Operations >>…
When the user click on the 'import' button without lots in the import serial/lots wizard in stock then this issue is generated.
Steps to reproduce:
- Install Inventory.
- Inventory >> Operations >> Receipts >> create the new Receipt
- Add product to the receipt which has tracking 'by lots',
Save the Receipts
- Click on the button in a tree view which opens the detailed operation wizard,
And click on Import Serial/Lots in it
- In Import Serial/ Lots wizard click on the import button without passing any
value in the lots field
- Traceback will be generated
Traceback:
```TypeError: argument of type 'bool' is not iterable
File "odoo/http.py", line 2114, in __call__
response = request._serve_db()
File "odoo/http.py", line 1699, 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 1726, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 1921, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 190, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 716, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/web/controllers/dataset.py", line 34, in call_button
action = self._call_kw(model, method, args, kwargs)
File "addons/web/controllers/dataset.py", line 26, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "odoo/api.py", line 461, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "odoo/api.py", line 448, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "addons/stock/wizard/stock_import_lot.py", line 20, in action_import_lot
self.move_id._import_lots(self.lots, location_id=self.location_dest_id)
File "addons/stock/models/stock_move.py", line 934, in _import_lots
if (breaking_char not in lots and separation_char not in lots and ';' not in lots):
```
Applying these changes will resolve this issue.
sentry-4244975188
Forward-Port-Of: odoo/odoo#125029When the user will not get an HTTP response as 200 while retrieving the location using OpenStreetMap Nominatim service, the logger error will occur. See this logger error message: ``` Request to openstreetmap failed. Code: 502 Content: b'<html>\r\n<head><title>502 Bad Gateway</title></head>\r\n<body>\r\n<center><h1>502 Bad Gateway</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n' ``` The logger is updated to use the 'warning' level instead of the 'error' level. Th
Original PR description
When the user will not get an HTTP response as 200 while retrieving the location using OpenStreetMap Nominatim service, the logger error will occur. See this logger error message: ``` Request to openstreetmap failed. Code: 502 Content: b'<html>\r\n<head><title>502 Bad Gateway</title></head>\r\n<body>\r\n<center><h1>502 Bad Gateway</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n' ``` The logger is updated to use the 'warning' level instead of the 'error' level. This change reflects a less severe logging level for cases where a request to OpenStreetMap fails. sentry-4151622143 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#124393
Steps to reproduce ================== - With studio, create a model - In the form view, add a many2many pointing to res.partner - Close studio - Create a record - Add a line by selecting a partner -> `Cannot read properties of undefined (reading 'find')` Cause of the issue ================== The res.partner uses a custom widget for the activity field `ListActivity`. The fieldDependencies selection fields are not properly defined. We can define the selection as an empty array,
Original PR description
Steps to reproduce ================== - With studio, create a model - In the form view, add a many2many pointing to res.partner - Close studio - Create a record - Add a line by selecting a partner -> `Cannot read properties of undefined (reading 'find')` Cause of the issue ================== The res.partner uses a custom widget for the activity field `ListActivity`. The fieldDependencies selection fields are not properly defined. We can define the selection as an empty array, because we don't actually need it. opw-3360436 Forward-Port-Of: odoo/odoo#125052
When the user allows multi employee per session and the portal user tries to access the pos with the URL /pos/ui?config_id=1 then the error will be generated. Steps to reproduce: - Installed point_of_sale module. - In Configuration > Point of Sale > activate Multi Employees per Session option and save it. - In another window, do log in as a demo user and start the pos session. - From the Admin user, make Marc Demo as a portal user. - Then refresh the demo user session. - Traceback wil
Original PR description
When the user allows multi employee per session and the portal user tries to access the pos with the URL /pos/ui?config_id=1 then the error will be generated. Steps to reproduce: - Installed…
When the user allows multi employee per session and the portal user tries to access the pos with the URL /pos/ui?config_id=1 then the error will be generated.
Steps to reproduce:
- Installed point_of_sale module.
- In Configuration > Point of Sale > activate Multi Employees per Session option and save it.
- In another window, do log in as a demo user and start the pos session.
- From the Admin user, make Marc Demo as a portal user.
- Then refresh the demo user session.
- Traceback will be generated
see the traceback:
KeyError: 'user_companies'
File "odoo/http.py", line 2115, in __call__
response = request._serve_db()
File "odoo/http.py", line 1698, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "odoo/service/model.py", line 134, in retrying
result = func()
File "odoo/http.py", line 1725, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 1838, in dispatch
return self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 154, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 715, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/point_of_sale/controllers/main.py", line 57, in pos_web
session_info['user_companies'] = {'current_company': company.id, 'allowed_companies': {company.id: session_info['user_companies']['allowed_companies'][company.id]}}
Applying these changes will resolve this issue.
sentry - 3958755602
Forward-Port-Of: odoo/odoo#121140Since [1] an error is raised when switching the Mode of an Images Wall from Float to Grid or Masonry while an image is selected. The display of the size of the image is being updated while its option panel is not there anymore. This commit prevents this error from happening by checking if the `.data('$optionsSection')` hack (as stated when it was introduced in [2]) is available before trying to use it. Steps to reproduce: - Drop an Images Wall snippet. - Switch Mode to Float. - Select a
Original PR description
Since [1] an error is raised when switching the Mode of an Images Wall from Float to Grid or Masonry while an image is selected. The display of the size of the image is being updated while its option panel is not there anymore.
This commit prevents this error from happening by checking if the `.data('$optionsSection')` hack (as stated when it was introduced in [2]) is available before trying to use it.
Steps to reproduce:
- Drop an Images Wall snippet.
- Switch Mode to Float.
- Select an image.
- Switch Mode to Grid.
=> Traceback.
[1]: https://github.com/odoo/odoo/commit/2cbb691a84ce186ddd34a2a4c76d95671ed6e834
[2]: https://github.com/odoo/odoo/commit/5ac6a7a5dbd2af1190d0d027d0239dd1cfc257b0
task-2990053
Forward-Port-Of: odoo/odoo#119156The Dutch localization was not using any mean by default to know if a transaction was triangular or not. Similar to the Belgian localization, the Dutch one can now use the new 0% "ABC-levering binnen EU" tax. The tax report can will now also display that additionnal information (without modifying the existing ones). Forward-Port-Of: odoo/odoo#125546 Forward-Port-Of: odoo/odoo#116571
Original PR description
The Dutch localization was not using any mean by default to know if a transaction was triangular or not. Similar to the Belgian localization, the Dutch one can now use the new 0% "ABC-levering binnen EU" tax. The tax report can will now also display that additionnal information (without modifying the existing ones). Forward-Port-Of: odoo/odoo#125546 Forward-Port-Of: odoo/odoo#116571
Forward-Port-Of: odoo/odoo#125852 Forward-Port-Of: odoo/odoo#118056
Original PR description
Forward-Port-Of: odoo/odoo#125852 Forward-Port-Of: odoo/odoo#118056
When hovering over an employee's photo (without edit rights) and the image hasn't been loaded in the cache, the popover is positioned to the right of the image. With a big image, the popover can be outside of the page. Steps to reproduce: 1. Install Employees and set a 4k image to any employee 2. Remove all the rights of Marc Demo on Employees 3. Connect as Marc Demo 4. Open the form of the employee with the 4k image 5. Hover on the employee photo 6. The image position is off Solutio
Original PR description
When hovering over an employee's photo (without edit rights) and the image hasn't been loaded in the cache, the popover is positioned to the right of the image. With a big image, the popover can be outside of the page. Steps to reproduce: 1. Install Employees and set a 4k image to any employee 2. Remove all the rights of Marc Demo on Employees 3. Connect as Marc Demo 4. Open the form of the employee with the 4k image 5. Hover on the employee photo 6. The image position is off Solution: Update the position of the popover when the image is loaded and restrict the image width in the popover to the popover width Problem: When we try to find the best position to display the popover and the image is not loaded, we will find that there is some room for the popover on the right because the image has no height or width opw-3281649 Forward-Port-Of: odoo/odoo#125882 Forward-Port-Of: odoo/odoo#124794
Add a step to ensure that the first kanban view is fully loaded before trying to insert the next one in `knowledge_items_search_favorites_tour`, because it could cause an undeterministic error as the view was not inserted when trying to insert the second one too fast. Change the triggers to ensure that a view is loaded to be more explicit about what should be loaded: `o_knowledge_embedded_view` is only present when the embedded view is loaded by the manager (and it could happen after th
Original PR description
Add a step to ensure that the first kanban view is fully loaded before trying to insert the next one in `knowledge_items_search_favorites_tour`, because it could cause an undeterministic error as the…
Add a step to ensure that the first kanban view is fully loaded before trying to insert the next one in `knowledge_items_search_favorites_tour`, because it could cause an undeterministic error as the view was not inserted when trying to insert the second one too fast. Change the triggers to ensure that a view is loaded to be more explicit about what should be loaded: `o_knowledge_embedded_view` is only present when the embedded view is loaded by the manager (and it could happen after the embedded_view Behavior was loaded (see lazy loading)). Technical issue explanation: - Rendering of Behaviors is asynchronous in regards to the execution of the `/command`. - Since [1], Behaviors are rendered in parallel. - This means that the `preserveCursor` call for 2 `/command` that are executed in succession faster than the time it takes for Owl to mount the result of those commands can be done on the same node, let say `p`. - The `insert` command of the editor, in case the insertion has to be done in between content, will split the editor node with `splitElement`. - `splitElement` creates 2 clones of the original targetted node, and removes the original. - This means that one of the `preserveCursor` has registered a position inside a node that will be removed by the `insert` caused in the process involving the other `preserveCursor` and therefore will fail, resulting in only one of the two `insert` succeeding. This issue is not humanly realistic, because the user would have to type two commands in the same node faster than it takes for Owl to mount the first Behavior, and currently Behaviors are rendered without heavy `onWillStart` rpc calls, because we want the user to have a visual feedback as fast as possible. [1]: https://github.com/odoo/enterprise/commit/b25f4c9ea93f0b7d357fea71d84132efbb6bb234 task-3373322 Forward-Port-Of: odoo/enterprise#42601
The aim of this commit is to take into account the negative lines of bills correctly. Context: A bill with 2 lines: 1000€ and -100€ on the same account. It should results in a 281.50 of 900€ Before the commit: The result was 1100€ After the commit: The result is 900€ task-id: None. Issue was brought up during internal usage. Forward-Port-Of: odoo/enterprise#42881 Forward-Port-Of: odoo/enterprise#42843
Original PR description
The aim of this commit is to take into account the negative lines of bills correctly. Context: A bill with 2 lines: 1000€ and -100€ on the same account. It should results in a 281.50 of 900€ Before the commit: The result was 1100€ After the commit: The result is 900€ task-id: None. Issue was brought up during internal usage. Forward-Port-Of: odoo/enterprise#42881 Forward-Port-Of: odoo/enterprise#42843
Since CFDI 4.0, the field "Fiscal Regime" should be added to the PDF Invoice. https://www.sat.gob.mx/cs/Satellite?blobcol=urldata&blobkey=id&blobtable=MungoBlobs&blobwhere=1461174766901&ssbinary=true opw-3301699 Forward-Port-Of: odoo/enterprise#42186 Forward-Port-Of: odoo/enterprise#40989
Original PR description
Since CFDI 4.0, the field "Fiscal Regime" should be added to the PDF Invoice. https://www.sat.gob.mx/cs/Satellite?blobcol=urldata&blobkey=id&blobtable=MungoBlobs&blobwhere=1461174766901&ssbinary=true opw-3301699 Forward-Port-Of: odoo/enterprise#42186 Forward-Port-Of: odoo/enterprise#40989
When we will get None in number_period it will generate the type error that cannot be interpreted as integer as number_period cannot be calculated with none type . To ensure the loop executes correctly and avoid errors, the code has been changed to handle the scenario where `number_period` is `None` . The updated implementation includes a check before the loop to validate `number_period` and handle the error condition appropriately. sentry-4215726328 X-original-commit: c56b352b6962a857d
Original PR description
When we will get None in number_period it will generate the type error that cannot be interpreted as integer as number_period cannot be calculated with none type . To ensure the loop executes correctly and avoid errors, the code has been changed to handle the scenario where `number_period` is `None` . The updated implementation includes a check before the loop to validate `number_period` and handle the error condition appropriately. sentry-4215726328 X-original-commit: c56b352b6962a857d25af13ef21ff7050a717fda Forward-Port-Of: odoo/enterprise#42838
The Dutch EC Sales report uses a custom query, which was still using intrastat information, which is wrong. It now uses the correct fields and is compatible with the Codes filter. It also now uses a new tax for triangular transactions (ABC Sales). Forward-Port-Of: odoo/enterprise#42765 Forward-Port-Of: odoo/enterprise#38726
Original PR description
The Dutch EC Sales report uses a custom query, which was still using intrastat information, which is wrong. It now uses the correct fields and is compatible with the Codes filter. It also now uses a new tax for triangular transactions (ABC Sales). Forward-Port-Of: odoo/enterprise#42765 Forward-Port-Of: odoo/enterprise#38726
Reason for the change: In other localization where we've worked with partners, we set as the author the entire organization. Forward-Port-Of: odoo/enterprise#41620 Forward-Port-Of: odoo/enterprise#41428
Original PR description
Reason for the change: In other localization where we've worked with partners, we set as the author the entire organization. Forward-Port-Of: odoo/enterprise#41620 Forward-Port-Of: odoo/enterprise#41428
Steps to reproduce ================== - Go to Payroll > Contracts > Salary Attachment The total at the bottom is not displayed and there is a - instead. Cause of the issue ================== The monthly amount field uses the currency_field currency_id. It should be present in the view for the web client to be aware of it's value. opw-3316448 Forward-Port-Of: odoo/enterprise#42846 Forward-Port-Of: odoo/enterprise#42792
Original PR description
Steps to reproduce ================== - Go to Payroll > Contracts > Salary Attachment The total at the bottom is not displayed and there is a - instead. Cause of the issue ================== The monthly amount field uses the currency_field currency_id. It should be present in the view for the web client to be aware of it's value. opw-3316448 Forward-Port-Of: odoo/enterprise#42846 Forward-Port-Of: odoo/enterprise#42792
Forward-Port-Of: odoo/enterprise#42122
Original PR description
Forward-Port-Of: odoo/enterprise#42122
+ Realign the search bar with the search button + Remove unwanted scroll bar under the tab list + Remove form view related classes **Before changes:**  **After:**  Forward-Port-Of: odoo/enterprise#42878
Original PR description
+ Realign the search bar with the search button + Remove unwanted scroll bar under the tab list + Remove form view related classes **Before changes:**  **After:**  Forward-Port-Of: odoo/enterprise#42878
Before this commit ================ It was displaying error for not matching total with the gstr bill's total as the total is reduced after considering TDS After this commit =============== After changes the total is calculated as per the TDS amount, so the gstr bill's total and bill's total can be matched task:3304872 Forward-Port-Of: odoo/enterprise#40925
Original PR description
Before this commit ================ It was displaying error for not matching total with the gstr bill's total as the total is reduced after considering TDS After this commit =============== After changes the total is calculated as per the TDS amount, so the gstr bill's total and bill's total can be matched task:3304872 Forward-Port-Of: odoo/enterprise#40925
Fix the readonly field for Peru. Steps: Install l10n_pe_edi_stock Install l10n_cl_edi_stock upload CAF, signature and all the things needed to use electronic invoicing for chile Create a sale, confirm and create a picking. Validate. Press create delivery guide. The system claims that there is no a sequence for the chilean delivery guide. Then edit, and put in l10n_latam_document the first number. Confirm it. Even when the field seems editable, you will get a message cla
Original PR description
Fix the readonly field for Peru. Steps: Install l10n_pe_edi_stock Install l10n_cl_edi_stock upload CAF, signature and all the things needed to use electronic invoicing for chile Create a sale, confirm and create a picking. Validate. Press create delivery guide. The system claims that there is no a sequence for the chilean delivery guide. Then edit, and put in l10n_latam_document the first number. Confirm it. Even when the field seems editable, you will get a message claiming that you must define a document number. What is happening is that the field is not saved. After the PR: Odoo allows you to define the sequence for delivery guides, and the first document to issue. Forward-Port-Of: odoo/enterprise#37634
Since we only add the useful paths of assets in mrp_subcontracting module we don't load extra services that we need to remove after. Forward-Port-Of: odoo/enterprise#39219
Original PR description
Since we only add the useful paths of assets in mrp_subcontracting module we don't load extra services that we need to remove after. Forward-Port-Of: odoo/enterprise#39219
When user creates an event and sets the communication notification type as social post and when 'Event: Mail Scheduler' scheduled action is executed the error occurs. See this traceback: ``` AttributeError: 'mail.template' object has no attribute 'account_ids' File "addons/event/models/event_mail.py", line 258, in schedule_communications self.browse(scheduler.id).execute() File "home/odoo/src/enterprise/saas-16.2/event_social/models/event_mail.py", line 39, in execute social
Original PR description
When user creates an event and sets the communication notification type as social post and when 'Event: Mail Scheduler' scheduled action is executed the error occurs. See this traceback: ```…
When user creates an event and sets the communication notification type as social post and when 'Event: Mail Scheduler' scheduled action is executed the error occurs.
See this traceback:
```
AttributeError: 'mail.template' object has no attribute 'account_ids'
File "addons/event/models/event_mail.py", line 258, in schedule_communications
self.browse(scheduler.id).execute()
File "home/odoo/src/enterprise/saas-16.2/event_social/models/event_mail.py", line 39, in execute
social_posts_values = [
File "home/odoo/src/enterprise/saas-16.2/event_social/models/event_mail.py", line 42, in <listcomp>
if scheduler.template_ref.account_ids
```
Steps to reproduce:
1. Install event_social module.
2. Go to event module and create an event.
3. Now in event's form view go to the communication page.
4. Click add a line and set notification type as social post then save it.
5. Go to Settings > Technical > Scheduled Actions > Event: Mail Scheduler.
6. Click on run manually button.
7. The error will occur.
Applying this commit will fix this issue.
Community PR: https://github.com/odoo/odoo/pull/122026
sentry-4195133685
Forward-Port-Of: odoo/enterprise#42827
Forward-Port-Of: odoo/enterprise#41322Before this commit, when the user goes to `Planning > Schedule > By Project` and he has no access to Project app or no access to one project linked to his shifts then an access error is occurred. The reason is because the allocated hours of each project linked to the shifts displayed in the gantt view to be able to display the progress bar per project and so if the user cannot access to at least one project then the access error is raised when we try to fetch the allocated hours of that project
Original PR description
Before this commit, when the user goes to `Planning > Schedule > By Project` and he has no access to Project app or no access to one project linked to his shifts then an access error is occurred. The…
Before this commit, when the user goes to `Planning > Schedule > By Project` and he has no access to Project app or no access to one project linked to his shifts then an access error is occurred. The reason is because the allocated hours of each project linked to the shifts displayed in the gantt view to be able to display the progress bar per project and so if the user cannot access to at least one project then the access error is raised when we try to fetch the allocated hours of that project. Steps to reproduce the issue: ---------------------------- 1. install `project_timesheet_forecast` module (with demo data) 2. log in as Marc Demo 3. go to `Planning > Schedule > By Project` Actual behavior: --------------- An access error is occurred because Marc Demo cannot read `Research & Development` project and so the allocated hours cannot be fetched for the progress bar. Expected behavior: ----------------- The user should see the gantt view and also the progress bar even if he cannot access to at least one project linked to the shifts displayed in the gantt view. Related to the fix done in 16.0: https://github.com/odoo/enterprise/pull/42869 Forward-Port-Of: odoo/enterprise#42868
Steps: - make SOL with planning enabled product - create shift with that sale order item - now change shifts allocated percentage into something like: 10.5 or anything decimal - now use copy previous button - copied shifts calculate wrong allocated percentage Issue: Copy the previous week's feature and calculate wrong allocated hour in some cases in copied shifts. Fix: the formula for getting remaining hours to plan is changed. Note: this will also solve a traceback divide by zer
Original PR description
Steps: - make SOL with planning enabled product - create shift with that sale order item - now change shifts allocated percentage into something like: 10.5 or anything decimal - now use copy previous button - copied shifts calculate wrong allocated percentage Issue: Copy the previous week's feature and calculate wrong allocated hour in some cases in copied shifts. Fix: the formula for getting remaining hours to plan is changed. Note: this will also solve a traceback divide by zero which I can't seem to reproduce. task-2977137 Forward-Port-Of: odoo/enterprise#42796 Forward-Port-Of: odoo/enterprise#39183