Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
•
Inventory (stock)
• Discuss (mail) |
Lines of code | 59 |
Technical Name |
pv_mass_line_edit_stock |
License | LGPL-3 |
Mass Line Edit for Stock Operations
Bulk-edit stock move lines inside a picking. Tick Apply to All on the lines you want to sync, edit any one of them, and the same change is propagated to the other selected lines automatically.
Odoo 18
Inventory / Stock
Receipts, Deliveries, Internal Transfers
LGPL-3
Why this module?
Editing the same value across several move lines (e.g., Date Scheduled, Deadline, Description) is repetitive and error-prone. This module adds a simple opt-in mass-edit mechanism so you change once and apply everywhere you intended—no wizards, no exports.
Key features
- Master toggle: a Select All Lines checkbox on the picking form to quickly mark every line.
- Per-line control: each stock move row gets an Apply to All boolean toggle.
- Instant propagation: edits to any enabled line are automatically copied to all other enabled lines in the same picking.
- Generic by design: the propagation is field-agnostic (anything you changed on that line is applied), while safely ignoring the toggle field itself.
- Safe recursion guard: an internal context flag prevents infinite loops during propagation.
- Native UX: the per-line control appears as a compact switch in the operations list; the master control sits in a lightweight “Mass Edit” box above the tabs.
Supported flows
Receipts
Incoming shipments
Incoming shipments
Deliveries
Outgoing shipments
Outgoing shipments
Internal Transfers
Location-to-location moves
Location-to-location moves
How it works
- Open any picking (receipt, delivery, internal transfer) in form view.
- Use Select All Lines to opt in every line, or toggle Apply to All only on the lines you want linked.
- Edit a value on one of the enabled lines (e.g., Date Scheduled, Deadline, Description, etc.).
- All other enabled lines in the same picking update immediately with the same change.
Permissions & compatibility
- Respects standard access rights and record rules of the
stock
app. - Works with the standard
stock.move
operations list (move_ids_without_package
) on Odoo 18. - No configuration required. Install and use.
Notes & limitations
- Propagation copies whatever fields you changed on the edited line, except the
apply_all
flag itself. - Edits obey Odoo’s normal recomputations (taxes, amounts, constraints) after the write.
- If you want to restrict which fields can propagate, you can adapt the method that computes the fields to push.
- Applies within a single picking only (it won’t cross-copy between different pickings).
Technical overview
- Model extensions:
stock.picking
→ Booleanselect_all_lines
+@api.onchange
to toggle line flags.stock.move
→ Booleanapply_all
+write()
override to propagate edits to sibling moves.
- UI:
- Master toggle added above the notebook in the picking form.
- Per-line toggle injected as a first column in the operations list.
- Safety: uses a
mass_edit_propagation
context flag to avoid recursive writes.
Changelog
- 18.0.1.0.1 – Initial public release for Odoo 18.
Please log in to comment on this module