diff --git a/multiple_reference_per_product/README.md b/multiple_reference_per_product/README.md new file mode 100644 index 000000000..23d0587c5 --- /dev/null +++ b/multiple_reference_per_product/README.md @@ -0,0 +1,41 @@ +Multiple reference per products +------------------------------- +Supporting Addon for stock, Manages product reference code + + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +Cybrosys Technologies. +(odoo@cybrosys.com) + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + +Bug Tracker +----------- +Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. + +Maintainer +========== +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. + +For support and more information, please visit `Our Website `__ + +Further information +=================== +HTML Description: ``__ + + diff --git a/multiple_reference_per_product/__init__.py b/multiple_reference_per_product/__init__.py new file mode 100644 index 000000000..6c1f4e196 --- /dev/null +++ b/multiple_reference_per_product/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Cybrosys Techno Solutions(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from . import models \ No newline at end of file diff --git a/multiple_reference_per_product/__manifest__.py b/multiple_reference_per_product/__manifest__.py new file mode 100644 index 000000000..fe4d4003d --- /dev/null +++ b/multiple_reference_per_product/__manifest__.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2022-TODAY Cybrosys Technologies(). +# Author: Cybrosys Techno Solutions(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# +{ + 'name': "Multiple Reference Per Product", + 'version': '15.0.1.0.0', + 'summary': 'Multiple Reference Per Product', + 'description': """Add multiple reference code for a product template or product variant. Easily manage between the + different codes as default code for the product.""", + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://cybrosys.com/", + 'category': 'Inventory/Inventory', + 'depends': ['stock'], + 'data': [ + 'security/ir.model.access.csv', + 'views/multiple_reference_per_product.xml', + ], + 'images': ['static/description/banner.png'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, + } diff --git a/multiple_reference_per_product/doc/RELEASE_NOTES.md b/multiple_reference_per_product/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..bada301af --- /dev/null +++ b/multiple_reference_per_product/doc/RELEASE_NOTES.md @@ -0,0 +1,10 @@ +## Module + +#### 10.10.2021 +#### Version 15.0.1.0.0 +#### ADD +Initial commit for Multiple Reference Per Product + + + + diff --git a/multiple_reference_per_product/models/__init__.py b/multiple_reference_per_product/models/__init__.py new file mode 100644 index 000000000..eb0856c78 --- /dev/null +++ b/multiple_reference_per_product/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Cybrosys Techno Solutions(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from . import multiple_reference_per_product \ No newline at end of file diff --git a/multiple_reference_per_product/models/multiple_reference_per_product.py b/multiple_reference_per_product/models/multiple_reference_per_product.py new file mode 100644 index 000000000..232134054 --- /dev/null +++ b/multiple_reference_per_product/models/multiple_reference_per_product.py @@ -0,0 +1,144 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2020-TODAY Cybrosys Technologies(). +# Author: Cybrosys Techno Solutions(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from odoo import models, fields, api + + +class MultipleReferencePerProduct(models.Model): + _name = 'multiple.reference.per.product' + _description = 'Multiple Reference Per Product' + _rec_name = 'multiple_references_name' + + multiple_references_name = fields.Char('Multiple References', required=True) + product_id = fields.Many2one('product.product', string="Product", required=True) + is_default_reference = fields.Boolean(string="Is default reference", compute='_is_default_reference') + + def _is_default_reference(self): + """Check if the current code is default code for the product""" + for reference in self: + if reference.product_id: + reference.is_default_reference = True if reference.product_id.default_code == reference.multiple_references_name else False + + def set_as_default(self): + """Set the current code as default code for the product""" + self.ensure_one() + self.product_id.default_code = self.multiple_references_name + + def create_reference(self, reference_code, product_id): + """Add existing default code into the reference model""" + reference = self.create({ + 'multiple_references_name': reference_code, + 'product_id': product_id, + }) + return True if reference else False + + @api.model + def create(self, values): + if values.get('multiple_references_name') and values.get('product_id'): + reference_code = self.search([('multiple_references_name', '=', values.get('multiple_references_name')), ('product_id', '=', values.get('product_id'))]) + if reference_code: + res = reference_code[0] + else: + res = super(MultipleReferencePerProduct, self).create(values) + if not res.product_id.default_code: + res.product_id.default_code = res.multiple_references_name + return res + else: + res = super(MultipleReferencePerProduct, self).create(values) + return res + + def write(self, values): + multiple_references_name = values.get('multiple_references_name') + multiple_references_name = [multiple_references_name] if multiple_references_name else self.mapped('name') + product_id = values.get('product_id') + product_ids = [product_id] if product_id else self.mapped('product_id').ids + reference_code = self.search([('multiple_references_name', 'in', multiple_references_name), ('product_id', 'in', product_ids)]) + if reference_code: + return False + return super(MultipleReferencePerProduct, self).write(values) + + +class ProductProductInherit(models.Model): + _inherit = 'product.product' + + multiple_references_ids = fields.One2many("multiple.reference.per.product", "product_id", string="Multiple " + "References") + multiple_references_code = fields.Char(string="Multiple References", related="multiple_references_ids" + ".multiple_references_name") + multiple_references_id = fields.Many2many("multiple.reference.per.product", string="Multiple References", + compute="_get_multiple_reference") + multiple_references_count = fields.Integer(string="NUmber of references", compute="_get_multiple_reference_count") + + @api.depends('multiple_references_id') + def _get_multiple_reference_count(self): + """Get the count of reference code""" + self.multiple_references_count = len(self.multiple_references_ids) + + def _get_multiple_reference(self): + self.multiple_references_id = self.multiple_references_ids.filtered(lambda references: references.multiple_references_name != self.default_code).ids + + def multiple_references_list(self): + return { + 'name': "Multiple References", + 'type': 'ir.actions.act_window', + 'target': 'current', + 'res_model': 'multiple.reference.per.product', + 'views': [[False, "tree"], [False, "form"]], + 'context': {'default_product_id': self.id}, + 'domain': [('product_id', '=', self.id)], + } + + def write(self, values): + if values.get('default_code'): + if self.default_code: + self.env['multiple.reference.per.product'].sudo().create_reference(self.default_code, self.id) + res = super(ProductProductInherit, self).write(values) + return res + + +class ProductTemplateInherit(models.Model): + _inherit = 'product.template' + + multiple_references_code = fields.Char(string="Multiple References", related="product_variant_ids" + ".multiple_references_ids" + ".multiple_references_name") + multiple_references_id = fields.Many2many("multiple.reference.per.product", string="Multiple References", + compute="_get_multiple_reference") + multiple_references_count = fields.Integer(string="NUmber of references", compute="_get_multiple_reference_count") + + @api.depends('multiple_references_id') + def _get_multiple_reference_count(self): + self.multiple_references_count = len(self.multiple_references_id) + + def _get_multiple_reference(self): + self.multiple_references_id = self.product_variant_ids.mapped('multiple_references_id').filtered(lambda references: references.multiple_references_name != self.default_code).ids + + def multiple_references_list(self): + return { + 'name': "Multiple References", + 'type': 'ir.actions.act_window', + 'target': 'current', + 'res_model': 'multiple.reference.per.product', + 'views': [[False, "tree"], [False, "form"]], + 'context': {'default_product_id': self.product_variant_id.id}, + 'domain': [('product_id', '=', self.product_variant_id.id)], + } diff --git a/multiple_reference_per_product/security/ir.model.access.csv b/multiple_reference_per_product/security/ir.model.access.csv new file mode 100644 index 000000000..9efdd3ccd --- /dev/null +++ b/multiple_reference_per_product/security/ir.model.access.csv @@ -0,0 +1,2 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_multiple_reference_per_product,multiple.reference.per.product,model_multiple_reference_per_product,,1,1,1,1 \ No newline at end of file diff --git a/multiple_reference_per_product/static/description/assets/icons/check.png b/multiple_reference_per_product/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/check.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/chevron.png b/multiple_reference_per_product/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/chevron.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/cogs.png b/multiple_reference_per_product/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/cogs.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/consultation.png b/multiple_reference_per_product/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/consultation.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/ecom-black.png b/multiple_reference_per_product/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/ecom-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/education-black.png b/multiple_reference_per_product/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/education-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/hotel-black.png b/multiple_reference_per_product/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/hotel-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/license.png b/multiple_reference_per_product/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/license.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/lifebuoy.png b/multiple_reference_per_product/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/lifebuoy.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/logo.png b/multiple_reference_per_product/static/description/assets/icons/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/logo.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/manufacturing-black.png b/multiple_reference_per_product/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/manufacturing-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/pos-black.png b/multiple_reference_per_product/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/pos-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/puzzle.png b/multiple_reference_per_product/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/puzzle.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/restaurant-black.png b/multiple_reference_per_product/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/restaurant-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/service-black.png b/multiple_reference_per_product/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/service-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/trading-black.png b/multiple_reference_per_product/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/trading-black.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/training.png b/multiple_reference_per_product/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/training.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/update.png b/multiple_reference_per_product/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/update.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/user.png b/multiple_reference_per_product/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/user.png differ diff --git a/multiple_reference_per_product/static/description/assets/icons/wrench.png b/multiple_reference_per_product/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/icons/wrench.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_ecommerce.png b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_ecommerce.png new file mode 100644 index 000000000..549aba8a3 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_ecommerce.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_inventory.png b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_inventory.png new file mode 100644 index 000000000..525083a35 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_inventory.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_invoicing.png b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_invoicing.png new file mode 100644 index 000000000..266fc6958 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_invoicing.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_sale.png b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_sale.png new file mode 100644 index 000000000..407700502 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_product_brand_sale.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_product_multi_uom_pos.png b/multiple_reference_per_product/static/description/assets/modules/banner_product_multi_uom_pos.png new file mode 100644 index 000000000..a7e36775f Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_product_multi_uom_pos.png differ diff --git a/multiple_reference_per_product/static/description/assets/modules/banner_website_product_attachments.png b/multiple_reference_per_product/static/description/assets/modules/banner_website_product_attachments.png new file mode 100644 index 000000000..7e036d030 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/modules/banner_website_product_attachments.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/demo1.png b/multiple_reference_per_product/static/description/assets/screenshots/demo1.png new file mode 100644 index 000000000..fd944e612 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/demo1.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/demo2.png b/multiple_reference_per_product/static/description/assets/screenshots/demo2.png new file mode 100644 index 000000000..8a2a29846 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/demo2.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/demo3.png b/multiple_reference_per_product/static/description/assets/screenshots/demo3.png new file mode 100644 index 000000000..e4cbad548 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/demo3.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/demo4.png b/multiple_reference_per_product/static/description/assets/screenshots/demo4.png new file mode 100644 index 000000000..50682c44a Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/demo4.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/demo5.png b/multiple_reference_per_product/static/description/assets/screenshots/demo5.png new file mode 100644 index 000000000..5f2377917 Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/demo5.png differ diff --git a/multiple_reference_per_product/static/description/assets/screenshots/hero.gif b/multiple_reference_per_product/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..133ccfc7b Binary files /dev/null and b/multiple_reference_per_product/static/description/assets/screenshots/hero.gif differ diff --git a/multiple_reference_per_product/static/description/banner.png b/multiple_reference_per_product/static/description/banner.png new file mode 100644 index 000000000..9859339c3 Binary files /dev/null and b/multiple_reference_per_product/static/description/banner.png differ diff --git a/multiple_reference_per_product/static/description/icon.png b/multiple_reference_per_product/static/description/icon.png new file mode 100644 index 000000000..25c1d2c78 Binary files /dev/null and b/multiple_reference_per_product/static/description/icon.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_product_brand_ecommerce.png b/multiple_reference_per_product/static/description/images/banner_product_brand_ecommerce.png new file mode 100644 index 000000000..549aba8a3 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_product_brand_ecommerce.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_product_brand_inventory.png b/multiple_reference_per_product/static/description/images/banner_product_brand_inventory.png new file mode 100644 index 000000000..525083a35 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_product_brand_inventory.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_product_brand_invoicing.png b/multiple_reference_per_product/static/description/images/banner_product_brand_invoicing.png new file mode 100644 index 000000000..266fc6958 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_product_brand_invoicing.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_product_brand_sale.png b/multiple_reference_per_product/static/description/images/banner_product_brand_sale.png new file mode 100644 index 000000000..407700502 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_product_brand_sale.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_product_multi_uom_pos.png b/multiple_reference_per_product/static/description/images/banner_product_multi_uom_pos.png new file mode 100644 index 000000000..a7e36775f Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_product_multi_uom_pos.png differ diff --git a/multiple_reference_per_product/static/description/images/banner_website_product_attachments.png b/multiple_reference_per_product/static/description/images/banner_website_product_attachments.png new file mode 100644 index 000000000..7e036d030 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/banner_website_product_attachments.png differ diff --git a/multiple_reference_per_product/static/description/images/checked.png b/multiple_reference_per_product/static/description/images/checked.png new file mode 100644 index 000000000..578cedb80 Binary files /dev/null and b/multiple_reference_per_product/static/description/images/checked.png differ diff --git a/multiple_reference_per_product/static/description/images/cybrosys.png b/multiple_reference_per_product/static/description/images/cybrosys.png new file mode 100644 index 000000000..d76b5bafb Binary files /dev/null and b/multiple_reference_per_product/static/description/images/cybrosys.png differ diff --git a/multiple_reference_per_product/static/description/index.html b/multiple_reference_per_product/static/description/index.html new file mode 100644 index 000000000..4f4fb3cc9 --- /dev/null +++ b/multiple_reference_per_product/static/description/index.html @@ -0,0 +1,597 @@ +
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+ +
+
+
+
+ +
+
+
+

+ Multiple Reference Per Product

+

+ Add multiple reference for a single product or product variant +

+ +
+
+ + + +
+
+

+ Overview +

+
+ +
+

+ This module helps you to maintain multiple reference codes for a single product + or product variant with which you can easily filter them out from the product menu. + Also manage between different codes as default codes for the product.so that + user can search product even if they forgot one of the reference code of a product

+
+

+
+ + +
+
+

+ Features +

+
+ +
+
+ +
+
+

+ Multiple Reference Per Product

+
+
+ +
+
+ +
+
+

+ Easily manage between different reference code.

+
+
+ +
+
+ +
+
+

+ Multiple reference code

+
+
+ +
+
+ +
+
+

+ Easyly manage between different reference code

+
+
+ +
+
+ +
+
+

+ Set default code for product from these reference codes.

+
+
+ +
+
+ +
+
+

+ Search products with multiple reference codes.

+
+
+ + +
+ +
+
+

+ Screenshots +

+
+ +
+

+ Create new reference

+ + +
+ +
+

+ Set default code

+ + +
+ +
+

+ Multiple reference for the product

+ +
+ + + +
+
+

Suggested Products

+
+ + +
+
+ + + +
+
+
+

Our Services

+
+
+ +
+
+ +
+
+ Odoo + Customization
+
+ +
+
+ +
+
+ Odoo + Implementation
+
+ +
+
+ +
+
+ Odoo + Support
+
+ + +
+
+ +
+
+ Hire + Odoo + Developer
+
+ +
+
+ +
+
+ Odoo + Integration
+
+ +
+
+ +
+
+ Odoo + Migration
+
+ + +
+
+ +
+
+ Odoo + Consultancy
+
+ +
+
+ +
+
+ Odoo + Implementation
+
+ +
+
+ +
+
+ Odoo + Licensing Consultancy
+
+
+
+ + + +
+
+
+

Our Industries

+
+
+ +
+
+ +
+ Trading +
+

+ Easily procure + and + sell your products

+
+
+ +
+
+ +
+ POS +
+

+ Easy + configuration + and convivial experience

+
+
+ +
+
+ +
+ Education +
+

+ A platform for + educational management

+
+
+ +
+
+ +
+ Manufacturing +
+

+ Plan, track and + schedule your operations

+
+
+ +
+
+ +
+ E-commerce & Website +
+

+ Mobile + friendly, + awe-inspiring product pages

+
+
+ +
+
+ +
+ Service Management +
+

+ Keep track of + services and invoice

+
+
+ +
+
+ +
+ Restaurant +
+

+ Run your bar or + restaurant methodically

+
+
+ +
+
+ +
+ Hotel Management +
+

+ An + all-inclusive + hotel management application

+
+
+ +
+
+ + + + + +
+
+
+

Need Help?

+
+
+
+ + +
+ +
+ + +
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+
+ + +
\ No newline at end of file diff --git a/multiple_reference_per_product/views/multiple_reference_per_product.xml b/multiple_reference_per_product/views/multiple_reference_per_product.xml new file mode 100644 index 000000000..3e0fa1b29 --- /dev/null +++ b/multiple_reference_per_product/views/multiple_reference_per_product.xml @@ -0,0 +1,87 @@ + + + + + + multiple.reference.tree.view + multiple.reference.per.product + + + + + + + + + + + multiple.reference.form.view + multiple.reference.per.product + +
+ + + + + + + + + +
+ + + + + + + + + multiple.reference.product.template.search + product.template + + + + + + + + + + + + multiple_reference_per_product_template.view + product.product + + + + + + \ No newline at end of file