Monday, June 17, 2024
7 changes · master
Enhancements to existing features
Customers can no longer restart closed subscriptions from the portal when the related subscription plan or product has been archived. This prevents payments from reactivating offerings that the business has intentionally discontinued or removed from sale.
Original PR description
Before this commit: Previously, customers had the ability to reopen any closed subscription via payment from the portal, irrespective of whether the associated plan or product was archived. After this commit: Following this update, customers will no longer be able to reopen closed subscriptions from the portal if they are linked to archived plans or products. Task-3756259
The HR referral recruitment dashboard has been updated with improved data so teams can get clearer insights from the spreadsheet dashboard. This helps business users review referral recruitment information more accurately and make better-informed staffing decisions.
Original PR description
task-3964448
Odoo Studio’s view editors are being prepared for upcoming kanban editor improvements, with cleaner sidebar components and better field filtering. Users gain more flexibility by being able to edit CSS class values from the editor, while test updates improve reliability for future development.
Original PR description
This PR contains multiple improvements and changes in the web_studio module. This is done in preparation of task-3650117, which will improve the kanban editor UX. This will come in another PR later, with a minimal diff containing only the newest editor and its related changes. The code has been simplified in some commits, and there is a small set of tests converted to the HOOT framework. Those are the basis for future conversions and the tests of the newest editor.
Brazilian tax and electronic invoicing integrations now use expanded address fields when sending customer or company address details. This helps improve address accuracy for tax calculation and electronic document processing, reducing the chance of mismatches or incomplete information.
Original PR description
Now that we depend on base_address_extended in l10n_br we can send more accurate addresses. task-3958544
Kanban cards are now clickable by default across Odoo, while specific business views that should not open records directly opt out of that behavior. This keeps day-to-day navigation more consistent while preserving specialized workflows in areas like accounting, documents, HR, manufacturing, stock, social, and timesheets.
Billing targets are now set as percentages on each employee record instead of using one company-wide setting. Timesheet leaderboard calculations now account for each employee's working calendar, making billable rate tracking more accurate across months with different schedules.
Original PR description
This commit introduces the following changes: - Remove the billing rate target from the company settings. - Instead, replace the billing time target on the employee form by a billing rate target. - Change the computation of the billable rate in the leaderboard by using the employee working calendar (and not the billing time target anymore). - Change the comparison made to know if an employee has reached its target by using the billing rate target set for the employee (and not the target rate defined in the company settings anymore). The rationale is that as each month is different, so is the working calendar of employees. To take the variations between months into account, we now compute the billable rate of employees as such: Current number of billable hours of the employee / Number of hours currently worked by the employee according to his working calendar task-3609085
The document sharing process now avoids creating temporary share records before they are actually needed, reducing unnecessary background calls when users open or cancel the share popup. Spreadsheet sharing keeps the same performance by handling snapshots through the share data flow without extra user-facing steps.
Original PR description
Purpose ======= There are many things that can be improved in the current sharing flow Share popup ----------- We always create a `document.share`, and if we don't use it, we manually make an unlink…
Purpose ======= There are many things that can be improved in the current sharing flow Share popup ----------- We always create a `document.share`, and if we don't use it, we manually make an unlink RPC call to remove the temporary record... This is very inefficient because we make an RPC call to create the record, one to get the action, one to remove the record if we cancel the modal, etc. Instead, we can just not create the record at all, and refactor the code in that direction (so the share URL needs to be just based on the token, not on the ID, since we need to copy the URL before the record is created). Spreadsheet ----------- When we share a spreadsheet, we make a snapshot of it. This snapshot is saved in the model `documents.shared.spreadsheet`, and it can not be done in python. Before it used the fact that the share was created to not make an RPC call, but it can not be used anymore. We can still avoid making an RPC call by creating a new non-stored field, with an inverse, that way the performance remain the same. So, we have a lot of code with RPC call to create those snapshot records, Task-3924439