Daily updates from Odoo
Tuesday, June 17, 2025
6 changes · master
Enhancements to existing features
The payroll app menus have been reorganized to make common options easier to find and improve day-to-day navigation. A version menu item is also now available in debug mode, helping support and administrators access version details when needed.
Original PR description
Reorganise payroll menu items for better UX. Add a menu item for version in debug mode. Task: 4866864
The employee payslip shortcut now shows both employee-specific payslips and global payslips linked through payroll batches. This gives payroll teams a more complete view from the employee record and reduces the chance of missing relevant payroll documents.
Opening spreadsheets no longer shows an informational notification that could cover important controls such as filters. This makes spreadsheet access smoother and reduces interruptions for users working with documents, dashboards, sales, and quality spreadsheet views.
Original PR description
Notifications when opening a spreadsheet are not very useful and can be annoying, as they hide the buttons below them (e.g. the "Filter" button). Task: 4863675
Procurement users can now choose any contact when replenishing products through the buy route, instead of being limited to existing vendor pricelist entries. This reduces setup work while preserving the existing vendor selection and pricing logic when quantities determine the best supplier terms.
Original PR description
Description of the issue/feature this PR addresses: When using the replenish wizard, and the route is buy, as a procurement specialist, I can only use vendors in the product pricelist. However, as a…
Description of the issue/feature this PR addresses: When using the replenish wizard, and the route is buy, as a procurement specialist, I can only use vendors in the product pricelist. However, as a procurement specialist, I should be able to order a replenishment from any partner (and if the PO is confirmed this partner will be added to vendor list automatically) . Current behavior before PR: To replenish a product from a partner that is not in vendor pricelist from the replenish wizard, currently I must either add him to the pricelist or make a purchase order. Desired behavior after PR is merged: 1 Allow replenishement from any partner in the replenishement wizard, by changing the supplier search box from vendor list only to vendor first, in blue, and then all partners in normal display. 2 Allow to create and edit partner from the supplier search box (no-quick create) 3 Make sure that the logic of selecting the right vendor pricelist based on quantity logic is unaltered. mockUp: https://app.excalidraw.com/s/65VNwvy7c4X/AnCh9Yc40OQ task: 4314668 link to community PR: https://github.com/odoo/odoo/pull/212891
Manufacturing shop floor users can now adjust routing directly from a workorder, including creating another workorder or moving work to a different work center. This gives teams more flexibility to react to production needs without leaving the shop floor workflow, even when a workorder is already in progress.
Original PR description
**Desired behavior after PR is merged:**
- Add modify routing button in shopfloor workorders with the ability to create another workorder or move work centers
- Allow moving to another work center while the workorder is still in progress
Task:4850003PDFs used to create signing templates are now protected so existing form fields cannot be changed in a PDF viewer. This helps preserve document integrity and reduces the risk of unintended edits during signing workflows.
Original PR description
- Introduced `flatten_pdf` method to process base64-encoded PDFs and set all form fields as read-only by updating the `/Ff` flag. - The method reads the PDF, copies all pages, retrieves the AcroForm fields, and sets the ReadOnly flag bit for each form field. - Ensures the resulting PDF is flattened so form data cannot be modified in PDF viewers, improving document integrity for signing workflows. - Returns the flattened PDF encoded back to base64 for further use.