TIP: You can type at any time to perform a new search.
Enforce manually selected lot
stock_move_manual_lot · OCA/stock-logistics-workflow
Security findings
Migration considerations
view_move_line_form— For a target of Odoo 17.0+: view 'view_move_line_form' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourceview_picking_form— For a target of Odoo 17.0+: view 'view_picking_form' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · source- Raw `cr.execute()` INSERT/UPDATE/DELETE bypasses the ORM (no compute/constrains/tracking/mail): `update stock_move_line set manual_lot_id=lot_id` - re-check the table/column names still match after upgrading. migration-raw-sql-write · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/stock-logistics-workflow · module folder · Try on Runboat
- Module version
- 1.1.0
- Category
- Stock
- Folder size
- 0.06 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/stock-logistics-workflow
- Last tracking update
- 2026-10-03 22:39:53
- Authors
- Odoo Community Association (OCA), Opener B.V., Hunki Enterprises BV
- Maintainers
- Odoo Community Association (OCA), Opener B.V., Hunki Enterprises BV
- Committers
- Stefan Rijnhart, Holger Brunn, OCA-git-bot, oca-travis, oca-ci
Code Analysis
Views touched (3)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_move_line_form |
stock.move.line | form | Inherits stock.view_move_line_form | |
view_picking_form |
stock.picking | form | Inherits stock.view_picking_form | |
view_picking_type_form |
stock.picking.type | form | Inherits stock.view_picking_type_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (4)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (2)
-
manual_lot_idMany2one → stock.production.lotcomodel_name='stock.production.lot'copy=Falsestring='Lot/Serial' -
use_manual_lot_selectionBooleanrelated='picking_id.picking_type_id.use_manual_lot_selection'
-
create(self, vals_list)@api.model_create_multiReuse zero quantity move line from the same move. -
unlink(self)@api.multiKeep move lines if they are assigned a manual lot in a batch -
write(self, vals)
New fields (1)
-
use_manual_lot_selectionBooleanrelated='picking_type_id.use_manual_lot_selection'
-
action_done(self)Keep manual lots up to date not to lose visibility. Keep visibility of transferred lot in the case of * an untracked product transferred without setting a manual lot * an update of a picking type to use manual lot selection -
button_validate(self)Check for missing manually assigned lots -
write(self, vals)Encode move line quantities in the context if necessary. If manual_lot_id is being written on the move lines, this could lead to freeing move lines from the same picking that are also being written in this very same call. We encode the original reserved quantities of the move lines in the context so that they can be rereserved for these quantities.
New fields (1)
-
use_manual_lot_selectionBooleandefault=False
No public methods.