Repository
OCA/sale-workflow · module folder · Try on Runboat
Module version
1.0.1
Category
Sales
Folder size
0.5 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), Anybox
Maintainers
Odoo Community Association (OCA), Anybox
Committers
Christopher Rogos, Weblate, OCA-git-bot, oca-ci
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
A **product set** is a list of products which end customers aren't
aware, this list is defined by sales manager.

This module aims to load a product set in a sales order though a wizard. The product set is a list of products and quantities that gets inserted as separate sales order lines.

After a *product set* is added to the sales order, each line can be
updated or removed as any other sales order lines.

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
product_set_add_form_view sale.product.set.wizard.form.view sale.product.set.wizard form New
res_config_settings_inherit_view res.config.settings.inherit.view res.config.settings form Inherits sale.res_config_settings_view_form
view_order_stock_form sale.order.form.inherit sale.order form Inherits sale.view_order_form
view_product_set_form product.set.form product.set form Inherits product_set.view_product_set_form
view_product_set_line_tree product.set.line.list product.set.line list Inherits product_set.view_product_set_line_tree
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (4)

New fields (1)
  • discount Float
    default=0.0 digits='Discount' string='Discount (%)'
Public methods (1)
  • prepare_sale_order_line_values(self, order, quantity, sequence=0)

New fields (1)
  • archive_partner_product_sets Boolean
    config_parameter='sale_product_set.archive_partner_product_sets' help='When a partner is archived or un-archived its product sets are archived or un-archived as well.' string='Sync product sets active state with partner'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)

New fields (3)
  • order_id Many2one → sale.order
    default=<expr> ondelete='cascade' required=True args: 'sale.order', 'Sale Order'
  • partner_id Many2one
    ondelete='cascade' related='order_id.partner_id'
  • skip_existing_products Boolean
    default=False help='Enable this to not add new lines for products already included in SO lines.'
Public methods (1)
  • add_set(self)
    Add product set, multiplied by quantity in sale order line

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…