Tuesday, January 9, 2024
15 changes
7 changes
Enhancements to existing features
Appointment booking now saves attendee details in the browser after form confirmation, so people without an existing contact profile do not need to re-enter the same information. This makes rescheduling, canceling and rebooking appointments faster and reduces repeated data entry.
Original PR description
Purpose ======= Prevent the attendees without partner data from having to refill their info the next time they're booking an appointment. Specification ============= Saving their data in the local storage at form confirmation to autofill the form in case the appointment is canceled/rescheduled or another appointment is booked. Task-3594746
Users opening barcode scanning from the Barcode app main menu or operations views now see a manual barcode dialog first instead of the camera opening immediately. This lets them type a barcode when needed, still use the camera from the dialog, and receive a clear notification if camera access is unavailable.
Original PR description
Before this commit, clicking on the barcode image to scan opened the camera directly. Now it opens the manual barcode dialog where the user can enter the barcode manually or use the camera.
Users can now move eligible shared Knowledge articles directly into the shared section when those articles are shared with at least one external partner. This preserves partner access during the move, reducing friction when reorganizing shared content.
Original PR description
Purpose: - Previously, the shared section allowed dropping an article only if it was moved under another shared article or if the article being moved was already a shared root article. With this commit, dropping an article into the shared section is permitted as long as this article is shared with at least one partner (excluding the user initiating the move and internal permissions, but including inherited permissions). In the case where a partner had access to the moved article through access inheritance, a new member will be created for this article so that this partner keeps his read/write access on this article. Task-3603579
Project task progress and overlap warnings now use allocated hours instead of only start and end dates. This gives managers a clearer view of team workload across multiple projects and reduces false overload warnings, while still handling field service tasks with their specific scheduling rules.
Original PR description
Before this commit, the progress bar values were calculated based on the task's start and end dates. This method proved inefficient for task planning, as it didn't account for the possibility of a…
Before this commit, the progress bar values were calculated based on the
task's start and end dates. This method proved inefficient for task
planning, as it didn't account for the possibility of a user being
assigned to multiple projects concurrently. For example, if a user had
a 40-hour work week, divided between 10 hours on Project A, 15 hours on
Project B, 5 hours on Project C, and 10 hours on Project D, the
previous system would inaccurately indicate resource overload and
potential task conflict.
With this latest update, progress bar computations are now based on the
actual allocated hours, providing a more accurate reflection of task
distribution. Additionally, if a task's end date extends beyond the
Gantt view's boundaries, the progress bar values are adjusted to
represent only the visible portion of the task, which aligns with the
percentage of the task that is actually visible.
Moreover, overlapping warning are now computed based on allocated hours
as well. The condition for a conflict is that the combined allocated
hours are larger than the workable hours of the user the planned dates.
This modification does not apply the field service tasks :
Unlike other tasks, fsm tasks overlap in two scenarios:
1. When the combined allocated hours of an fsm task and
a normal task exceed the user's workable hours.
2. When two fsm tasks have overlapping planned dates.
Example:
- Task A (normal) conflicts with Task B (fsm) if their combined
hours > user's workable hours. Both have 1 conflict.
- Introduce Task C (fsm) with no allocated hours (no conflict
with Task A) but same time period as Task B.
Result => Task A has 1 conflict, Task B has 2 conflicts, Task C
has 1 conflict.
taskid:3349378Payroll dashboard warnings can now be configured to better match each company’s needs and installed payroll features. This helps payroll teams see more relevant guidance and reduces one-size-fits-all messages on the dashboard.
The obsolete setting for choosing a down payment product has been removed because it has not been used since Odoo 16.2. Down payments now rely on the standard accounting flow, reducing configuration clutter and avoiding confusion for sales and subscription users.
Original PR description
Since version 16.2, the Down Payments setting became obsolete. Dead field, never used. Odoo: https://github.com/odoo/odoo/pull/145887 Upgrade: https://github.com/odoo/upgrade/pull/5430 Task: 3618096
The appraisal app now presents readiness as a clearer status, with updated status colors and a new Ready filter. Employee avatars were removed from the appraisal view to simplify the interface and help users focus on appraisal progress.
Original PR description
The commit message summary is a concise and clear representation of the changes made in the commit. - Changed the color of the status. - Remove the employee avatar. - Converted the 'ready' banner into a state. - Added a filter 'Ready'. task - 3500932
8 changes
Enhancements to existing features
The SIG (Intermediate Management Balances) financial report for French companies has been redesigned to improve readability and consistency with other financial reports. The changes reorganize how sections are displayed and adjust the visual hierarchy to make the report easier to understand and navigate.
Original PR description
In 16.3 and 16.4 we worked a lot on making the report more readable but the SIG report was forgotten during those changes. Commit: - https://github.com/odoo/enterprise/commit/d2d4f5e04042eb420f0f4c566269d1148baf84f7 - https://github.com/odoo/odoo/commit/56a7f7745c5df9b70e6fe5b78f401085ce46284c - https://github.com/odoo/enterprise/commit/538294661a5c0c748b55ad2d335448cd14700886 This commit will change the report to be more consistent with the other by changing the disposition of the section and changing the hierarchy level either by removing it and take advantage of the children_ids or changing to 0 to have the css highlight. task: 3669714
Resolved issues and error corrections
Fixed an issue where branch companies couldn't see their parent company's accounts when setting up deferred entry options in the accounting module. Now branch companies can properly access and use parent company accounts for accounting configurations, improving the flexibility of multi-company accounting setups.
Original PR description
[FIX] account_accountant: include parent companies accounts Issue: When listing accounts options for deferred entries of a branch it doesn't show the the accounts of the parent company Steps to reproduce: 1. Install Accounting App 2. Go to settings 3. Go to Users&Companies 4. Go to Companies 5. Choose a company 6. Branches 7. Create a new branch 8. Go to accounting app 9. Go to settings 10. Change current company to be the new branch 11. Go to default accounts 12. list deferred entries options Solution: The domain on these fields was defining a criteria that the account's company should be the same as the current company while the current company can be a branch of another company, so we changed the criteria opw-3633186
This fix resolves an issue where utility products were not being properly loaded when opening a point of sale session in the Belgian blackbox module. A recent code change had inadvertently ignored the product loading rules, preventing these essential products from appearing. The fix ensures these utility products are now correctly available when staff start their POS sessions.
Original PR description
Since b90cae065001aa44fb05532950b78732217649a7, the domain from _loder_params_product_product is ignored. But the utility products that are supposed to be loaded are declared in that method. In this commit, we now override the _get_available_product_domain to make sure the utility products are loaded when opening a pos session.
This fix corrects a bug where appointment locations were incorrectly displayed as "Online" meetings on the customer-facing booking page. After this change, the "Online" status will only appear when no physical location has been assigned to an appointment type, ensuring customers see accurate meeting location information.
Original PR description
Steps to Reproduce ================== 1) Create a new appointment type. 2) Assign a location to it. 3) Access the front-end. - It is displayed as being online. Technical Details ================= Following this commit https://github.com/odoo/enterprise/commit/5ed8ea8e5fa65af700484aeab7745f127166d00a, the xpath in the file `appointment_templates_appointments.xml` within the `appointment_account_payment` module is causing it to fall within the if-else statement. To resolve this, change the class position from "else div" to "if div". After this PR ================= The "Online" status will only be shown if the location is not set. Task-3668128
This update fixes a problem that prevented users from accessing Customer Statements reports in Odoo Studio. The issue occurred when trying to view the report without applying filters. The fix simplifies how the system retrieves customer data, making the report more reliable and accessible to all users.
Original PR description
l10n_account_* = l10n_account_customer_statements Steps: - Install `web_studio` - Install `l10n_account_customer_statements` - Open Studio from anywhere - Go to Reports and remove default filter - Select `Customer Statements` report - Traceback `CustomerStatementReport:_get_report_values` function was using `data['context']['active_ids']` to get `res.partner` records. We can just use `_get_report_values`'s params `docids`
This fix prevents empty project groups from appearing in timesheet list and filter views when there are many active projects. Previously, the system was incorrectly showing projects with zero timesheets due to how groups were being expanded across different view types. The fix ensures group expansion only applies to the grid view where it's needed, eliminating confusing empty entries for users.
Original PR description
### Steps to reproduce: Have more than 80 project active on your db, go to my timesheets/all timesheets (or activate the my project filter) views> list view > group by project > some of the group…
### Steps to reproduce: Have more than 80 project active on your db, go to my timesheets/all timesheets (or activate the my project filter) views> list view > group by project > some of the group project will show 0 timesheets linked even tho they do have timesheets ### Issue: the empty groups that have timesheets should not be displayed at all ### Cause: The _group_expand_project_ids supposed to be only for the grid view also triggers for the other views, the read_group of the listview has a base limit of 80 but with the group expand 100 groups are fetched by page so more "empty" project groups are fetched to fill the result ### Solution: Local solution to test thoroughly, renamed the 'group_expand' keys in the My timesheet/ All timesheets/ my project filter/ timesheet_view_grid_by_project_no_section by 'grid_group_expand' In the read_grid method we check if that 'grid_group_expand' is present in the context, if so it'll also add the 'group_expand' key in the context then do the read_grid custom expansion The _group_expand_project_ids and _group_expand_employee_ids now need to have this 'group_expand' in their context so basically they can now only be triggered if the read_grid method has been triggered before. This ensures us that this group expand can't happen alone in the list/kanban/... views **this solution should be reviewed since i wasn't able to trigger the _group_expand_project_ids when the grid_view is enabled, so it may be possible to completely deprecated the _group_expand_project_ids method (as well as the _group_expand_employee_ids)** Ticket-3450175 Forward-Port-Of: odoo/enterprise#53521 Forward-Port-Of: odoo/enterprise#51615
This fix corrects an issue in the Belgian payroll module where holiday pay was being incorrectly recovered during salary simulations. The change ensures that when employees use the salary simulation tool, holiday pay calculations are handled properly without unintended deductions. This improves the accuracy of payroll forecasts for Belgian companies.
Original PR description
Forward-Port-Of: odoo/enterprise#53627
The system was displaying incorrect caller information during incoming calls due to phone number formatting mismatches between the database and the phone system. This fix removes the unreliable caller identification feature to prevent confusion, while also improving system performance. The feature will be reimplemented once a more reliable solution is found.
Original PR description
The search for a partner corresponding to the number of an incoming call doesn't work correctly and shows the wrong partner most of the time. This is really confusing; better to show nothing than something wrong and misleading.
Futhermore, since 3efd8e84865d8abdda89553c7fec761725a9cd58 where `sanitized_{mobile,phone}` were mistakenly removed, the phone numbers in the database and those sent by the PBX aren't formatted the same way, making it even less likely to get a relevant match.
As this also has a bad impact on performance, this commit removes the feature until we find an acceptable tradeoff.
Forward-Port-Of: odoo/enterprise#49169