Skip to main content

Propagate active value from product variants to product templates.

Project description

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

This module extends the functionnaly of Odoo Product module.

By default, in Odoo, - when a user disable a template, it will disable the related variants. - when a user enable a template, it will enable the related variants.

But if a user disables all the variants of a template, the related template will still remain active, what doesn’t make sense in many case, and which will force the user to disable the template as well, to avoid seeing the obsolete template.

This module avoids having inconsistent states between the active field of the varinats and the active field of the template.

Once installed:

  • if a user disables a variant, it will disable the template, if all the variants are disabled.

  • if a user enables a variant, it will enable the template.

Table of contents

Installation

If you are installing this module on a database with existing data, you could want to execute the two following SQL requests, to fix some inconsistent data.

  • Disable templates that do not have a single variant active

UPDATE product_template pt
SET active = false
WHERE id in (
    SELECT pt.id
    FROM product_template pt
    INNER JOIN product_product pp on pp.product_tmpl_id = pt.id
    WHERE pt.active = true
    GROUP BY pt.id
    HAVING sum((pp.active)::int) = 0
);
  • Enable templates that have at least one active variant

UPDATE product_template pt
SET active = true
WHERE id in (
    SELECT pt.id
    FROM product_template pt
    INNER JOIN product_product pp on pp.product_tmpl_id = pt.id
    WHERE pt.active = false
    GROUP BY pt.id
    HAVING sum((pp.active)::int) != 0
);

Development

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

  • GRAP

Contributors

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file odoo12_addon_product_active_propagate-12.0.1.0.1.99.dev6-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo12_addon_product_active_propagate-12.0.1.0.1.99.dev6-py3-none-any.whl
Algorithm Hash digest
SHA256 fd841edb4d13106abb8036786ccd5204eb9465564322312b711360fafe253b3f
MD5 394512fbac44715978a8bd2582f1f68b
BLAKE2b-256 b218807d2c02c42fee0767f5c251cfa69478f48bd0703962d68229da2a614c22

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page