Metadata-Version: 2.1
Name: odoo-addon-product_variant_default_code
Version: 17.0.1.0.0.4
Requires-Python: >=3.10
Requires-Dist: odoo>=17.0a,<17.1dev
Summary: Product Variant Default Code
Home-page: https://github.com/OCA/product-variant
License: AGPL-3
Author: AvancOSC, Shine IT, Tecnativa, Akretion, Odoo Community Association (OCA)
Author-email: support@odoo-community.org
Classifier: Programming Language :: Python
Classifier: Framework :: Odoo
Classifier: Framework :: Odoo :: 17.0
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Description-Content-Type: text/x-rst

.. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

============================
Product Variant Default Code
============================

.. 
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! This file is generated by oca-gen-addon-readme !!
   !! changes will be overwritten.                   !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! source digest: sha256:dd2033794be4a71ccf088c35385bc6290879b4336ba6454fcbba46bfc6d5ad31
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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-AGPL--3-blue.png
    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
    :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fproduct--variant-lightgray.png?logo=github
    :target: https://github.com/OCA/product-variant/tree/17.0/product_variant_default_code
    :alt: OCA/product-variant
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/product-variant-17-0/product-variant-17-0-product_variant_default_code
    :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-variant&target_branch=17.0
    :alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module automatically generate Product Reference (default_code)
according to attributes data with a configurable behavior.

It defines a reference mask on the product templates so the variants
references are automatically set. For example:

- Product template: Jacket
- Attributes:

  - Color: White, Black
  - Size: M, L

- Reference mask: JKT01-[Color]-[Size]
- Reference on variants:

  - JKT01-Wh-M Jacket White M
  - JKT01-Bl-M Jacket Black M
  - JKT01-Wh-L Jacket White L
  - JKT01-Bl-L Jacket Black L

**Table of contents**

.. contents::
   :local:

Usage
=====

To set the reference mask up on any product template 'Variant reference
mask' new field.

When creating a new product template without specifying the *Variant
reference mask*, a default value for *Variant reference mask* will be
automatically generated according to the attribute line settings on the
product template (if any). The mask will then be used as an instruction
to generate default code of each product variant of the product template
with the corresponding *Attribute Code* (of the attribute value)
inserted. Besides the default value, *Variant reference mask* can be
configured to your liking, make sure putting the *Attribute Name* inside
[] marks (it is case sensitive).

Example:

Creating a product named *Jacket* with two attributes, *Size* and
*Color*:

::

   Product: Jacket
   Color: Black(Bl), White(Wh) # Black and White are the attribute values;
                                 'Bl' and 'Wh' are the corresponding codes
   Size: L (L), XL(XL)

The automatically generated default value for the Variant reference mask
will be [Color]-[Size] and so the 'default code' on the variants will be
Bl-L, Wh-L, Bl-XL and Wh-XL.

The mask value can be fully customized whatever you like. You can even
have the attribute name appear more than once in the mask such as,
Jacket/[Size]~[Color]~[Size], and the generated code on variants will be
something like Jacket/L~Bl~L (for variant with Color "Black" and Size
"L").

When the code attribute is changed, it automatically regenerates the
'default code' on all variants affected.

Aditionally, a product attribute can be set and so it will be appended
to the product default_code. In the first example, setting a Color code
to CO would give default_code like this: COBl-L, COWh-L, COBl-XL and
COWh-XL.

Avoiding mask in variants
-------------------------

You can avoid this behavior or force a manual default_code on variant.
To do so, go to *Product Variants > [any variant you want to set up]*
and set manually its reference code. The field manual code will be set
to on and the variant internal reference will no longer be changed by
this module.

Unset manual code and the reference code will be unlocked again.

Known issues / Roadmap
======================

- In case of attribute name update, related mask are not updated.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/product-variant/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 <https://github.com/OCA/product-variant/issues/new?body=module:%20product_variant_default_code%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
-------

* AvancOSC
* Shine IT
* Tecnativa
* Akretion

Contributors
------------

- Alfredo de la Fuente <alfredodelafuente@avanzosc.es>
- Tony Gu <tony@openerp.cn>
- David Beal <david.beal@akretion.com>
- Daniel Campos <danielcampos@avanzosc.es>
- Kévin Roche <kevin.roche@akretion.com>
- Tecnativa <tecnativa.com>:

  - David Vidal
  - Pedro M. Baeza
  - João Marques

- `360ERP <https://www.360erp.com>`__:

  - Andrea Stirpe

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.

.. |maintainer-Kev-Roche| image:: https://github.com/Kev-Roche.png?size=40px
    :target: https://github.com/Kev-Roche
    :alt: Kev-Roche

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-Kev-Roche| 

This module is part of the `OCA/product-variant <https://github.com/OCA/product-variant/tree/17.0/product_variant_default_code>`_ project on GitHub.

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