Search
Navigate
Branch
Tuesday, August 23, 2022
18 changes
New functionality added to Odoo
Barcode users can now scan GS1 expiration or best-before dates directly while editing picking and inventory adjustment lines. This reduces manual entry, helps capture product shelf-life information more accurately, and supports expiry handling for industries such as food.
Original PR description
Add barcode support for expiration date. Now in the Barcode, in the sml edit form of picking and inventory adjustment, users can scan a expiration date(GS1). Task-2657043
Enhancements to existing features
Computed and related fields in Documents and Mail Enterprise are now automatically treated as read-only. This reduces the chance of accidental edits to values that are meant to be generated by the system, improving data consistency with minimal user-facing disruption.
Original PR description
Automatically add readonly on computed and related fields. This commit required to rewrite some preexisting fields to make them readonly. \* = documents Task-2955927. Community: https://github.com/odoo/odoo/pull/98541
Resolved issues and error corrections
The recruitment document extraction view has been adjusted so the extract ID is shown in the right place after unused fields are removed from the screen. This prevents confusion for users reviewing applicant extraction details and keeps the recruitment interface consistent.
Original PR description
odoo/odoo#95729 removes the field that are not needed (because of missing groups, etc.) from the view definition, hence the extract ID should be repositioned.
Odoo Enterprise apps were updated to work with the platform's newer real-time messaging system. This keeps spreadsheet collaboration, VoIP, documents, accounting tests, and Studio behavior aligned with the core upgrade, reducing the risk of disruption for users relying on live updates.
Original PR description
community: odoo/odoo#75510 Task-2053917
Spreadsheet users can now set and use global filters even when a spreadsheet has no pivot, list, or graph data source. This enables formulas such as credit-related calculations to reuse filter values more flexibly, supporting new reporting scenarios without extra setup.
Original PR description
We now have some use cases that could benefit from the global filters, for exemple ODOO.CREDIT function which can take the value from an ODOO.FILTER.VALUE function. This could work without a pivot, list or graph in the spreadsheet. Therefore, we enable the use of a global filter without a data source. Task-id 2954856
Map views can now correctly group records by many-to-many fields, such as assignees. This makes grouped maps clearer by showing proper group labels, placing each record in the right groups, and keeping map pins aligned with the record list.
Original PR description
The objective of this PR is to allow grouping by many2many fields in map (enterprise) views. # Map The x2many 'group by' was available for the map view but was not handled. ### Current behaviour: - The 'grouped by' map view with no group label - The grouped by was by set of ids in the x2many and thus not grouped by each id in the x2many. - The pin in the map had IDs that do not exist in the list of records on the right ### Expected behaviour by merging this PR - There are group labels when grouped by x2many - Each group is one and only one record - Pins in the map have IDs that exists in the list of record on the right task-2721035
This update removes an outdated configuration hook from the Point of Sale enterprise module. The related setup logic now lives in the general settings area, reducing duplicate code and helping keep future maintenance simpler.
Original PR description
Purpose ======= The logic has been moved from the pos.config to the res.config.settings model/views, and therefore this js_class is not used anymore. TaskID: 2958057
Signature request emails now direct replies to the person who sent the request. This helps keep follow-up questions or confirmations from recipients visible to the responsible person instead of being lost.
Original PR description
Currently in sign, when emails for a sign request are sent, no reply_to param is set on the mail.mail record. So if someone replies to the email, it will end nowhere. This commit adds the email of the person who requested the signature, so that if anyone replies to the email, the responsible person will receive it and will be able to continue the conversation. task-2702011
The mobile user preferences form has been modernized to use Odoo's newer interface framework. This should make the screen easier to maintain and more consistent with current mobile behavior, with related tests updated to protect the experience.
The Knowledge app invite area is now fully clickable, making it easier for users to invite others without needing to click a small target. This improves usability and reduces friction when collaborating on knowledge articles.
Original PR description
To make the whole 'invite' zone clickable, we just need to embed the design divs inside a button and make it look nice. Task-2893088
Bank reconciliation now correctly applies payment tolerance rules when matching slightly different invoice and statement amounts. This prevents the full amount from being incorrectly treated as a write-off, improving accounting accuracy for small payment differences.
Original PR description
…ing payment tolerance - Create a reco model with a payment tolerance of 2% - Create an invoice of 1000 - Create a statement line of 998 => The whole amount is in write-off Explanation: The first issue is the matched aml is mounted inside the widget using 'allow_partial'. So, the mounted line is a partial of 998 / 1000 instead of the full amount. The second issue is '_action_select_reconcile_model' is removing all the lines linked to a reconcile model instead of removing only the ones having a different reconcile model. So, the previously mounted line is removed and then, the write-off is generated for the whole amount. task: 2929017
This fixes an issue where uploaded documents could miss or ignore related details such as owner, customer, or linked record because those values were sent in the wrong format. Document uploads now apply the intended context correctly, improving reliability for users organizing files.
Original PR description
The upload_attachment route does not expect `default_x` keys but directly `x` for owner_id, partner_id, res_id and res_model. However they were passed as `default_x` since the owl refactor. This commit fixes behaviour.
This update adds a missing dependency so the quality work order IoT module is installed and removed in the correct order. It helps prevent system startup or app loading failures when managing related manufacturing IoT features.
Original PR description
The `quality_mrp_workorder_iot` module inherits the `iot.trigger` model, originally defined in the `mrp_workorder_iot` module. However, the module does not depend on the `mrp_workorder_iot` module. This can cause problems (failure to load the registry) after installing the `quality_mrp_workorder_iot` module or uninstalling the `mrp_workorder_iot` module.
The appointment link dropdown now matches the width of the button above it. This creates a cleaner, more consistent scheduling interface and avoids a visual mismatch for users.
Original PR description
The button above the dropdownMenuAppointmentLink has a width of 100px. The dropdown should have the same width too.
Odoo spreadsheet charts can now safely use the “None” legend option. This prevents a crash when users hide chart legends, making spreadsheet chart editing more reliable.
Original PR description
If you insert an odoo chart in a spreadsheet then update its legend option to "None" => boom Task 2955852
The Send & Print flow now links existing EDI attachments instead of recreating them. This prevents duplicate invoice-related files from being added, keeping records cleaner and avoiding confusion for users.
Original PR description
Currently, the EDI attachments *content* is passed to the Send & Print wizard. Then, the wizard re-creates these attachments and link them to itself. At the end of the flow, when clicking 'Send & Print' button on the 'Send & Print' wizard, the attachments of the wizard are copied on the move. Thus, the EDI attachments are duplicated. Passing the ids of the EDI attachments rather than the content solved the issue, since they are simply linked to the wizard, without being re-created. task-2957823 see https://github.com/odoo/odoo/pull/98447
Spreadsheet accounting formulas now correctly return 0 when no account code is provided, instead of accidentally including all accounts. This prevents misleading debit or credit totals when a referenced cell is blank or an empty value is entered.
Original PR description
In a formula `ODOO.DEBIT(<account codes>, 2022)`, if no code is provided
e.g. `ODOO.DEBIT("", 2022)` or `ODOO.DEBIT(A1, 2022)` where A1 is empty
all accounts where taken into account instead of none.
small note on `_search`: in the future, it should always return a Query object
when branch `master-search-query-rco` is merged (didn't find any task or PR to
reference).
(our code isn't robust to overrides in that regards, it should support
non-query return values)
Task 2956954The IoT component now gathers files in a simpler way and compresses the generated package more efficiently. This reduces unnecessary processing and should make the related download or packaging step lighter without changing what users see.
Original PR description
The use doesn't really make sense in the first place, the controller is really just using it as a 2-level listdir. Could probably be a depth-limited `os.walk`, but a 2-level glob seems fine as well. Also lift use of `zipfile` (doesn't seem necessary to iterate twice on every entry), and set it as compressed as all the content is text files, seems dumb to just STORE as-is. Related to odoo/odoo#98034