Monday, January 4, 2021
6 changes · master
Enhancements to existing features
This update removes rarely used database indexes and adds targeted ones in Inventory and Manufacturing. It should reduce storage overhead and improve performance for common logistics operations, especially searches involving lots and bills of materials.
Original PR description
Review all indexes of main logistics modules: - Remove useless ones (10) to gain insert/update performance and save some space disk - Add few indexes (4) on some fields to gain in scalability (performance). Improve a bit the populate script. odoo/upgrade#2042
The eLearning app now makes it easier to review course attendees from contacts, course pages, and reporting menus. Users can see enrollment and recent activity dates more clearly, helping teams monitor learner engagement and participation across courses.
Original PR description
Below listed are the major changes in this improvement. 1. replaced the view from the stat button by a view list and added default search filter = contact in contact module. 2. also added 'enrolled on' and 'last action on' date in contact form where 'enrolled on' is the date of attendee record created and' last action on' is the date from the last action. 3. In e-learning member view 'last action on' field is added next to 'created on '. 4. added a default search filter with the name of the course, so that we can display all the attendees from all courses. 5. added a new menu "attendees" under the reporting menu.
The eLearning app now makes it easier to review course attendees from contacts, course pages, and reporting menus. Users can see enrollment and last activity dates, apply more useful default filters, and access a dedicated attendees report for better course follow-up.
Original PR description
Below listed are the major changes in this improvement.
1. replaced the view from the stat button by a view list and added
default search filter = contact in contact module.
also added 'enrolled on' and 'last action on' date in contact form where
2. 'enrolled on' is the date of attendee record created and' last action
on' is the date from the last action.
3. In e-learning member view 'last action on' field is added next to
'created on '.
4. added a default search filter with the name of the course, so that
we can display all the attendees from all courses.
5. added a new menu "attendees" under the reporting menu.Surveys that include certification badges can now be duplicated without causing an error. The duplicated survey no longer carries over the original badge, allowing users to create a new unique badge for the new certification.
Original PR description
PURPOSE Be able to duplicate a survey with a badge. SPECIFICATION If survey has a badge an try to duplicate it, it should duplicate everything and remove the badge. As badge is unique per certification, it's ok to let the user create a new badge for this new certification. TaskID - 2265556 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change adds a database-level safeguard to stop conflicting work entries from being created at the same time. It improves payroll and HR data reliability by preventing overlaps that could previously slip through during simultaneous processing.
Original PR description
Purpose ======= There is no way for _error_checking() to detect conflicts in work entries that have been introduced in concurrent transactions, because of the transaction isolation. So if 2…
Purpose ======= There is no way for _error_checking() to detect conflicts in work entries that have been introduced in concurrent transactions, because of the transaction isolation. So if 2 transactions create work entries in parallel it is possible to create a conflict that will not be visible by either transaction. There is no way to detect conflicts between different records in a safe manner unless a SQL constraint is used, e.g. via an EXCLUSION constraint [1]. This (obscure) type of constraint allows comparing 2 rows using special operator classes and it also supports partial WHERE clauses. Similarly to CHECK constraints, it's backed by an index. 1: https://www.postgresql.org/docs/9.6/sql-createtable.html#SQL-CREATETABLE-EXCLUDE TaskID: 2357844 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
This change adds a stronger database-level safeguard to prevent overlapping work entries from being created when records are processed at the same time. It improves payroll and attendance data reliability by blocking conflicts that normal application checks could miss during concurrent updates.
Original PR description
Purpose ======= There is no way for _error_checking() to detect conflicts in work entries that have been introduced in concurrent transactions, because of the transaction isolation. So if 2 transactions create work entries in parallel it is possible to create a conflict that will not be visible by either transaction. There is no way to detect conflicts between different records in a safe manner unless a SQL constraint is used, e.g. via an EXCLUSION constraint [1]. This (obscure) type of constraint allows comparing 2 rows using special operator classes and it also supports partial WHERE clauses. Similarly to CHECK constraints, it's backed by an index. 1: https://www.postgresql.org/docs/9.6/sql-createtable.html#SQL-CREATETABLE-EXCLUDE TaskID: 2357844