| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/18.0/product_assortment |
| VERSION | |
| VERSION | 1.0.1 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, Pieter Paulussen, oca-ci, bosd, Rafael Lima |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:12 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - html_editor - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This addon intends to manage product assortment. In Odoo you can only define some filters defined by a domain but it can be sometimes really complicated. With this addon you will be able to define a domain but also add some products to include or to exclude through a allowed list and a restricted list. This is done by overriding ir.capability but without influencing its standard behaviour. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
product.assortment.form | ir.filters | form | New |
product_assortment_view_list |
ir.filters | list | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_product_view_list |
product.product | list | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
column1='filter_id'
column2='partner_id'
comodel_name='res.partner'
compute='_compute_all_partner_ids'
relation='ir_filter_all_partner_rel'
store=True
apply_black_list_product_domain
Boolean
string='Apply restricted product domain'
black_list_product_domain
Text
default='[]'
required=True
string='Restricted product domain'
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
string='Restricted products'
is_assortment
Boolean
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
string='Allowed products'
create(self, vals_list)
get_partner_domain_fields(self)
show_products(self)
write(self, vals)
applied_assortment_ids
Many2many → ir.filters
column1='partner_id'
column2='filter_id'
comodel_name='ir.filters'
relation='ir_filter_all_partner_rel'
action_define_product_assortment(self)
create(self, vals_list)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/17.0/product_assortment |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | OCA-git-bot, oca-ci, David Alonso // Solvos |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:20:05 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This addon intends to manage product assortment. In Odoo you can only define some filters defined by a domain but it can be sometimes really complicated. With this addon you will be able to define a domain but also add some products to include or to exclude through a allowed list and a restricted list. This is done by overriding ir.capability but without influencing its standard behaviour. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
product.assortment.form | ir.filters | form | New |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
product_product_view_tree |
product.product | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
column1='filter_id'
column2='partner_id'
comodel_name='res.partner'
compute='_compute_all_partner_ids'
relation='ir_filter_all_partner_rel'
store=True
apply_black_list_product_domain
Boolean
string='Apply restricted product domain'
black_list_product_domain
Text
default='[]'
required=True
string='Restricted product domain'
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
string='Restricted products'
is_assortment
Boolean
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
string='Allowed products'
create(self, vals_list)
get_partner_domain_fields(self)
show_products(self)
write(self, vals)
applied_assortment_ids
Many2many → ir.filters
column1='partner_id'
column2='filter_id'
comodel_name='ir.filters'
relation='ir_filter_all_partner_rel'
action_define_product_assortment(self)
create(self, vals_list)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/16.0/product_assortment |
| VERSION | |
| VERSION | 2.0.2 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Laurent Mignon (ACSONE), Weblate, OCA-git-bot, oca-ci, Telmo Santos, Carolina Fernandez, mle, Sergio Bustamante |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:48 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
product.assortment.form | ir.filters | form | New |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
product_product_view_tree |
product.product | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
column1='filter_id'
column2='partner_id'
comodel_name='res.partner'
compute='_compute_all_partner_ids'
relation='ir_filter_all_partner_rel'
store=True
apply_black_list_product_domain
Boolean
string='Apply restricted product domain'
black_list_product_domain
Text
default='[]'
required=True
string='Restricted product domain'
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
string='Restricted products'
is_assortment
Boolean
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
string='Allowed products'
create(self, vals_list)
get_partner_domain_fields(self)
show_products(self)
write(self, vals)
applied_assortment_ids
Many2many → ir.filters
column1='partner_id'
column2='filter_id'
comodel_name='ir.filters'
copy=False
relation='ir_filter_all_partner_rel'
action_define_product_assortment(self)
create(self, vals_list)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/15.0/product_assortment |
| VERSION | |
| VERSION | 2.1.0 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Carlos Dauden, OCA Transbot, sergio-teruel, Weblate, OCA-git-bot, oca-ci, CarlosRoca13 |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:46:35 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
ir.filters | form | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
column1='filter_id'
column2='partner_id'
comodel_name='res.partner'
compute='_compute_all_partner_ids'
relation='ir_filter_all_partner_rel'
store=True
apply_black_list_product_domain
Boolean
string='Apply restricted product domain'
black_list_product_domain
Text
default='[]'
required=True
string='Restricted product domain'
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
string='Restricted products'
is_assortment
Boolean
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
string='Allowed products'
create(self, vals_list)
get_partner_domain_fields(self)
show_products(self)
write(self, vals)
No new fields.
Public methods (0)No public methods.
applied_assortment_ids
Many2many → ir.filters
column1='partner_id'
column2='filter_id'
comodel_name='ir.filters'
copy=False
relation='ir_filter_all_partner_rel'
action_define_product_assortment(self)
create(self, vals_list)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/14.0/product_assortment |
| VERSION | |
| VERSION | 1.1.1 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Denis Roussel, OCA Transbot, Sébastien Alix, oca-travis, Weblate, OCA-git-bot, Simone Orsi, Kevin.roche, xavier-bouquiaux, Hai Lang |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:41:01 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
ir.filters | form | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
comodel_name='res.partner'
compute='_compute_all_partner_ids'
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
is_assortment
Boolean
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
create(self, vals_list)
show_products(self)
No new fields.
Public methods (1)action_define_product_assortment(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/13.0/product_assortment |
| VERSION | |
| VERSION | 3.0.0 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Pedro M. Baeza, GitHub, Laurent Mignon (ACSONE), Carlos Dauden, OCA Transbot, sergio-teruel, oca-travis, Weblate, OCA-git-bot, François Honoré, Benjamin Willig, oca-ci, Carlos Roca, CarlosRoca13, laurent.corron |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:34:14 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
ir.filters | form | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
all_partner_ids
Many2many → res.partner
comodel_name='res.partner'
compute='_compute_all_partner_ids'
apply_black_list_product_domain
Boolean
string='Apply black list product domain'
black_list_product_domain
Text
default='[]'
required=True
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
is_assortment
Boolean
default=<expr>
model_id
Selection
default=<expr>
partner_domain
Text
default='[]'
required=True
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
get_all_partner_ids(self)
get_partner_domain_fields(self)
show_products(self)
write(self, vals)
No new fields.
Public methods (2)action_define_product_assortment(self)
write(self, vals)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/12.0/product_assortment |
| VERSION | |
| VERSION | 2.0.2 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Pedro M. Baeza, GitHub, nans, OCA Transbot, oca-travis, Weblate, OCA-git-bot, Carlos Roca |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-attribute |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:18 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - base - product - decimal_precision - base_setup - web - bus - web_tour - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
ir.filters | form | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New | |
view_partner_form |
res.partner | div | Inherits base.view_partner_form |
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
is_assortment
Boolean
default=<expr>
model_id
Selection
default=<expr>
partner_ids
Many2many → res.partner
comodel_name='res.partner'
default=<expr>
help='This field allow to relate a partner to a domain of products'
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
show_products(self)
No new fields.
Public methods (1)action_define_product_assortment(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-attribute |
| GIT | |
| GIT | https://github.com/OCA/product-attribute.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-attribute/tree/10.0/product_assortment |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Uncategorized |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), ACSONE SA/NV |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), ACSONE SA/NV |
| COMMITTERS | |
| COMMITTERS | Cédric Pigeon, oca-travis, OCA-git-bot, tbaden |
| WEBSITE | |
| WEBSITE | https://acsone.eu |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:19:57 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/web: - web_widget_domain_v11 odoo/odoo: - base - product - decimal_precision - base_setup - web_kanban - web - bus - web_tour - report |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_assortment_view_form |
ir.filters | form | New | |
product_assortment_view_search |
product.assortment.search | ir.filters | search | New |
product_assortment_view_tree |
ir.filters | tree | New |
blacklist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_blacklisted'
is_assortment
Boolean
default=<expr>
model_id
Selection
default=<expr>
record_count
Integer
compute='_compute_record_count'
whitelist_product_ids
Many2many → product.product
comodel_name='product.product'
relation='assortment_product_whitelisted'
show_products(self)