diff --git a/README.md b/README.md index 771f198cd8c..596b6e5f452 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ addon | version | maintainers | summary [product_pricelist_item_list_view](product_pricelist_item_list_view/) | 19.0.1.0.0 | LoisRForgeFlow | View and search the list of pricelist items [product_pricelist_revision](product_pricelist_revision/) | 19.0.1.0.0 | | Product Pricelist Revision [product_pricelist_supplierinfo](product_pricelist_supplierinfo/) | 19.0.1.0.0 | luisg123v | Allows to create priceslists based on supplier info +[product_sale_team](product_sale_team/) | 19.0.1.0.0 | | Sale Team for products [product_secondary_unit](product_secondary_unit/) | 19.0.1.0.0 | sergio-teruel | Set a secondary unit per product [product_set](product_set/) | 19.0.1.0.0 | | Product set [product_state](product_state/) | 19.0.1.0.1 | emagdalenaC2i | Module introducing a state field on product template diff --git a/product_class/i18n/it.po b/product_class/i18n/it.po index 576717f2de4..ed586bfdc39 100644 --- a/product_class/i18n/it.po +++ b/product_class/i18n/it.po @@ -6,51 +6,54 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 19.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2026-07-20 08:44+0000\n" +"Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.15.2\n" #. module: product_class #: model:ir.model.constraint,message:product_class.constraint_product_class_name_uniq msgid "A product class with this name already exists." -msgstr "" +msgstr "Una classe prodotto con questo nome esiste già." #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__active msgid "Active" -msgstr "" +msgstr "Attiva" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_class__attribute_line_ids msgid "" "Allowed attributes for products of thisclass and whether they are required." msgstr "" +"Attributi consentiti per i prodotti di questa classe e se sono richiesti." #. module: product_class #: model_terms:ir.ui.view,arch_db:product_class.product_class_search msgid "Archived" -msgstr "" +msgstr "In archivio" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__attribute_id msgid "Attribute" -msgstr "" +msgstr "Attributo" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__attribute_line_ids #: model_terms:ir.ui.view,arch_db:product_class.product_class_form msgid "Attributes" -msgstr "" +msgstr "Attributi" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_product__class_attribute_ids #: model:ir.model.fields,help:product_class.field_product_template__class_attribute_ids msgid "Attributes allowed by the selected product class" -msgstr "" +msgstr "Attributi consentiti dalla classe prodotto selezionata" #. module: product_class #. odoo-python @@ -60,35 +63,38 @@ msgid "" "'%(product_class)s': %(attrs)s. Please remove these attributes or change the" " product class." msgstr "" +"Non si possono rimuovere attributi utilizzati in prodotti assegnati alla " +"lasse '%(product_class)s': %(attrs)s. Rimuovere questi attributi o " +"modificare la classe prodotto." #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_attribute__class_attribute_line_ids msgid "Class Attribute Lines" -msgstr "" +msgstr "Righe attributo classe" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_product__class_attribute_ids #: model:ir.model.fields,field_description:product_class.field_product_template__class_attribute_ids msgid "Class Attributes" -msgstr "" +msgstr "Attributi classe" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_product__class_required_attribute_ids #: model:ir.model.fields,field_description:product_class.field_product_template__class_required_attribute_ids msgid "Class Required Attributes" -msgstr "" +msgstr "Attributi richiesti dalla classe" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__create_uid #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__create_uid msgid "Created by" -msgstr "" +msgstr "Creato da" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__create_date #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__create_date msgid "Created on" -msgstr "" +msgstr "Creato il" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_attribute__display_name @@ -96,12 +102,12 @@ msgstr "" #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__display_name #: model:ir.model.fields,field_description:product_class.field_product_template__display_name msgid "Display Name" -msgstr "" +msgstr "Nome visualizzato" #. module: product_class #: model:ir.model.constraint,message:product_class.constraint_product_class_attribute_line_class_attribute_uniq msgid "Each attribute can be configured only once per product class." -msgstr "" +msgstr "Ogni attributo può essere configurato una sola volta per classe." #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_attribute__id @@ -109,34 +115,36 @@ msgstr "" #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__id #: model:ir.model.fields,field_description:product_class.field_product_template__id msgid "ID" -msgstr "" +msgstr "ID" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_class_attribute_line__required msgid "If enabled, products of this class must define this attribute." msgstr "" +"Se abilitata, i prodotti di questa categoria devono definire questo " +"attributo." #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__write_uid #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__write_uid msgid "Last Updated by" -msgstr "" +msgstr "Ultimo aggiornamento di" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__write_date #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__write_date msgid "Last Updated on" -msgstr "" +msgstr "Ultimo aggiornamento il" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class__name msgid "Name" -msgstr "" +msgstr "Nome" #. module: product_class #: model:ir.model,name:product_class.model_product_template msgid "Product" -msgstr "" +msgstr "Prodotto" #. module: product_class #. odoo-python @@ -146,6 +154,9 @@ msgid "" " class '%(product_class)s': %(attrs)s. Please remove these attributes or " "change the product class." msgstr "" +"Il prodotto '%(product)s' ha righe attributo che non appartengono alla " +"classe '%(product_class)s' selezionata: %(attrs)s. Rimuovere questi " +"attributi o modificare la classe del prodotto." #. module: product_class #. odoo-python @@ -154,11 +165,13 @@ msgid "" "Product '%(product)s' is missing required attributes for the selected class " "'%(product_class)s': %(attrs)s." msgstr "" +"Al prodotto '%(product)s' mancano gli attributi richiesti per la classe '%" +"(product_class)s' selezionata: %(attrs)s." #. module: product_class #: model:ir.model,name:product_class.model_product_attribute msgid "Product Attribute" -msgstr "" +msgstr "Attributo prodotto" #. module: product_class #: model:ir.model,name:product_class.model_product_class @@ -167,12 +180,12 @@ msgstr "" #: model:ir.model.fields,field_description:product_class.field_product_template__class_id #: model_terms:ir.ui.view,arch_db:product_class.product_class_search msgid "Product Class" -msgstr "" +msgstr "Classe prodotto" #. module: product_class #: model:ir.model,name:product_class.model_product_class_attribute_line msgid "Product Class Attribute Line" -msgstr "" +msgstr "Riga attributo classe prodotto" #. module: product_class #: model:ir.actions.act_window,name:product_class.product_class_action @@ -180,31 +193,31 @@ msgstr "" #: model:ir.ui.menu,name:product_class.menu_product_class_stock_config #: model_terms:ir.ui.view,arch_db:product_class.product_attribute_view_form msgid "Product Classes" -msgstr "" +msgstr "Classi prodotto" #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_attribute__classes_count msgid "Product Classes Count" -msgstr "" +msgstr "Conteggio classi prodotto" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_product__class_id #: model:ir.model.fields,help:product_class.field_product_template__class_id msgid "Product class that constrains which attributes can be used" -msgstr "" +msgstr "Classe prodotto che contiene gli attributi che possono essere usati" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_attribute__class_attribute_line_ids msgid "Product classes that include this attribute." -msgstr "" +msgstr "Classi prodotto che includono questo attributo." #. module: product_class #: model:ir.model.fields,field_description:product_class.field_product_class_attribute_line__required msgid "Required" -msgstr "" +msgstr "Richiesto" #. module: product_class #: model:ir.model.fields,help:product_class.field_product_product__class_required_attribute_ids #: model:ir.model.fields,help:product_class.field_product_template__class_required_attribute_ids msgid "Required attributes for the selected product class." -msgstr "" +msgstr "Attributi richiesti per la classe prodotto selezionata." diff --git a/product_sale_team/README.rst b/product_sale_team/README.rst new file mode 100644 index 00000000000..8552964958c --- /dev/null +++ b/product_sale_team/README.rst @@ -0,0 +1,112 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + +================= +Product Sale Team +================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:80dcedefb06f0d68d82bd73909893f47b7f16ddc8a185e2b0b8cb5d635087cc2 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/license-LGPL--3-blue.png + :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fproduct--attribute-lightgray.png?logo=github + :target: https://github.com/OCA/product-attribute/tree/19.0/product_sale_team + :alt: OCA/product-attribute +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/product-attribute-19-0/product-attribute-19-0-product_sale_team + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/product-attribute&target_branch=19.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module add the "Sales Team" field to the product template. Please +be advised that this is a technical module that meant to be used as a +part of other modules built on top of it. + +**Table of contents** + +.. contents:: + :local: + +Use Cases / Context +=================== + +Sometimes you would need to define a Sales Team for specific product. Eg +it's a piece of a complex equipment that has a specific sales flow. + +Usage +===== + +- Open the product +- Select a sales team in the corresponding field located in the "General + Information" tab +- Go to *Sales > Products* +- Use the *Sales Team* filter/group by option from the search view to + find products assigned to a specific sales team + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* Cetmix + +Contributors +------------ + +- `Cetmix `__: + + - Ivan Sokolov + - Dmitry Meita + +- `Heliconia Solutions Pvt. Ltd. `__ + + - Bhavesh Heliconia + +Other credits +------------- + +The development of this module has been financially supported by: + +- Geschäftsstelle Sozialinfo + +Maintainers +----------- + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/product-attribute `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_sale_team/__init__.py b/product_sale_team/__init__.py new file mode 100644 index 00000000000..57a36fc0f6b --- /dev/null +++ b/product_sale_team/__init__.py @@ -0,0 +1,4 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from . import models diff --git a/product_sale_team/__manifest__.py b/product_sale_team/__manifest__.py new file mode 100644 index 00000000000..f2d1e2e2eb9 --- /dev/null +++ b/product_sale_team/__manifest__.py @@ -0,0 +1,20 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +{ + "name": "Product Sale Team", + "summary": "Sale Team for products", + "version": "19.0.1.0.0", + "category": "Product", + "author": "Cetmix, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/product-attribute", + "license": "LGPL-3", + "depends": [ + "crm", + "product", + ], + "data": [ + "views/product_template_views.xml", + ], + "installable": True, +} diff --git a/product_sale_team/i18n/it.po b/product_sale_team/i18n/it.po new file mode 100644 index 00000000000..b2690d52336 --- /dev/null +++ b/product_sale_team/i18n/it.po @@ -0,0 +1,34 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_sale_team +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-01-21 07:52+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.15.2\n" + +#. module: product_sale_team +#: model:ir.model.fields,help:product_sale_team.field_product_product__sales_team_id +#: model:ir.model.fields,help:product_sale_team.field_product_template__sales_team_id +msgid "Default sales team responsible for this product." +msgstr "Team vendite predefinito responsabile di questo prodotto." + +#. module: product_sale_team +#: model:ir.model,name:product_sale_team.model_product_template +msgid "Product" +msgstr "Prodotto" + +#. module: product_sale_team +#: model:ir.model.fields,field_description:product_sale_team.field_product_product__sales_team_id +#: model:ir.model.fields,field_description:product_sale_team.field_product_template__sales_team_id +msgid "Sales Team" +msgstr "Team di vendita" diff --git a/product_sale_team/i18n/product_sale_team.pot b/product_sale_team/i18n/product_sale_team.pot new file mode 100644 index 00000000000..3cdc725cd13 --- /dev/null +++ b/product_sale_team/i18n/product_sale_team.pot @@ -0,0 +1,42 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_sale_team +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 19.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: product_sale_team +#: model:ir.model.fields,help:product_sale_team.field_product_product__sales_team_id +#: model:ir.model.fields,help:product_sale_team.field_product_template__sales_team_id +msgid "Default sales team responsible for this product." +msgstr "" + +#. module: product_sale_team +#: model:ir.model.fields,field_description:product_sale_team.field_product_template__display_name +msgid "Display Name" +msgstr "" + +#. module: product_sale_team +#: model:ir.model.fields,field_description:product_sale_team.field_product_template__id +msgid "ID" +msgstr "" + +#. module: product_sale_team +#: model:ir.model,name:product_sale_team.model_product_template +msgid "Product" +msgstr "" + +#. module: product_sale_team +#: model:ir.model.fields,field_description:product_sale_team.field_product_product__sales_team_id +#: model:ir.model.fields,field_description:product_sale_team.field_product_template__sales_team_id +#: model_terms:ir.ui.view,arch_db:product_sale_team.product_template_search_view_inherit_sales_team +msgid "Sales Team" +msgstr "" diff --git a/product_sale_team/models/__init__.py b/product_sale_team/models/__init__.py new file mode 100644 index 00000000000..ab7478ff551 --- /dev/null +++ b/product_sale_team/models/__init__.py @@ -0,0 +1,4 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from . import product_template diff --git a/product_sale_team/models/product_template.py b/product_sale_team/models/product_template.py new file mode 100644 index 00000000000..a28b68fcf5c --- /dev/null +++ b/product_sale_team/models/product_template.py @@ -0,0 +1,13 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from odoo import fields, models + + +class ProductTemplate(models.Model): + _inherit = "product.template" + + sales_team_id = fields.Many2one( + comodel_name="crm.team", + help="Default sales team responsible for this product.", + ) diff --git a/product_sale_team/pyproject.toml b/product_sale_team/pyproject.toml new file mode 100644 index 00000000000..4231d0cccb3 --- /dev/null +++ b/product_sale_team/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/product_sale_team/readme/CONTEXT.md b/product_sale_team/readme/CONTEXT.md new file mode 100644 index 00000000000..80b62777d55 --- /dev/null +++ b/product_sale_team/readme/CONTEXT.md @@ -0,0 +1 @@ +Sometimes you would need to define a Sales Team for specific product. Eg it's a piece of a complex equipment that has a specific sales flow. diff --git a/product_sale_team/readme/CONTRIBUTORS.md b/product_sale_team/readme/CONTRIBUTORS.md new file mode 100644 index 00000000000..74bc12b5296 --- /dev/null +++ b/product_sale_team/readme/CONTRIBUTORS.md @@ -0,0 +1,5 @@ +* [Cetmix](https://cetmix.com/): + * Ivan Sokolov + * Dmitry Meita +- [Heliconia Solutions Pvt. Ltd.](https://www.heliconia.io) + - Bhavesh Heliconia diff --git a/product_sale_team/readme/CREDITS.md b/product_sale_team/readme/CREDITS.md new file mode 100644 index 00000000000..b2770d9c69a --- /dev/null +++ b/product_sale_team/readme/CREDITS.md @@ -0,0 +1,2 @@ +The development of this module has been financially supported by: + - Geschäftsstelle Sozialinfo diff --git a/product_sale_team/readme/DESCRIPTION.md b/product_sale_team/readme/DESCRIPTION.md new file mode 100644 index 00000000000..416a28b0cf8 --- /dev/null +++ b/product_sale_team/readme/DESCRIPTION.md @@ -0,0 +1,2 @@ +This module add the "Sales Team" field to the product template. +Please be advised that this is a technical module that meant to be used as a part of other modules built on top of it. diff --git a/product_sale_team/readme/USAGE.md b/product_sale_team/readme/USAGE.md new file mode 100644 index 00000000000..8ce021bd181 --- /dev/null +++ b/product_sale_team/readme/USAGE.md @@ -0,0 +1,4 @@ +- Open the product +- Select a sales team in the corresponding field located in the "General Information" tab +- Go to *Sales > Products* +- Use the *Sales Team* filter/group by option from the search view to find products assigned to a specific sales team diff --git a/product_sale_team/static/description/icon.png b/product_sale_team/static/description/icon.png new file mode 100644 index 00000000000..3a0328b516c Binary files /dev/null and b/product_sale_team/static/description/icon.png differ diff --git a/product_sale_team/static/description/index.html b/product_sale_team/static/description/index.html new file mode 100644 index 00000000000..dace4b76108 --- /dev/null +++ b/product_sale_team/static/description/index.html @@ -0,0 +1,465 @@ + + + + + +README.rst + + + +
+ + + +Odoo Community Association + +
+

Product Sale Team

+ +

Beta License: LGPL-3 OCA/product-attribute Translate me on Weblate Try me on Runboat

+

This module add the “Sales Team” field to the product template. Please +be advised that this is a technical module that meant to be used as a +part of other modules built on top of it.

+

Table of contents

+ +
+

Use Cases / Context

+

Sometimes you would need to define a Sales Team for specific product. Eg +it’s a piece of a complex equipment that has a specific sales flow.

+
+
+

Usage

+
    +
  • Open the product
  • +
  • Select a sales team in the corresponding field located in the “General +Information” tab
  • +
  • Go to Sales > Products
  • +
  • Use the Sales Team filter/group by option from the search view to +find products assigned to a specific sales team
  • +
+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Cetmix
  • +
+
+
+

Contributors

+ +
+
+

Other credits

+

The development of this module has been financially supported by:

+
    +
  • Geschäftsstelle Sozialinfo
  • +
+
+
+

Maintainers

+

This module is maintained by the OCA.

+ +Odoo Community Association + +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/product-attribute project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+
+ + diff --git a/product_sale_team/tests/__init__.py b/product_sale_team/tests/__init__.py new file mode 100644 index 00000000000..fcf63bb926b --- /dev/null +++ b/product_sale_team/tests/__init__.py @@ -0,0 +1,4 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from . import test_product_sale_team diff --git a/product_sale_team/tests/test_product_sale_team.py b/product_sale_team/tests/test_product_sale_team.py new file mode 100644 index 00000000000..dcde46e8626 --- /dev/null +++ b/product_sale_team/tests/test_product_sale_team.py @@ -0,0 +1,17 @@ +# Copyright (C) 2025 Cetmix OÜ +# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl). + +from odoo.tests import tagged + +from odoo.addons.base.tests.common import BaseCommon + + +@tagged("post_install", "-at_install") +class TestProductSaleTeam(BaseCommon): + def test_sale_team_field_metadata(self): + """Ensure product.template has a Many2one to crm.team.""" + ProductTemplate = self.env["product.template"] + self.assertIn("sales_team_id", ProductTemplate._fields) + field = ProductTemplate._fields["sales_team_id"] + self.assertEqual(field.type, "many2one") + self.assertEqual(field.comodel_name, "crm.team") diff --git a/product_sale_team/views/product_template_views.xml b/product_sale_team/views/product_template_views.xml new file mode 100644 index 00000000000..f6888ff40e5 --- /dev/null +++ b/product_sale_team/views/product_template_views.xml @@ -0,0 +1,33 @@ + + + product.template.sale.team.form.view + product.template + + + + + + + + + + product.template.search.view.inherit.sales_team + product.template + + + + + + + + + + + diff --git a/setup/_metapackage/pyproject.toml b/setup/_metapackage/pyproject.toml index b1660b8a0e6..5561193bf83 100644 --- a/setup/_metapackage/pyproject.toml +++ b/setup/_metapackage/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "odoo-addons-oca-product-attribute" -version = "19.0.20260713.0" +version = "19.0.20260720.0" dependencies = [ "odoo-addon-product_attribute_archive==19.0.*", "odoo-addon-product_attribute_value_avoid_auto_fill==19.0.*", @@ -21,6 +21,7 @@ dependencies = [ "odoo-addon-product_pricelist_item_list_view==19.0.*", "odoo-addon-product_pricelist_revision==19.0.*", "odoo-addon-product_pricelist_supplierinfo==19.0.*", + "odoo-addon-product_sale_team==19.0.*", "odoo-addon-product_secondary_unit==19.0.*", "odoo-addon-product_set==19.0.*", "odoo-addon-product_state==19.0.*",