Daily updates from Odoo
Tuesday, May 16, 2023
4 changes · master
Enhancements to existing features
Managers can now validate timesheets for the current day, making daily approval workflows more flexible. Users can also continue entering time today even if the latest validation happened today, and the message shown when there is nothing to validate is clearer.
Original PR description
* Allow today's timesheet validation. * Allow users to timesheet today, even if last validation is today. * Adapt Error Message when no timesheet to validate. task-3284604
Resolved issues and error corrections
HR teams can now run salary simulations for part-time work without first changing an employee contract or manually creating a payslip. This makes compensation planning faster and less error-prone when assessing reduced working schedules.
Original PR description
Purpose ======= There is no easy way to make a partial simulation without having to create manually a payslip after having modified the contract itself.
Features or functions removed from Odoo
Subscription sales order lines no longer keep a separate pricing reference. Subscription duration and units now follow the sales order recurrence, making subscription pricing behavior more consistent and easier to manage.
Original PR description
In this commit, we removed the pricing_id field from the sales order line
model.
Technical:
Duration and Unit will come according to the recurrence of sale order, earlier it
was coming according to the recurrence of pricing_id.
task-3251442Code cleanup and technical improvements
Financial reports have been rebuilt on Odoo's newer interface framework, making them easier to maintain and customize. This also separates on-screen report layouts from PDF printing layouts, helping future changes to each format be handled more reliably.
Original PR description
### [REF] account_reports: conversion to owl This commit converts account_reports to owl. Here is a list of the main components: * **AccountReportController** is the main component. It is in charge…
### [REF] account_reports: conversion to owl This commit converts account_reports to owl. Here is a list of the main components: * **AccountReportController** is the main component. It is in charge of all the heavy lifting like getting the data from the database (with get_report_information), keeping the data well formatted with getters/setters functions, offering a bunch of helpers functions and managing functions useful for other components (line visibility, footnotes, etc). * **AccountReport** represent an account report (duh). Its main function is to construct the report. It is the one that calls AccountReportController to get the data and make it available on other components. It is also in charge of the overriding of components and templates that allows reports to be fully customizable. To override a component you can use the `_get_custom_display_config` hook function defined in `account_reports.py`. * **AccountReportFilters** is in charge of managing all the filters available on an account report. * **AccountReportHeader** is the table header of a report. It can manage all column interactions such as sorting. * **AccountReportLine** represents a table row of a report (expect the ones on the table header). It also manage the debug popover. * **AccountReportLineName** represents the cell on the far left of a table row. It manages the load more, the caret options and the foldable of a line. * **AccountReportLineCell** represents all other cells of a table row. It is in charge of the auditable functionality and the edition of manual values. As said, those are only the main components. There is a few more used for more specific stuff. This commit also separates the templates used for the display of account reports in the web client and the templates used for pdf printing. The pdf templates can be overriden the same way as the components by using the `_get_custom_display_config` hook function on `account_reports.py`.