sale_product_pack
Enable selling product packs on sale orders with automatic expansion, discounts, and pricing behavior based on pack configuration.
Key Features
- product.pack.line: Adds per-component sale discounts and factors them into computed pack line prices when creating sale order component lines.
- sale.order.line: Expands detailed pack products into child sale lines with indented names, matching sequence, and quantity scaling, reusing or creating child lines as needed.
- sale.order.line: Uses pack template pricing for packs and combines parent pack discounts with component-specific sale discounts for detailed pack components.
- sale.order.line: Blocks edits to non-modifiable pack component lines and provides an action to open the parent pack product from a component line.
- sale.order: Removes copied pack component lines that still point to the original order and cascades deletions so removing a pack also deletes its child lines while preventing deletion of protected components.
- sales pricing: Skips repricing or re-expansion of pack child lines during price/pricelist updates and filters price updates to relevant lines only.