TIP: You can type at any time to perform a new search.
Purchase Product Pack
purchase_product_pack · OCA/product-pack
- Repository
- OCA/product-pack · module folder · Try on Runboat
- Module version
- 1.0.1
- Category
- Purchase
- Folder size
- 0.08 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/product-pack
- Last tracking update
- 2026-08-07 08:42:59
- Authors
- Camptocamp, Odoo Community Association (OCA)
- Maintainers
- Camptocamp, Odoo Community Association (OCA)
- Committers
- Pedro M. Baeza, Weblate, OCA-git-bot, oca-ci, matteo.tognini
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
This module adds *Product Pack* functionality to purchase orders. You can choose a *Pack* in *purchase order lines* and see different behaviors depending on "Pack type" and "Pack component price" fields options selected on this *Pack*.
Code Analysis ⓘ
Views touched (1)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
purchase_order_form |
purchase.order | form | Inherits purchase.purchase_order_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (4)
New fields (0)
No new fields.
Public methods (2)-
get_purchase_order_line_vals(self, line, order) -
get_seller_cost(self, line)This function returns the cost of pack lines if they has seller or not
New fields (0)
No new fields.
Public methods (1)-
pack_cost_compute(self, line)This function computes the cost of a product based on the options on pack
New fields (0)
No new fields.
Public methods (3)-
check_pack_line_unlink(self)@api.onchange('order_line') -
copy_data(self, default=None) -
write(self, vals)
New fields (7)
-
do_no_expand_pack_linesBooleancompute='_compute_do_no_expand_pack_lines'help='Technical field in order to check if pack lines has to be expanded' -
pack_child_line_idsOne2many → purchase.order.lineargs: 'purchase.order.line', 'pack_parent_line_id', 'Lines in pack' -
pack_component_priceSelectionrelated='product_id.pack_component_price' -
pack_depthIntegerhelp='Depth of the product if it is part of a pack.' args: 'Depth' -
pack_modifiableBooleanhelp='The parent pack is modifiable' -
pack_parent_line_idMany2one → purchase.order.linehelp='The pack that contains this product.' args: 'purchase.order.line', 'Pack' -
pack_typeSelectionrelated='product_id.pack_type'
-
action_open_parent_pack_product_view(self) -
check_pack_line_modify(self)@api.onchange('product_id', 'product_uom_qty', 'product_uom', 'price_unit', 'name', 'taxes_id')Do not let to edit a purchase order line if this one belongs to pack -
create(self, vals_list)@api.model_create_multi -
expand_pack_line(self, write=False)Expand a purchase order line that represents a pack. This method is used to expand a purchase order line that represents a pack. It creates individual purchase order lines for the components of the pack and adds them to the purchase order. -
write(self, vals)
Loading…
- Status
- Open migration PR — not merged yet for this version
- CI status
- checks failing
- Open since
- 255 days ago
- Last activity
- 55 days ago
- Repository
- OCA/product-pack
- Pull request
- [19.0][MIG] purchase_product_pack: Migration to 19.0 (#237)