Daily updates from Odoo
Friday, May 15, 2026
29 changes · master
New functionality added to Odoo
This update adds support for Hong Kong's payroll reporting requirements, specifically generating an IR56M report for non-employees like freelancers. It also incorporates data related to CAP57 non-employees, ensuring compliance with local regulations. This improves the payroll functionality for businesses operating in Hong Kong.
Original PR description
\* = documents, test To complete support for HK's payroll requirements, we add the IR56M report for those who are not employees (freelancers, contractors, etc etc.). task-[5050335](https://www.odoo.com/odoo/my-tasks/5050335) odoo/odoo#263768 odoo/enterprise#116875 odoo/upgrade#10186 -- Preceeding PR https://github.com/odoo/odoo/pull/261453
This update adds support for three new food delivery services – Smiles, InstaShop, and RADYES – to the pos_urban_piper module. These integrations expand the options available to our restaurant partners for fulfilling online orders and improving customer delivery experiences.
Original PR description
In this commit - ------------------------ Integrated three new food delivery providers in pos_urban_piper: - Smiles (Task-6209729) - InstaShop (Task-6209717) - RADYES (Task-6209712)
Enhancements to existing features
This update improves the user experience within the Odoo Enterprise charts module by enabling the drag-and-drop of multiple chart figures simultaneously. This allows for more efficient data visualization and manipulation, streamlining workflows for users creating and managing charts. The change enhances usability and productivity.
Original PR description
Task: 3323871
This update automatically sends reminder emails to customers 7 days before the deadline for submitting account returns. This improves the process by proactively reminding users to complete returns, reducing late submissions and improving data accuracy.
Original PR description
Send reminder mail to submit an account return 7 days before the deadline. task-4752152 Forward-Port-Of: odoo/enterprise#112576
This update adds a helpful menu within the Odoo Enterprise spreadsheet module, providing direct links to the official documentation and a shortcut to open the spreadsheet command palette. This improves usability and allows users to quickly find the information they need to effectively utilize the spreadsheet functionality.
Original PR description
Add help menu with link to the documentation and a shortcut to open the spreadsheet command palette. Task: 6186747
This update enhances the user interface for time type forms, specifically for time off and payroll tracking. The changes include clearer helper text, reorganized sections for better usability, and adjustments to field placement, ultimately streamlining the process for employees and HR staff.
Original PR description
* = hr_holidays, l10n_us_hr_payroll - added helper text for time off tab and payroll tab in time type form - change placeholder of the name - reorder sections to: Time Off, Payroll - change the position of the "Show on Paylsip" field's checkbox of US Payroll Localizaition task-6112824
This update clarifies the message users see when they don't have enough credits available for an IAP purchase. The wording has been refined to be more user-friendly and clearly explain the situation. This improves the overall customer experience and reduces potential confusion.
Original PR description
Task-6128791
This update ensures that tests for the VoIP systray icon are now run on smaller screens, mirroring the tests performed on larger desktop screens. This improves the reliability of our VoIP functionality across different device sizes, ensuring a consistent user experience.
Original PR description
Because the VoIP systray icon is also shown on small screens, the related tests should be executed on small screens as we do on the desktop.
This update simplifies the Frontdesk module's user interface and workflow, making check-in faster and more intuitive. Key changes include streamlining the welcome screen, removing unnecessary features, and improving the organization of settings. This redesign focuses on enhancing usability for both staff and guests.
Original PR description
This PR introduces a comprehensive revamp of the Frontdesk module to improve usability, simplify configuration, and remove redundant features from both frontend and backend. ***Frontend…
This PR introduces a comprehensive revamp of the Frontdesk module to improve usability, simplify configuration, and remove redundant features from both frontend and backend. ***Frontend Improvements*** --------------------- - Merged the visitor form and host selection screens into a single welcome screen to streamline the check-in process and reduce clicks. - Removed filters and the create option from the "Host Search" dialog. - Removed the "Create" button from the company "Search More" dialog. - Removed Install, Statistics, and Kiosk actions from the station kanban card to declutter the UI. ***Model & Field Changes*** --------------------- - Removed the `frontdesk.drink` model along with all related views and JavaScript logic. - Converted `ask_email`, `ask_phone`, and `ask_company` fields from boolean to selection fields to support required/optional behavior. - Simplified visitor state management by removing extra selection values and defaulting the state to `checked_in` upon check-in. - Set the check-in date to use the record creation date. - When creating a visitor from the backend, automatically assign the station if only one station exists; otherwise, leave it empty. ***Configuration & Navigation Cleanup*** ----------------------------------- - Renamed "Options" page to "Settings". - Moved the hosts field to the Settings page for better organization. - Renamed "Authenticate Guest" to "Guest Details" for clarity. - Removed Reporting and Configuration menus. - Removed "Add/Edit Properties" from the cog menu. - Added chatter to the station form view for better tracking. ***Notifications*** ------------- - Set default email and SMS templates under Host Notifications. Overall, these changes modernize the check-in flow, reduce complexity, and provide a cleaner and more intuitive experience for users and administrators. Task-5421138
This update adds a priority field to planning slots, enhancing the ability to filter and sort interventions across various views (form, list, Kanban, and search). This improves organization and allows users to quickly identify and focus on the most critical tasks.
Original PR description
Add priority field in planning slots to improve visibility and filtering of interventions across different views. Changes include: - Form view: add priority field between role and company - List view: add priority as an optional field (hidden by default) - Kanban view: display priority alongside planning information - Search view: add priority in group by options, add priority filter with sub-levels and separators, include priority in quick search suggestions - Demo data: update existing demo records to include priority values for testing and demonstration This ensures a consistent user experience. task-6176314
This update automatically updates partner information for Uruguayan businesses (UY) by fetching data directly from the Dirección General de Impuestos (DGI) through the Uruware integration. A new 'refresh' button allows users to pull the latest validated data, ensuring accurate records. All existing data is overwritten to prevent conflicts with DGI information.
Original PR description
Add a refresh button next to VAT on the partner form for UY partners, which fetches the partner's data from DGI (through Uruware) and writes it to the partner. Every mapped field is always overwritten so a refresh never mixes local values with DGI data. task-5419345
Resolved issues and error corrections
This update resolves an error that occurred when users removed the 'Source Entity Id Type' setting in Super Contributions. The fix ensures the system correctly handles this removal, preventing a calculation error and maintaining data integrity. This improves the reliability of the Australian Super Contributions reporting.
Original PR description
Currently an error occurs when the user removes the Source Entity Id Type on Super Contributions. **Steps to Reproduce:** - Install `l10n_au_hr_payroll_account` with demo data. - Switch to an…
Currently an error occurs when the user removes the Source Entity Id Type on Super Contributions. **Steps to Reproduce:** - Install `l10n_au_hr_payroll_account` with demo data. - Switch to an `Australian` company. - Go to `Payroll` > `Reporting` > `Australia` > `Super Contributions`. - Open an existing record or create a new one. - Remove the `Source Entity Id Type` value and click anywhere. `ValueError: Compute method failed to assign l10n_au.super.stream(<NewId origin=1>,).source_entity_id` After [change] in the selection field behavior, when the user removes the Source Entity Id Type, the compute method is triggered to compute the Source Entity ID. However, the condition in the compute method is not match, so no value is assigned. As a result, the method fails and raises an error. This commit ensures that if the condition is not match, the Source Entity ID is explicitly set to False. [1]- https://github.com/odoo/enterprise/blob/9d523d7aabffda277e1ef734caf2b0e434545dca/l10n_au_hr_payroll_account/models/l10n_au_super_stream.py#L61-L65 [change]: https://github.com/odoo/odoo/pull/214422/changes/8d2a42ac419fdf7943a0c11beb8c5de6c6f85bef Forward-Port-Of: odoo/enterprise#115466
This update resolves an issue that prevented invoices with combo products lacking taxes from being processed correctly when generating Peru UBL invoices. The fix corrects a validation error related to a 'grouping_key' setting, ensuring these invoices can now be successfully submitted. This ensures accurate and compliant invoice generation for Peru.
Original PR description
A traceback occurs when sending an invoice to Peru UBL if a combo product invoice line does not have any taxes applied. Steps to reproduce the error: - Install ``l10n_pe_edi`` module with demo data -…
A traceback occurs when sending an invoice to Peru UBL if a combo product invoice line does not have any taxes applied. Steps to reproduce the error: - Install ``l10n_pe_edi`` module with demo data - Switch to PE Company - Create an invoice > Add a Office Combo product > unset the taxes > Confirm - Process now https://github.com/odoo/enterprise/blob/d7f71a68fbd5ff9c7cd52f96e1616671a6b8d77c/l10n_pe_edi/models/account_edi_xml_ubl_pe.py#L549-L552 Here, the ``grouping_key`` becomes ``None`` when no taxes are present on the invoice line. Normally, invoices without taxes are restricted at [1], but combo products are excluded from this validation at [2]. As a result, combo product lines without taxes bypass the restriction and trigger a traceback. [1]: https://github.com/odoo/enterprise/blob/d7f71a68fbd5ff9c7cd52f96e1616671a6b8d77c/l10n_pe_edi/models/account_edi_format.py#L928-L929 [2]: https://github.com/odoo/odoo/blob/42b8852df9b323984364c41a13cf27d19fbe04a7/addons/account/models/account_move_line.py#L3433-L3434 sentry-7430552834 Forward-Port-Of: odoo/enterprise#117365 Forward-Port-Of: odoo/enterprise#114798
This update corrects a technical error that prevented the proper registration of end-of-service payments on payslips. The fix ensures that the departure registration action can now be executed on the same day as the action_date is set, resolving a test failure. This improves payroll processing accuracy.
Original PR description
Setting action_date allows to execute departure.action_register on the same day. runbot error: https://runbot.odoo.com/odoo/runbot.build.error/242533 task: 6187007 Forward-Port-Of: odoo/enterprise#116531
This update fixes an issue where PDF manager action names appeared awkwardly due to a styling class. The change removes this class, resulting in cleaner and more professional-looking action names within the PDF manager. This improves the user experience and overall presentation.
Original PR description
Previously, pdf_manager actions used class "text-uppercase". Action names looked awkward. In this commit, we remove the class and properly display action names. task-6159317 Forward-Port-Of: odoo/enterprise#117157 Forward-Port-Of: odoo/enterprise#116382
This update fixes an issue in the payroll testing environment by setting a fixed year for payrun dates. Relying on the current year for verification was unreliable, impacting the accuracy of salary calculations. This ensures consistent and dependable testing of the payroll system.
Original PR description
This commit fixes year for the test payrun as relying on today's year is not reliable to verify salary computations. Runbot build error: https://runbot.odoo.com/odoo/runbot.build.error/237683 Forward-Port-Of: odoo/enterprise#117204
This update resolves a problem where uploaded payment proofs were being corrupted and not properly attached to employee records. The fix ensures that payment proof files are now correctly attached to chatter notifications, maintaining their original file format. This improves the reliability of recording payment information.
Original PR description
### Current behavior: Uploading a proof of payment on an employee rental record raises `binascii.Error: Incorrect padding`, and posts a corrupted attachment to the chatter. Expected behavior: The uploaded payment proof file is attached to the chatter notification with its original bytes intact. ### Steps to reproduce: - Install l10n_hk_hr_payroll - Open an HK employee's rental record - Upload a file in the Payment Proof field - Observe the RPC error, or check the attachment in the chatter ### Fix: `fields.Binary` now returns a `BinaryValue` (raw bytes wrapper) instead of a base64-encoded string. `_log_new_payment_proof` was still running `base64.b64decode` on the field value, which mangled the contents. Pass the raw bytes via `.content` directly to `message_post`, which already expects non-base64 payloads. opw-6211986 Forward-Port-Of: odoo/enterprise#117191
This update corrects a misalignment issue in invoices when section prices are hidden and the country of origin is displayed. The fix ensures that tax and amount information within section lines are correctly aligned in the invoice PDF, regardless of price visibility. This improves invoice presentation and accuracy.
Original PR description
The content of an invoice's section lines is not aligned with the columns when the prices of the section are hidden and the country of origin is displayed in the invoice Steps to reproduce: 1.…
The content of an invoice's section lines is not aligned with the columns when the prices of the section are hidden and the country of origin is displayed in the invoice Steps to reproduce: 1. Install account_intrastat module 2. Go to Invoicing > Customers > Products and create a new product with name "test" and in the Accounting tab, set the Country of Origin to Afghanistan 3. Go to Invoicing > Customers > Customers and change Acme Corporation's country to United Kingdom 4. Go to Invoicing > Customers > Invoices and create a new invoice for partner Acme Corporation, add a section line and in that section, add product "test" 5. Click on the three dots at the end of the section line and click on Hide Prices 6. Confirm the invoice and print it 7. The content of the section line in the invoice pdf are not aligned (the tax is in column Unit Price and the amount is in column Taxes) Issue: When a section is hidden, no column is added in the section to display the origin, resulting in a misalignment of the tax and the amount of the section Solution: Add a column for the origin country in hidden section lines and add the origin country in product lines of `_get_child_lines` opw-6147929 Forward-Port-Of: odoo/enterprise#117092 Forward-Port-Of: odoo/enterprise#115442
This update resolves an issue where the chart type picker wasn't correctly displaying options for gauge and scorecard charts. The fix ensures that these chart types are properly recognized and selectable, enhancing the user experience when creating and modifying charts. This improves usability for users working with these specific chart types.
Original PR description
See https://github.com/odoo/odoo/pull/264650
This update fixes a display issue where the number of ECOs listed on a Bill of Materials (BoM) was incorrect. The fix ensures that only ECOs directly associated with the current BoM version are counted, resolving a mismatch between the displayed count and the actual number of ECOs. This improves the accuracy of BoM management.
Original PR description
Steps to Reproduce (Fresh Database): -------------------------------------- 1. Install `Manufacturing` (mrp) and `PLM` (mrp_plm) modules 2. Create a product > New -- Name: "Test Product" > Save 3.…
Steps to Reproduce (Fresh Database):
--------------------------------------
1. Install `Manufacturing` (mrp) and `PLM` (mrp_plm) modules
2. Create a product > New -- Name: "Test Product" > Save
3. Create BoM v1
- Go to Manufacturing > Products > Bills of Materials > New --Product: Test Product
- Add component: any
4. Create and apply ECO 1 on BoM v1
- Go to PLM > ECOs > New-- Product: Test Product | Apply on: Bill of Materials
- BoM: Test Product (v1) > Confirm > Apply Changes
- This creates BoM v2 (previous_bom_id = BoM v1)
5. Create and apply ECO 2 on BoM v2
- Same as step 4 but select BoM v2
- This creates BoM v3 (previous_bom_id = BoM v2)
6. Create a separate unrelated BoM for the same product
- Go to Manufacturing > Bills of Materials > New
- Product: Test Product | Component: "Component B" > Save
7. Create ECO 3 on the separate BoM
- Go to PLM > ECOs > New - Product: Test Product | Apply on: Bill of Materials
- BoM: select the separate BoM from step 6 > Confirm
Observed Bug:
-------------
- Open BoM v3 > ECO(s) stat button shows count = 2
- Click the button > opens 3 records (ECO 3 incorrectly included)
Explain:-
----------
The ECO stat button on the BoM form was showing a mismatched count vs
the actual records opened when clicking it. This happened because
[button_mrp_eco](https://github.com/odoo/enterprise/blob/55bfd499660d3eda0abfc9e8ed8c9a2befbd394b/mrp_plm/models/mrp_bom.py#L56) was using all keys from [_get_previous_boms](https://github.com/odoo/enterprise/blob/55bfd499660d3eda0abfc9e8ed8c9a2befbd394b/mrp_plm/models/mrp_bom.py#L67)() as the
domain, which includes BoMs from unrelated lineages of the same product
template, while [_compute_eco_data](https://github.com/odoo/enterprise/blob/55bfd499660d3eda0abfc9e8ed8c9a2befbd394b/mrp_plm/models/mrp_bom.py#L20) only counts ECOs belonging to the
current BoM's version lineage.
Fixed by filtering the domain to only include BoM IDs whose lineage set
contains the current BoM ID, making the opened records consistent with
the displayed count.
Before Fix
<img width="1901" height="875" alt="image" src="https://github.com/user-attachments/assets/3208aed5-ebd3-47a3-a457-a7d61b7743cb" />
```
In [24]: labo = self.env['mrp.bom'].browse(710)
In [25]: previous_boms_mapping = labo._get_previous_boms()
In [26]: Test = ['&', ('bom_id', 'in', list(previous_boms_mapping.keys())), ('type', '=', 'bom')]
In [27]: Test
Out[27]:
['&',
('bom_id',
'in',
[710,
1991,
2049,
1913,
1840,
1823,
1676,
1759,
1794,
1651,
1604,
1544,
1537,
1527,
1506,
1460,
1265,
1259,
1196,
1221,
1223,
1060,
1029,
960,
858,
850,
791,
739,
723,
698]),
('type', '=', 'bom')]
```
With My Fix
<img width="1824" height="947" alt="image" src="https://github.com/user-attachments/assets/0d68fdbc-7e42-4ce4-a326-2fb030ba1d06" />
```
In [15]: labo = self.env['mrp.bom'].browse(710)
In [16]: previous_boms_mapping = labo._get_previous_boms()
In [17]: previous_boms_mapping
Out[17]:
{710: {710},
1991: set(),
2049: set(),
1913: set(),
1840: set(),
1823: set(),
1676: set(),
1759: set(),
1794: set(),
1651: set(),
1604: set(),
1544: set(),
1537: set(),
1527: set(),
1506: set(),
1460: set(),
1265: set(),
1259: set(),
1196: set(),
1221: set(),
1223: set(),
1060: set(),
1029: set(),
960: set(),
858: set(),
850: set(),
791: set(),
739: set(),
723: set(),
698: {710}}
In [18]: relevant_bom_ids = [
...: bom_id
...: for bom_id, current_bom_set in previous_boms_mapping.items()
...: if labo.id in current_bom_set
...: ]
In [19]: relevant_bom_ids
Out[19]: [710, 698]
```
Task-6065020
Forward-Port-Of: odoo/enterprise#117149
Forward-Port-Of: odoo/enterprise#114039This update corrects a display issue in the Payrun Time Off Gantt view, where employee names were showing inconsistently compared to other time off applications. The change hides employee names from this specific view, ensuring a more uniform and professional appearance across all time off reporting. This improves the user experience and data clarity.
Original PR description
In payrun time off step, we get the full name of the employee in the Gantt view. But it is inconsistent with the rest of the time off application. Hide employee names from the Gantt view of Payrun Time Off. task-6190437 Forward-Port-Of: odoo/enterprise#116365
This update fixes a bug in the Belgium Payroll DMFA report that incorrectly displayed 'Days Per Week' as 5 when employees worked fewer than 5 days a week. The fix accurately calculates the number of working days based on the employee's schedule, ensuring accurate reporting for Belgian payroll compliance.
Original PR description
## Issue When generating a DMFA report with a working schedule with more or less than 5 days a week, the *Days Per Week* value in the report is still appearing as 5. ## Steps to reproduce 1. Install…
## Issue
When generating a DMFA report with a working schedule with more or less than 5 days a week, the *Days Per Week* value in the report is still appearing as 5.
## Steps to reproduce
1. Install *Belgium - Payroll* (`l10n_be_hr_payroll`)
2. In Payroll's Settings:
- set *ONSS Registration Number* to `0830123456`
- set *DMFA Employer Class* to `083`
- create a *Work Address DMFA code* (any name, any numeral code, but set the *Working Address* to the Belgian company used for the rest of the steps)
3. In Employees' Settings, set the *Company Working Hours* to a new Working Schedule, with 9 hours/day, 4 days/week. E.g from Monday to Thursday included:
- Work from 8:00 to 12:00
- Lunch from 12:00 to 13:00
- Work from 13:00 to 18:00
4. Create an Employee E for the Belgian company:
- In the *Payroll* tab, set the start date of the contract to 01/01/2026.
- In the *Personal* tab, set the *NISS Number* to `85073003328`
5. Create the payslip for January 2026 for the Employee E.
6. In Payroll > Reporting > Belgium > DMFA, create a new DMFA for the first quarter of 2026 and generate the PDF report
7. **In the generated PDF report, the _Days per Week_ line is set to 5.**
## Cause
The number of days was calculated by multiplying `5` with the `work_time_rate` of the related calendar. This is inaccurate in the case of a company where employees are only expected to work 4 days a week.
opw-6103934
Forward-Port-Of: odoo/enterprise#117116
Forward-Port-Of: odoo/enterprise#113804This update fixes an issue where the attendance report incorrectly displayed double the hours for employees with flexible schedules and overlapping shifts. The fix ensures that the report accurately reflects the total planned time, addressing a discrepancy in how overlapping shifts were counted.
Original PR description
__ ## Short functional explanation of the error When for an employee with a Flexible schedule, we set a shift overlapping on two days. The attendance report displays twice the worked hours. ##…
__ ## Short functional explanation of the error When for an employee with a Flexible schedule, we set a shift overlapping on two days. The attendance report displays twice the worked hours. ## Reproduction Steps 1. Create an employee with a flexible schedule and with Work Entry Source set at Planning. 2. Go to Planning. Create a Planning Slot for this employee from 9 pm to 5 am, then Send and Publish it. 3. Click on the Reporting tab > Planning / Attendance Analysis. ### Expected behavior The total for this Month for this employee under the Planned Time field should be equal to 8 hours, which is the duration of the planning slot. ### Unexpected behavior The total for this Month for this employee under the Planned Time field is equal to 16 hours. ## Origin of the issue This report is a view, for which the SQL is defined starting this line: https://github.com/odoo/enterprise/blob/7362f1c5be7f496bdab660ed8fad37a6dd283616/planning_attendance/report/planning_attendance_analysis_report.py#L27 the issue stems from here: https://github.com/odoo/enterprise/blob/7362f1c5be7f496bdab660ed8fad37a6dd283616/planning_attendance/report/planning_attendance_analysis_report.py#L56 where we don't select distinct the planning entries based on their ID. As our shift overlaps 2 days, there will be only one entry for this shift in the `planning_slot`, but because of that, it will be duplicated. __ opw-6146052 Forward-Port-Of: odoo/enterprise#117276 Forward-Port-Of: odoo/enterprise#115447
This update addresses a potential issue where incorrect domain warnings could occur when using equality comparisons (=) within Odoo's collection-based filtering. The changes enhance the reliability of domain filtering, preventing unexpected behavior and ensuring data accuracy across several Odoo modules. This improves the overall stability and performance of the system.
Original PR description
https://github.com/odoo/odoo/pull/264706
This update fixes a reporting issue in the Profit & Loss report for Peruvian companies. Previously, depreciation entries were incorrectly categorized as 'Other Income'. The change ensures that depreciation expenses are now correctly classified within 'Other Operating Expenses', improving the accuracy of financial reporting.
Original PR description
**Steps to reproduce:** - Install Accounting and l10n_pe_reports - Switch to a Peruvian company (e.g. PE Company) - Create a MISC journal entry with a line using a depreciation account (e.g. 6841000) and a debit value (e.g. 1000) - Post the entry - Check "Profit and Loss" report" **Issue:** The "Other operation income" section has an amount of 1000, even though a depreciation account (i.e. expense) was used. The amount should be in "Other operating expenses" section. **Cause:** A unique formula including accounts starting with 61, 66, 68, 71, 73, 74, 75, 76, 78, 79 and 99900 is used for "Other operation income" and "Other operating expenses" and depending on the sign of the sum, the result is reported in one of the section. **Solution:** Only report entries on "Income" accounts in "Other operation income" section and those on "Expense" accounts in "Other operating expenses". opw-6073666 Forward-Port-Of: odoo/enterprise#114362
This update corrects a problem that caused invoices with many items to fail SAT validation (CFDI40111 & CFDI40108) due to currency precision issues when applying per-line discounts. The fix ensures accurate discount calculations, preventing invoices from being rejected by tax authorities.
Original PR description
…any lines Fix SAT validation errors CFDI40111 and CFDI40108 that occur when invoices with many lines contain a small negative line, causing per-line discounts to be hidden due to currency precision. opw-6187014 Forward-Port-Of: odoo/enterprise#117375 Forward-Port-Of: odoo/enterprise#117297
This update optimizes PDF generation by compressing files after merging, resulting in significantly smaller output sizes. It also addresses a memory leak in the PDF processing, leading to more efficient resource usage. The changes improve PDF generation speed and reduce storage needs.
Original PR description
When merging pages with pypdf, the resulting content is uncompressed. A compression pass should be done right after to reduce the resulting file size. Additionally, this helps alleviate a memory leak in PyPDF2 where resources in the merged page are not properly released. Newer versions of pypdf (>=3.15.4) do not have this leak but still see benefits in the output file size. In practice the CPU overhead is negligible, and we actually see a speed increase in cases with high memory usage. Benchmark Printing 400 page annual report | |Print Time|Peak Memory|Output File| |------|----------|-----------|-----------| |Before|142s |3.6GB |103MB | |After |127s |0.4GB |5MB | opw-6148786 Forward-Port-Of: odoo/enterprise#117404 Forward-Port-Of: odoo/enterprise#115550
This update fixes an error that prevented users from being created correctly when Studio and Livechat were installed and configured. The issue stemmed from a timing problem during user setup, causing a required field to be missing. The fix ensures the 'Color Scheme' field is always populated with a default value, allowing successful user creation.
Original PR description
Steps to reproduce: 1. Install Studio and Livechat 2. In user's form view change the location of Theme field after the livechat fields. 3. Now, try to create a user from name and email only Issue: - It throws an error: The operation cannot be completed: Missing required value for the field 'Color Scheme' (color_scheme). Cause: - During user creation after studio modification, im_livechat inverse methods access res.users.settings before it is fully initialized. then later write a falsy `color_scheme` value to that settings record, violating the required constraint on res.users.settings.color_scheme. Solution: - Ensure that when creating or updating `res.users.settings`, if `color_scheme` is empty or false, It is automatically set to the default value "system" opw-5918538 Forward-Port-Of: odoo/enterprise#109062
This update fixes a bug that prevented multi-day shift records from appearing on the live map. It now correctly displays shifts with a partner and ensures the Gantt and Calendar views scale appropriately to 'day', improving the map's usability for technicians and managers. This enhancement ensures accurate shift tracking and visualization.
Original PR description
This commit changes the domains for the "My Map" and "Map By Resource" to only include shifts with a partner. Previously, it was including 'today' as part of the domain, which is incorrect as users may still want to view other days' shifts. task-6180159 Forward-Port-Of: odoo/enterprise#115813