TIP: You can type at any time to perform a new search.
Route Planning Stock Integration
route_planning_stock · OCA/route-planning
Security findings
- Repository
- OCA/route-planning · module folder · Try on Runboat
- Module version
- Category
- Uncategorized
- Folder size
- 0.1 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- Yes
- Website
- https://github.com/OCA/route-planning
- Last tracking update
- 2026-08-27 23:12:46
- Authors
- Odoo Community Association (OCA), Tecnativa
- Maintainers
- Odoo Community Association (OCA), Tecnativa
- Committers
- Carlos Lopez, Víctor Martínez, Weblate, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- ortools
- System dependencies
- None
- Required by
- route_planning_rma, route_planning_sale_stock
- Description
Integration between Route Planning and Stock to automatically generate routes and checkpoints from pickings. This module automates route and checkpoint creation directly from stock pickings and integrates inventory transit locations and stock rules into Route Planning workflows. **Key Features:** - Automatic generation of a Transit Location per Route Area and corresponding stock rules. - Automatic route and checkpoint generation upon picking validation. - Automated validation of pickings when route checkpoints are marked as completed. When you use the transit location created for the Route Area, the delivery is performed in two steps: The first step moves the stock from the internal location where it is stored to the transit location. This movement represents the physical transfer from your warehouse to the transport vehicle that will perform the delivery. A second picking is created when you validate the first picking. This picking waits for the corresponding checkpoint to be completed when the delivery is completed at the customer. Once the checkpoint is completed, the picking is automatically validated. Note: For better integration and simplicity, we recommend using this module with the `route_planning_delivery` module installed.
Code Analysis
Views touched (9)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
route_checkpoint_view_kanban |
route.checkpoint.kanban | route.checkpoint | kanban | Inherits route_planning.route_checkpoint_view_kanban |
view_picking_form |
stock.picking.form.route | stock.picking | form | Inherits stock.view_picking_form |
view_picking_list |
stock.picking.list.route | stock.picking | list | Inherits stock.vpicktree |
view_route_area_form |
view.route.area.form | route.area | form | Inherits route_planning.view_route_area_form |
view_route_area_list |
view.route.area.list | route.area | list | Inherits route_planning.view_route_area_list |
view_route_checkpoint_form |
route.checkpoint.form | route.checkpoint | form | Inherits route_planning.view_route_checkpoint_form |
view_route_checkpoint_list |
route.checkpoint.list | route.checkpoint | list | Inherits route_planning.view_route_checkpoint_list |
view_route_checkpoint_search |
route.checkpoint.search | route.checkpoint | search | Inherits route_planning.view_route_checkpoint_search |
view_route_route_form |
route.route.form | route.route | form | Inherits route_planning.view_route_route_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (6)
New fields (2)
-
location_idMany2one → stock.locationcopy=Falseondelete='restrict'readonly=True args: 'stock.location' -
warehouse_idMany2one → stock.warehousecopy=Falsedefault=<expr>domain="[('company_id', '=', company_id)]" args: 'stock.warehouse'
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (3)
-
move_ids_without_packageMany2many → stock.movecompute='_compute_move_ids_without_package' args: 'stock.move' -
picking_domainBinarycompute='_compute_picking_domain' -
picking_idMany2one → stock.pickingcopy=Falsetracking=True args: 'stock.picking'
-
action_back_to_planned(self) -
action_done(self) -
action_view_picking(self)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (3)
-
has_route_planningBooleancompute='_compute_has_route_planning' -
route_area_idMany2one → route.areacomodel_name='route.area'copy=Falsehelp='Route area for this picking, used to create routes.'inverse='_inverse_route_area_id'string='Route Area' -
route_checkpoint_idsOne2many → route.checkpointcomodel_name='route.checkpoint'copy=Falseinverse_name='picking_id'string='Route Checkpoints'
-
action_cancel(self) -
action_view_route_planning(self)
New fields (0)
No new fields.
Public methods (0)No public methods.