Thursday, October 16, 2025
4 changes · master
Resolved issues and error corrections
This fixes how Odoo Studio identifies the original view structure when simplifying customized screens. It helps prevent incorrect Studio view processing in cases where an inherited view is also treated as a main view, improving reliability for affected customizations.
Original PR description
Since commit 52f27c457e50a61c3b11c59e3fdd5ddd383f1317, the normalize function applies on `self` (ir.ui.view) and can take a string representing the arch to normalize. The normalization then occurs on the combination of the two, outputing a simplified version of the arch passed as a string in arguments. The base arch (`combined_arch`) is retrieved from self. Before this commit, this was done by controlling on self.inherit_id, which did not cover all bases to retrieve the main view's combined arch without the studio inheritance. After this commit, this is done by controlling on self.mode, because an inherited view can also be a root view. opw-5154217 Forward-Port-Of: odoo/enterprise#96992
This fixes a crash in Odoo Studio when users add a related monetary field on the same model, including its currency field. The change lets the Studio setup flow complete as expected, reducing disruption when customizing business screens.
Original PR description
In studio, add a related field to a monetary on the current model (ie without dotnames) Before this commit, it crashed. This because of c57c247490f0f58c8746af47ce035c28137faf97 After this commit, the flow works as expected opw-5147572 Forward-Port-Of: odoo/enterprise#97214
This fix corrects how the Belgian reporting partner form is linked so the required citizen identification field can be found during module updates. It prevents update failures and server errors when installing or upgrading the Belgian reports functionality.
Original PR description
The citizen_identification field was added to the partner view in l10n_be_reports, but the form 281.50 view for this required field was incorrectly inheriting from the base partner view. That led to…
The citizen_identification field was added to the partner view in l10n_be_reports, but the form 281.50 view for this required field was incorrectly inheriting from the base partner view.
That led to a traceback when updating account_reports/l10n_be_reports modules:
```py
Odoo Server Error
Occured on 86642809-master-all.runbot135.odoo.com on model ir.module.module on 2025-08-11 14:04:32 GMT
Traceback (most recent call last):
------- A lot of calls ------
convert_xml_import(env, module, fp, idref, mode, noupdate)
File "/data/build/odoo/odoo/tools/convert.py", line 745, in convert_xml_import
obj.parse(doc.getroot())
File "/data/build/odoo/odoo/tools/convert.py", line 616, in parse
self._tag_root(de)
File "/data/build/odoo/odoo/tools/convert.py", line 559, in _tag_root
f(rec)
File "/data/build/odoo/odoo/tools/convert.py", line 570, in _tag_root
raise ParseError(msg) from None # Restart with "--log-handler odoo.tools.convert:DEBUG" for complete traceback
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
odoo.tools.convert.ParseError: while parsing /data/build/enterprise/account_followup/views/partner_view.xml:4
Error while parsing or validating view:
Element '<xpath expr="//field[@name='citizen_identification']">' cannot be located in parent view
View error context:
{'file': '/data/build/enterprise/account_followup/views/partner_view.xml',
'line': 1,
'name': 'res.partner.view.form',
'view': ir.ui.view(5824,),
'view.model': 'res.partner',
'view.parent': ir.ui.view(127,),
'xmlid': 'res_partner_view_form'}
```This fix updates access settings so Swiss payroll-related employee fields use the correct payroll user permissions. HR officers can now access employee records as expected, preventing related automated workflow failures.
Original PR description
Some fields on the version were still with the hr_user group where they should be payroll_user. This was causing some tour to fail when an HR officer tries to access an employee. Build error: https://runbot.odoo.com/odoo/runbot.build.error/233204 Forward-Port-Of: odoo/enterprise#97175 Forward-Port-Of: odoo/enterprise#97096