Daily updates from Odoo
Wednesday, September 25, 2024
10 changes · master
Enhancements to existing features
Several labels and fields in the Belgian salary configurator can now be translated. This makes the tool easier to use for employees and administrators working in different languages.
Original PR description
This PR allows several fields to be translatable in the salary configurator, which were previously untranslatable. task-4116696
Studio approval workflows now let authorized users revoke approvals made at lower notification levels, giving teams better control over multi-step approvals. The update also fixes a mobile debug crash in the approval dropdown and refreshes records after approval actions so related discussions stay current.
The Documents app has been redesigned so folders, files, sharing, permissions, and shortcuts are managed in one place. This gives users clearer document navigation, simpler sharing links, improved portal access, and more consistent permissions across related apps such as HR, Sign, Project, Fleet, and Spreadsheet.
Original PR description
Commit messages are being written... could start with: [IMP] documents, *: modernize access rights, sharing, and actions #### Model changes * `documents.folder` is merged into `documents.document`…
Commit messages are being written... could start with:
[IMP] documents, *: modernize access rights, sharing, and actions
#### Model changes
* `documents.folder` is merged into `documents.document` ("`document`" below)
=> Records with `type=folder`
* `documents.share` is removed,
=> Sharing is now defined on each `documents.document` (see below)
* `documents.access` is added to store partners access and access logs
* `documents.workflow.action` is removed and functionally replaced by
`ir.embedded.actions` records linked to `ir.actions.server`
* `documents.facet` are removed, `documents.tag` are now available cross-app
##### `document` types
Functionally, folders are now displayed together with files in our kanban view,
where folders can be entered with double click.
Shortcuts are also introduced for quick access to a `document` from
another place.
Technically, types are materialized in the `type`, `attachment_id`, and
`shortcut_document_id` fields.
The type can be `binary`, `url`, `folder`.
The old `request` type is virtualized by the `type=binary` with
`attachment_id=False` condition (which was already true),
and shortcuts have a set `shortcut_document_id` and match their type.
##### Access rights
Access rights and sharing are now directly, and only, defined on each
`document` and result in a user's permission `user_permission`.
* User permissions are:
* `view`: right to view a document's fields value.
* `edit`: right to edit a document + upload inside for folders, update sharing
Note that public users are only able to upload.
* `none`: no right
* These permissions can be defined to give access to users via a combination
of parameters. When users match multiple conditions, they are granted the
highest permission given by these:
* The `owner` of a document now has `edit` permission.
* Individual partners can be added (see Knowledge's "Members")
(m2m `documents.access`)
* All internal users via `access_internal`
* All users that have the link to the document (enabled via `access_via_link`)
That is either:
* Having the URL (access token)
* Unless marked as "non-discoverable" via `is_access_via_link_hidden`
having access to a related record:
* The parent folder,
* A shortcut to the document,
* In selected cases (such as project), access to the related record
This access is logged so that on new access to the app, a visited
document is still accessible (as long as it is shared in the same way)
without having to click on the direct link or related record again.
* Upon creating a document inside a folder:
* Default: Access rights on the document are inherited from the folder.
* Customization: Via the documents.mixin, other values can be defined
depending on the linked record.
* Documents will now appear in different sections:
* Company: All documents owned by OdooBot and their children,
as well as all documents shared with all internal users
* My drive: Personal space for each internal user
* Shared with me: All documents shared with the user that are
not in the Company drive
* Shortcuts can be created to create quick references to documents in other
places without the need to duplicate the document or spread access rights
management.
[...]
task-4014624
Co-authored-by: std-odoo <std@odoo.com>
Co-authored-by: Pierre-Yves Dufays <pydu@odoo.com>
Co-authored-by: Julien Castiaux <juc@odoo.com>
Co-authored-by: Lopes Marc (loma) <loma@odoo.com>
Co-authored-by: Patrick Hoste <pko@odoo.com>New Odoo databases now show polished sample dashboards instead of blank charts and tables when there is no business data yet. This helps users understand the value and expected layout of dashboard apps during onboarding, before real records are created.
Original PR description
Prior to this commit, when an Odoo database had no records, the dashboards were empty and ugly. This commit alleviates this problem by introducing dashboards with dummy data displayed in the background with low opacity when there are no records for the main model that is supposed to be displayed in the main dashboard sheet. Task: 3947773 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Colombian electronic invoice emails now include a ZIP file with both the PDF and the legally required XML document. This helps businesses comply with DIAN requirements by including the invoice details and the official DIAN status response in the emailed document package.
Original PR description
Due to legal reasons, we need to send a zip containing the PDF and the xml. The xml is an UBL `AttachedDocument` containing both the initial xml representing the invoice and the `ApplicationResponse` returned when calling the GetStatus webservice of DIAN. The `ApplicationResponse` is an xml representing the state of the invoice on the DIAN server. task-4133688
When users create a sales order line from a helpdesk ticket, the product form now prevents choosing a non-service product type. This reduces mistakes and keeps the workflow aligned with services that can be billed from helpdesk work.
Original PR description
When creating a SOL on the fly within a helpdesk ticket, users can also create or edit products. To avoid errors from selecting non-service products, the type field is now hidden in the product form during this process, ensuring only service products are created. task-4179188
Payroll work entry types can now be linked to a specific country, helping companies manage local payroll rules more accurately. This also improves multi-company setups by showing work entry types based on each company's country and updates localized payroll data accordingly.
Original PR description
added country field in hr work entry type added multi company rule for work entry type based on countries added country for every l10n with work entry type task-3978261
Radio button options added to documents in Odoo Sign now appear immediately instead of waiting for the next periodic refresh. This makes template editing feel faster and reduces delays for users preparing documents for signature.
Original PR description
Before this commit: rendering of new radio items was slow. This happened due to the `refreshSignItems` being called each 2 seconds normally. which is responsible for making the sign items visible. In this commit: `refreshSignItems` is called after adding new radio items. Task: 4208037
Subscription quote PDFs now show the subscription start date when it is available. This gives customers clearer information about when their subscription begins and helps reduce follow-up questions during the sales process.
Original PR description
Before this commit, the PDF of a subscription quote did not show the subscription start date to customers. With this commit, the subscription start date will be included in the quote report if it is available. task-3794915
The POS kitchen preparation display now supports decimal quantities instead of rounding or ignoring them. This helps kitchen staff see accurate order amounts for items sold in partial quantities, reducing preparation mistakes.
Original PR description
Before this commit: =================== The POS kitchen display only handled integer quantities, ignoring float values. After this commit: ================== The kitchen display now supports float quantities, accurately reflecting partial quantities from the POS.