TIP: You can type at any time to perform a new search.
Sale Manual Delivery
sale_manual_delivery · OCA/sale-workflow
- Repository
- OCA/sale-workflow · module folder · Try on Runboat
- Module version
- 1.0.0
- Category
- Sale
- Folder size
- 0.56 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/sale-workflow
- Last tracking update
- 2026-08-07 09:06:23
- Authors
- Odoo Community Association (OCA), Camptocamp SA
- Maintainers
- Odoo Community Association (OCA), Camptocamp SA
- Committers
- Weblate, Tobias Zehntner, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
The goal of this module is to allow the manual creation of delivery slips. If activated, a sale order won't directly impact the stock. It will not make a reservation on the stock. It allows the delivery and the impact on stock to be done manually when needed. The goal is to be used on long term projects where not all the material is shipped at once. As you make many shipments, every time you make a new delivery, you can choose an new carrier as well as a planned date. A wizard helps you to chose what to deliver by showing you how much you already planned to ship.  
Code Analysis ⓘ
Views touched (5)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
crm_team_view_form |
crm.team.form | crm.team | form | Inherits sales_team.crm_team_view_form |
manual_delivery_wizard_form |
manual.delivery.wizard.form | manual.delivery | form | New |
view_order_form |
sale.order.form | sale.order | form | Inherits sale.view_order_form |
view_order_line_tree |
sale.order.line.tree | sale.order.line | tree | Inherits sale.view_order_line_tree |
view_sales_order_undelivered_line_filter |
sale.order.undelivered.line | sale.order.line | search | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (7)
New fields (1)
-
manual_deliveryBooleanhelp='If enabled, the deliveries are not created at SO confirmation. You need to use the Create Delivery button in order to reserve and ship the goods.'
No public methods.
New fields (6)
-
carrier_idMany2one → delivery.carrierondelete='cascade'string='Delivery Method' args: 'delivery.carrier' -
commercial_partner_idMany2one → res.partnerondelete='cascade'readonly=Truerequired=True args: 'res.partner' -
date_plannedDate -
line_idsOne2many → manual.delivery.linestring='Lines to validate' args: 'manual.delivery.line', 'manual_delivery_id' -
partner_idMany2one → res.partnerdomain="['|',('id', '=', commercial_partner_id),('parent_id', '=', commercial_partner_id)]"ondelete='cascade'string='Delivery Address' args: 'res.partner' -
route_idMany2one → stock.routedomain=[('sale_selectable', '=', True)]help='Leave it blank to use the same route that is in the sale line'ondelete='cascade'string='Use specific Route' args: 'stock.route'
-
confirm(self)Creates the manual procurements -
default_get(self, fields)@api.model
New fields (7)
-
manual_delivery_idMany2one → manual.deliveryondelete='cascade'readonly=Truerequired=Truestring='Wizard' args: 'manual.delivery' -
nameTextrelated='order_line_id.name' -
order_line_idMany2one → sale.order.lineondelete='cascade'readonly=Truerequired=Truestring='Sale Order Line' args: 'sale.order.line' -
product_idMany2onerelated='order_line_id.product_id' -
qty_orderedFloathelp='Quantity ordered in the related Sale Order'readonly=Truerelated='order_line_id.product_uom_qty'string='Ordered' -
qty_procuredFloatrelated='order_line_id.qty_procured' -
quantityFloat
No public methods.
New fields (2)
-
has_pending_deliveryBooleancompute='_compute_delivery_pending' args: 'Delivery Pending' -
manual_deliveryBooleanhelp='If enabled, the deliveries are not created at SO confirmation. You need to use the Create Delivery button in order to reserve and ship the goods.'
-
action_manual_delivery_wizard(self)
New fields (2)
-
qty_procuredFloatcompute='_compute_qty_procured'help='Quantity already planned or shipped (stock movements already created)'readonly=Truestore=Truestring='Quantity Procured' -
qty_to_procureFloatcompute='_compute_qty_to_procure'help='There is Pending qty to add to a delivery'readonly=Truestore=Truestring='Quantity to Procure'
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (2)
-
date_plannedDate -
partner_idMany2one → res.partnerargs: 'res.partner'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…