| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/sale-workflow |
| GIT | |
| GIT | https://github.com/OCA/sale-workflow.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/sale-workflow/tree/12.0/sale_product_set_variant |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp |
| COMMITTERS | |
| COMMITTERS | OCA Transbot, Ruchir Shukla, oca-travis, Weblate, OCA-git-bot, Simone Orsi, Parth Dave |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:17 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/sale-workflow: - sale_product_set odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - decimal_precision - uom - analytic - portal - http_routing - digest |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_set_add_form_view |
product.set.add.form.view | product.set.add | xpath | Inherits sale_product_set.product_set_add_form_view |
view_product_set_variant_form |
product.set.form | product.set | xpath | Inherits sale_product_set.view_product_set_form |
product_set_id
Many2one → product.set
required=True
args: 'product.set', 'Product set'
set_line_ids
One2many → product.set.add.line
string='Products'
args: 'product.set.add.line', 'wiz_id'
prepare_sale_order_line_data(self, set_line, variant, max_sequence=0)
product_set_id
Many2one → product.set
readonly=True
related='source_line_id.product_set_id'
string='Set'
args: 'product.set'
product_template_id
Many2one → product.template
required=True
string='Product Template'
args: 'product.template'
product_variant_ids
Many2many → product.product
domain="[\n '&',\n ('sale_ok', '=', True),\n ('product_tmpl_id', '=', product_template_id),\n ]"
string='Products'
args: 'product.product'
quantity
Float
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
sequence
Integer
default=0
required=True
string='Sequence'
source_line_id
Many2one → product.set.line
wiz_id
Many2one → product.set.add
No public methods.
product_id
Many2one
required=False
product_template_id
Many2one → product.template
required=False
string='Product Template'
args: 'product.template'
product_variant_ids
Many2many → product.product
domain="[\n '&',\n ('sale_ok', '=', True),\n ('product_tmpl_id', '=', product_template_id),\n ]"
required=False
string='Variant'
args: 'product.product'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/sale-workflow |
| GIT | |
| GIT | https://github.com/OCA/sale-workflow.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/sale-workflow/tree/11.0/sale_product_set_variant |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp |
| COMMITTERS | |
| COMMITTERS | OCA Transbot, oca-travis, Weblate, Simone Orsi, mpanarin |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:23:57 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/sale-workflow: - sale_product_set odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - account - product - decimal_precision - analytic - web_planner - portal - http_routing |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_set_add_form_view |
product.set.add.form.view | product.set.add | xpath | Inherits sale_product_set.product_set_add_form_view |
view_product_set_variant_form |
product.set.form | product.set | xpath | Inherits sale_product_set.view_product_set_form |
product_set_id
Many2one → product.set
required=True
args: 'product.set', 'Product set'
set_line_ids
One2many → product.set.add.line
string='Products'
args: 'product.set.add.line', 'wiz_id'
add_set(self)
prepare_sale_order_line_data(self, sale_order_id, set_line, variant, max_sequence=0)
product_set_id
Many2one → product.set
readonly=True
related='source_line_id.product_set_id'
string='Set'
args: 'product.set'
product_template_id
Many2one → product.template
required=True
string='Product'
args: 'product.template'
product_variant_ids
Many2many → product.product
domain="[\n '&',\n ('sale_ok', '=', True),\n ('product_tmpl_id', '=', product_template_id),\n ]"
required=False
string='Product'
args: 'product.product'
quantity
Float
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
sequence
Integer
default=0
required=True
string='Sequence'
source_line_id
Many2one → product.set.line
wiz_id
Many2one → product.set.add
No public methods.
product_id
Many2one
required=False
product_template_id
Many2one → product.template
required=False
string='Product'
args: 'product.template'
product_variant_ids
Many2many → product.product
domain="[\n '&',\n ('sale_ok', '=', True),\n ('product_tmpl_id', '=', product_template_id),\n ]"
required=False
string='Variant'
args: 'product.product'
No public methods.