Daily updates from Odoo
Thursday, April 4, 2024
14 changes · master
Enhancements to existing features
Self-order kiosks now detect when a connected printer runs out of paper and alert both the kiosk user and the linked preparation displays. This helps staff react quickly and prevents orders from being delayed or missed because a receipt or ticket could not print.
Original PR description
This commit handles the case when no more paper in printer. It sends a notification the the preparations displays that are linked to the kiosk. And displays a popup on the kiosk to notify the user. Community: odoo/odoo#160284
Weekly planning views now show an occupancy percentage next to allocated hours when schedules are grouped by resource and another category. This helps managers quickly understand how fully each resource is booked using clear text in addition to existing color indicators.
Original PR description
In the gantt view, when grouping by resource > something else, this commit introduces an occupancy percentage that is displayed next to the aggregated allocated hours of each pill. This percentage actually represents the same information as the colors added in https://github.com/odoo/enterprise/pull/38343 but in a textual way. Note that the occupancy percentage is only displayed for the week scale. occupancy rate = total number of allocated hours for a given period of time / total number of hours to work for that period of time (according to the resource working calendar or the company calendar in case of flexible hours) task-3651242
Field service worksheet templates and reports are easier to manage, with clearer template selection, company visibility, and direct access to template design. Customer-facing reports are also cleaner, with better formatting, consistent PDF naming, and safeguards that prevent printing incomplete reports.
Original PR description
In this PR add following improvements: **worksheet, **industry_fsm_report - the 'company' and 'color' fields as optional and hidden by default in worksheet template list view. - add a group by…
In this PR add following improvements: **worksheet, **industry_fsm_report - the 'company' and 'color' fields as optional and hidden by default in worksheet template list view. - add a group by 'companies' on search view of worksheet. - add 'company' field under the name in kanban view of worksheet template. - update the description of the 'custom worksheets' feature and add link button that will redirect to the worksheet template. - sort records from newest to oldest in worksheet template. - update action helper of worksheet template analysis. - remove the 'create' option and only keep 'create and edit in product form view and project.project form view also add placeholder on worksheet template field - update log note on sign report of field service task and add pdf name same as send report. - display the labels in bold + display values closer to their labels also add striped stlye on rows of worksheet report. - raise user error on printing report without timesheet or workseet or product. - set the 'worksheet template' as the project is selected instead of doing it on save of product form view. - worksheet template field on create and edit in product,project and task: - hide the 'analysis' button - add a 'design template' primary button task-3504607
Point of Sale receipts in the Chilean localization now include the bidimensional code and header information needed to qualify as valid electronic documents. Credit notes for refunded invoices now show only the required document number, improving compliance and consistency with backend refunds.
Original PR description
This commit adds the bidimensional code on the receipt, it also adds to the receipt header the requirements for considering the receipt as a valid electronic document. It also changes the code shown on the credit note when refunding a previous invoice. Before the commit, it was showing the full name (eg. BEL 00001), but we actually need to have only the number (eg. 00001) as it is done when refunding from the backend. task-id: 3747828 Community PR: odoo/odoo#159671
Payroll report entries now take users directly to the corresponding payslip instead of opening a confusing technical report form. This makes payroll review faster and clearer for users who need to inspect payslip details from reports.
Original PR description
Clicking upon the payroll report opens the form view of the report which is very confusing for some users In this PR, clicking on the payroll report now opens the related payslip. task-3716854
Resolved issues and error corrections
The Helpdesk ticket activity view now handles tickets without an assigned user more cleanly. This prevents a broken empty picture placeholder and gives users a smoother, more consistent ticket view.
Original PR description
issue: If you don't have a picture on the assign, display is broken Without the assign in the ticket, the empty image placeholder is not shown properly. I display the O2M widget rather than an empty image holder. A side effect of this commit- https://github.com/odoo/odoo/commit/13382398d2ebeb3df52fb67d9963c292372031d1 task-3706742
Code cleanup and technical improvements
The website editor's snippet menu has been reworked in the appointment and enterprise website areas to use Odoo's newer interface technology. This keeps the visible editing experience consistent while making the menu easier to maintain and evolve.
Original PR description
*: website_appointment, website_enterprise
As explained in the community commit:
This commit also takes advantage of the OWL rendering engine by moving most of the SnippetsMenu UI into a static frontend template (previously it was a backend view). The view is kept, to generate the list of snippets and still generate the options' HTML.
The structure of the list of snippets is now the following:
```
<snippets>
<category>
<title>Base Structure
<snippets>
<t t-snippet=""...../>
</snippets>
</category>
</snippets>
```
task-3323657
Community PR: https://github.com/odoo/odoo/pull/121295Miscellaneous changes
In `pos_enterprise` we alias `is_posbox` as `module_pos_iot`. If the value is True we install the module `pos_iot` when a write in pos.config model happens: https://github.com/odoo/odoo/blob/f7ee5633a8c80afca05074b8574e9c2a720e4bc9/addons/point_of_sale/models/pos_config.py#L496 Steps to reproduce: 1. Install PoS and IoT applications -- will install `pos_enterprise` module. 2. Set is_posbox = True, via the PoS settings. 3. Uninstall IoT application -- will uninstall `iot` and `pos_iot` mod
Original PR description
In `pos_enterprise` we alias `is_posbox` as `module_pos_iot`. If the value is True we install the module `pos_iot` when a write in pos.config model happens:…
In `pos_enterprise` we alias `is_posbox` as `module_pos_iot`. If the value is True we install the module `pos_iot` when a write in pos.config model happens:
https://github.com/odoo/odoo/blob/f7ee5633a8c80afca05074b8574e9c2a720e4bc9/addons/point_of_sale/models/pos_config.py#L496
Steps to reproduce:
1. Install PoS and IoT applications -- will install `pos_enterprise` module.
2. Set is_posbox = True, via the PoS settings.
3. Uninstall IoT application -- will uninstall `iot` and `pos_iot` modules.
4. Try to install a module that writes in a column of the pos_config with is_posbox=True
We get an error like:
```
...
File "/home/odoo/src/odoo/17.0/odoo/addons/base/models/ir_module.py", line 569, in _button_immediate_function
raise UserError(_('The method _button_immediate_install cannot be called on init or non loaded registries. Please use button_install instead.'))
odoo.exceptions.UserError: El método _button_immediate_install no puede ser llamado en registros init o no cargados. Por favor, utilice button_install en su luga
```
The issue is that when we uninstall `iot` module the flag is never reset. This then causes issues if we try to install a module that writes on any value of `pos.config`. Observed during upgrades, e.g `l10n_es_pos` at xml load of data files. Other modules also affected.
The solution we propose here is to introduce a _soft_ dependency between pos_iot -- which is an enterprise module -- and pos_enterprise. The former checks at uninstall if the latter is installed to clear the `is_posbox` flag.
Forward-Port-Of: odoo/enterprise#59810Current behavior: After this refactor https://github.com/odoo/odoo/pull/142566 the use_proxy became undefined. And so the pos is not able to connect to the proxy and use the printer connected to the IoT Box. Steps to reproduce: - Install the PoS IoT module - Configure the IoT Box with a printer - Select the printer from the IoT Box in the PoS configuration - Try to print a receipt - Nothing happens, it only try to print via the browser print popups Note: There was also an issue in t
Original PR description
Current behavior: After this refactor https://github.com/odoo/odoo/pull/142566 the use_proxy became undefined. And so the pos is not able to connect to the proxy and use the printer connected to the IoT Box. Steps to reproduce: - Install the PoS IoT module - Configure the IoT Box with a printer - Select the printer from the IoT Box in the PoS configuration - Try to print a receipt - Nothing happens, it only try to print via the browser print popups Note: There was also an issue in the StatusLoop that was not correctly getting the ids of the devices. This was fixed in the same commit. opw-3800437 Forward-Port-Of: odoo/enterprise#59570 Forward-Port-Of: odoo/enterprise#59433
**Step to reproduce:** - Install `Knowledge` and `Documents` modules (for test purpose) - Go to Documents app - Click on Action button -> Knowledge -> Insert view in article - Select any article **Issue:** View is not loaded correctly in the article. Error message: Something went wrong! The view does not exist or you are not allowed to access to it. **Cause:** In the imported view, we try to retrieve the selected Folders, but this last one need the search model
Original PR description
**Step to reproduce:** - Install `Knowledge` and `Documents` modules (for test purpose) - Go to Documents app - Click on Action button -> Knowledge -> Insert view in article - Select any article…
**Step to reproduce:**
- Install `Knowledge` and `Documents` modules (for test purpose)
- Go to Documents app
- Click on Action button -> Knowledge -> Insert view in article
- Select any article
**Issue:**
View is not loaded correctly in the article.
Error message: Something went wrong! The view does not exist or you
are not allowed to access to it.
**Cause:**
In the imported view, we try to retrieve the selected Folders, but this last one need the search model to retrieve the data.
https://github.com/odoo/enterprise/blob/11daa694d4ca51939c2b458bced8ab9d48030ef8/documents/static/src/views/documents_controller_mixin.xml#L5
The method called to retrieve the folders (`getSelectedFolder`) is set on the documents search model (`DocumentsSearchModel`), however, the search model set in the embedded_view is the knowledge search model (`KnowledgeSearchModel`).
**Solution:**
Change the `KnowledgeSearchModel` class into a mixin so it can extend the (potentially) custom search model defined for any embedded view during the mounting process (default to the generic search model), instead of overwriting it.
opw-3752927
Forward-Port-Of: odoo/enterprise#59758Issue - Edit Payslip Lines are reset to previous value Steps: go to -> payroll / all payslip create a payslip compute payslip action -> Edit Payslip Lines edit a line Issue: it is reset to previous value Forward-Port-Of: odoo/enterprise#59665
Original PR description
Issue - Edit Payslip Lines are reset to previous value Steps: go to -> payroll / all payslip create a payslip compute payslip action -> Edit Payslip Lines edit a line Issue: it is reset to previous value Forward-Port-Of: odoo/enterprise#59665
During this PR: https://github.com/odoo/enterprise/pull/51954 tests were not added directly. This PR will add test for the following: - Simple export with no moves - Simple export with moves - Non critical errors - Critical errors task-3794278 Forward-Port-Of: odoo/enterprise#59431
Original PR description
During this PR: https://github.com/odoo/enterprise/pull/51954 tests were not added directly. This PR will add test for the following: - Simple export with no moves - Simple export with moves - Non critical errors - Critical errors task-3794278 Forward-Port-Of: odoo/enterprise#59431
When installing module l10n_eu_oss, account 2205 Output VAT (Sales) OSS was not referenced in the Balance Sheet. taskid: 3060790 Forward-Port-Of: odoo/enterprise#59137
Original PR description
When installing module l10n_eu_oss, account 2205 Output VAT (Sales) OSS was not referenced in the Balance Sheet. taskid: 3060790 Forward-Port-Of: odoo/enterprise#59137
On the buttons bar of the account reports, the button was smaller than the dropdown item and so when clicking on the dropdown nothing happens. This Pr will move the actions on the dropdown. task-3826440 Forward-Port-Of: odoo/enterprise#59350
Original PR description
On the buttons bar of the account reports, the button was smaller than the dropdown item and so when clicking on the dropdown nothing happens. This Pr will move the actions on the dropdown. task-3826440 Forward-Port-Of: odoo/enterprise#59350