Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
0806dc1
[ADD] product_abc_classification
MiquelRForgeFlow May 28, 2020
8f1b7a2
[IMP] product_abc_classification: Makes the classification computatio…
lmarion-source Jan 26, 2021
44e62b4
[IMP] product_abc_classification/base: Restore module name
rousseldenis Nov 10, 2022
a07dd39
[IMP] product_abc_classification: add product smart button in profile
MiquelRForgeFlow Feb 2, 2022
7489d9c
[FIX] product_abc_classification: Remove not working context attributes
rousseldenis Nov 15, 2022
d806269
[FIX] product_abc_classification: Use the good _for_xml_id() and add …
rousseldenis Nov 17, 2022
72ba94f
[FIX] product_abc_classification: Adapt write() for a multi recordset
rousseldenis Nov 22, 2022
c5d9e4a
[IMP] product_abc_classification: Improve profile view + help
rousseldenis Feb 15, 2023
84a6bb3
[FIX] product_abc_classification: Translated terms into views
lmignon Apr 5, 2023
6f3bb8a
[FIX] product_abc_classification: Fix tests
rousseldenis Sep 18, 2023
18fc36f
[UPD] Update product_abc_classification.pot
Sep 18, 2023
b4bf3b4
oca-github-bot post-merge updates
OCA-git-bot Sep 18, 2023
d26eb77
Added translation using Weblate (Spanish)
Ivorra78 Oct 9, 2023
70c6cb7
Translated using Weblate (Spanish)
Ivorra78 Oct 9, 2023
9a52a8b
Translated using Weblate (Spanish)
Ivorra78 Oct 12, 2023
1e4593f
[UPD] Update product_abc_classification.pot
Oct 27, 2023
ebf8bfb
Update translation files
weblate Oct 28, 2023
2e9be4f
Added translation using Weblate (Italian)
mymage Oct 29, 2023
b147c74
Translated using Weblate (Italian)
mymage Oct 29, 2023
63696b7
product_abc_classification: fix invalidate cache warning
simahawk Feb 21, 2024
5e55848
product_abc_classification: fix tests error log
simahawk Feb 21, 2024
6ff79a3
[BOT] post-merge updates
OCA-git-bot Feb 29, 2024
2ec27e4
[IMP] product_abc_classification: pre-commit auto fixes
fgaviiria Jul 17, 2024
727e16c
[MIG] product_abc_classification: Migration to 17.0
fgaviiria Jul 18, 2024
e1c5293
[MIG] product_abc_classification: Migration to 17.0
anothingguy Jul 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 108 additions & 0 deletions product_abc_classification/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
==========================
Product Abc Classification
==========================

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

.. |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/licence-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--attribute-lightgray.png?logo=github
:target: https://github.com/OCA/product-attribute/tree/17.0/product_abc_classification
: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-17-0/product-attribute-17-0-product_abc_classification
: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=17.0
:alt: Try me on Runboat

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

This modules provides the bases to build ABC analysis (or ABC
classification) addons. These classification are used by inventory
management teams to help identify the most important products in their
portfolio and ensure they prioritize managing them above those less
valuable.

Managers will create a profile with several levels (percentages) and
then the profiled products will automatically get a corresponding level
using the ABC classification.

The addon *product_abc_classification_sale_stock* defines a computation
profile based on the number of sale order line delivered by product.

**Table of contents**

.. contents::
:local:

Usage
=====

To use this module, you need to:

#. Go to Sales or Inventory menu, then to Configuration/Products/ABC
Classification Profile and create a profile with levels, knowing that
the sum of all levels in the profile should sum 100 and all the levels
should be different.

#. Later you should go to product categories or product variants, and
assign them a profile. Then the cron classification will proceed to
assign to these products one of the profile's levels.

NOTE: If you profile (or unprofile) a product category, then all its
child categories and products will be profiled (or unprofiled).

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/product-attribute/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-attribute/issues/new?body=module:%20product_abc_classification%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
-------

* ACSONE SA/NV
* ForgeFlow

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

- Miquel Raïch <miquel.raich@eficent.com>
- Lindsay Marion <lindsay.marion@acsone.eu>
- Laurent Mignon <laurent.mignon@acsone.eu>
- Denis Roussel <denis.roussel@acsone.eu>

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 <https://github.com/OCA/product-attribute/tree/17.0/product_abc_classification>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions product_abc_classification/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
23 changes: 23 additions & 0 deletions product_abc_classification/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Copyright 2020 ForgeFlow
# Copyright 2021 ACSONE SA/NV
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Product Abc Classification",
"summary": """
ABC classification for sales and warehouse management""",
"version": "17.0.1.0.0",
"license": "AGPL-3",
"author": "ACSONE SA/NV, ForgeFlow, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/product-attribute",
"depends": ["product", "stock"],
"data": [
"views/abc_classification_product_level.xml",
"views/abc_classification_profile.xml",
"views/product_template.xml",
"views/product_product.xml",
"views/product_category.xml",
"security/ir.model.access.csv",
"data/ir_cron.xml",
],
}
14 changes: 14 additions & 0 deletions product_abc_classification/data/ir_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record id="ir_cron_product_abc_classification" model="ir.cron">
<field name="name">Perform the product ABC Classification</field>
<field name="user_id" ref="base.user_root" />
<field name="interval_number">1</field>
<field name="interval_type">months</field>
<field name="numbercall">-1</field>
<field name="doall" eval="False" />
<field name="model_id" ref="model_abc_classification_profile" />
<field name="code">model._cron_compute_abc_classification()</field>
<field name="state">code</field>
</record>
</odoo>
Loading