| 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/17.0/sale_attached_product |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Tecnativa, Odoo Community Association (OCA) |
| MAINTAINERS | |
| MAINTAINERS | Tecnativa, Odoo Community Association (OCA) |
| COMMITTERS | |
| COMMITTERS | Ruchir Shukla, Weblate, OCA-git-bot, oca-ci |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:20:05 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - account_payment - account - onboarding - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows to define a set of products which will be added automatically to the sales order whenever that product is present on it. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view |
product.template | xpath | Inherits product.product_template_form_view |
attached_product_ids
Many2many → product.product
comodel_name='product.product'
help="Similar to optional products, although they're added automatically to thesale order and optionally removed when the main product goes away."
relation='product_attached_rel'
string='Attached Products'
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (3)create(self, vals_list)
recompute_attached_products(self)
write(self, vals)
attached_from_line_id
Many2one → sale.order.line
comodel_name='sale.order.line'
attached_line_ids
One2many → sale.order.line
comodel_name='sale.order.line'
inverse_name='attached_from_line_id'
is_attached_line
Boolean
help='Flag products that are attached to their main counterpart'
create(self, vals_list)
unlink(self)
write(self, vals)
| 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/16.0/sale_attached_product |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Tecnativa, Odoo Community Association (OCA) |
| MAINTAINERS | |
| MAINTAINERS | Tecnativa, Odoo Community Association (OCA) |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, oca-ci, Christopher Ormaza |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:45 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - account_payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view |
product.template | xpath | Inherits product.product_template_form_view |
attached_product_ids
Many2many → product.product
comodel_name='product.product'
help="Similar to optional products, although they're added automatically to thesale order and optionally removed when the main product goes away."
relation='product_attached_rel'
string='Attached Products'
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (3)create(self, vals_list)
recompute_attached_products(self)
write(self, vals)
attached_from_line_id
Many2one → sale.order.line
comodel_name='sale.order.line'
attached_line_ids
One2many → sale.order.line
comodel_name='sale.order.line'
inverse_name='attached_from_line_id'
is_attached_line
Boolean
help='Flag products that are attached to their main counterpart'
create(self, vals_list)
unlink(self)
write(self, vals)
| 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/15.0/sale_attached_product |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Tecnativa, Odoo Community Association (OCA) |
| MAINTAINERS | |
| MAINTAINERS | Tecnativa, Odoo Community Association (OCA) |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, oca-ci, Luis Ernesto García Medina |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:46:33 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view |
product.template | xpath | Inherits product.product_template_form_view |
attached_product_ids
Many2many → product.product
comodel_name='product.product'
help="Similar to optional products, although they're added automatically to thesale order and optionally removed when the main product goes away."
relation='product_attached_rel'
string='Attached Products'
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (3)create(self, vals_list)
recompute_attached_products(self)
write(self, vals)
attached_from_line_id
Many2one → sale.order.line
comodel_name='sale.order.line'
attached_line_ids
One2many → sale.order.line
comodel_name='sale.order.line'
inverse_name='attached_from_line_id'
is_attached_line
Boolean
help='Flag products that are attached to their main counterpart'
create(self, vals_list)
unlink(self)
write(self, vals)
| 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/13.0/sale_attached_product |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sale |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Tecnativa, Odoo Community Association (OCA) |
| MAINTAINERS | |
| MAINTAINERS | Tecnativa, Odoo Community Association (OCA) |
| COMMITTERS | |
| COMMITTERS | david, OCA-git-bot, oca-ci |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/sale-workflow |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:34:12 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view |
product.template | xpath | Inherits product.product_template_form_view |
attached_product_ids
Many2many → product.product
comodel_name='product.product'
help="Similar to optional products, although they're added automatically to thesale order and optionally removed when the main product goes away."
relation='product_attached_rel'
string='Attached Products'
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (3)create(self, vals_list)
recompute_attached_products(self)
write(self, vals)
attached_from_line_id
Many2one → sale.order.line
comodel_name='sale.order.line'
attached_line_ids
One2many → sale.order.line
comodel_name='sale.order.line'
inverse_name='attached_from_line_id'
is_attached_line
Boolean
help='Flag products that are attached to their main counterpart'
create(self, vals_list)
unlink(self)
write(self, vals)