| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/18.0/product_standard_margin |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, Cyril VINH-TUNG, oca-ci, Bhavesh Heliconia |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:16 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | Add 2 fields on the product form that compute the standard (or theorical) margin and markup based on the current values of sale and standard price present in the product form. We take care of taxe included or excluded. It will just compute it as follow: Margin : (Sale Price without tax - Standard Price) / Sale Price without tax Markup : (Sale Price without tax - Standard Price) / Standard Price  **Note:** As this module will base his simple computation on sale and cost prices, it suppose you have them both in the same currency (the price type must of the same currency for both of them). Remember this is the default OpenERP configuration (price type of all product price fields are set as the same as the company currency). We don't take care of it cause otherwise we should have added a dependency on sale module. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | field | Inherits product.product_normal_form_view | |
view_product_product_form_easy |
product.product | field | Inherits product.product_variant_easy_edit_view | |
view_product_product_tree_margin |
product.product | field | Inherits product.product_product_tree_view | |
view_product_template_form |
product.template | xpath | Inherits product.product_template_only_form_view | |
view_product_template_tree_margin |
product.template | xpath | Inherits product.product_template_tree_view |
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
store=True
string='Markup (%)'
No public methods.
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
string='Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
string='Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
string='Markup (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/16.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0.3 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Sylvain LE GAL, Weblate, OCA-git-bot, oca-ci, Álvaro, Anh Vu, Hugo |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:54 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | field | Inherits product.product_normal_form_view | |
view_product_product_form_easy |
product.product | field | Inherits product.product_variant_easy_edit_view | |
view_product_product_tree_margin |
product.product | field | Inherits product.product_product_tree_view | |
view_product_template_form |
product.template | xpath | Inherits product.product_template_only_form_view | |
view_product_template_tree_margin |
product.template | xpath | Inherits product.product_template_tree_view |
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
store=True
string='Markup (%)'
No public methods.
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
string='Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
string='Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
string='Markup (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/15.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0.1 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Denis Leemann, Weblate, OCA-git-bot, oca-ci, Nilesh Sheliya |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:46:39 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | field | Inherits product.product_normal_form_view | |
view_product_product_form_easy |
product.product | field | Inherits product.product_variant_easy_edit_view | |
view_product_product_tree_margin |
product.product | field | Inherits product.product_product_tree_view | |
view_product_template_form |
product.template | xpath | Inherits product.product_template_only_form_view | |
view_product_template_tree_margin |
product.template | xpath | Inherits product.product_template_tree_view |
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Theorical Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
store=True
string='Theorical Markup (%)'
No public methods.
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
string='Theorical Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
string='Theorical Markup (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/14.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0.1 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Daniel Reis, Weblate, OCA-git-bot, Cyril VINH-TUNG, oca-ci |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:41:07 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | field | Inherits product.product_normal_form_view | |
view_product_product_form_easy |
product.product | field | Inherits product.product_variant_easy_edit_view | |
view_product_product_tree_margin |
product.product | field | Inherits product.product_product_tree_view | |
view_product_template_form |
product.template | xpath | Inherits product.product_template_only_form_view | |
view_product_template_tree_margin |
product.template | xpath | Inherits product.product_template_tree_view |
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Theorical Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
store=True
string='Theorical Markup (%)'
No public methods.
list_price_vat_excl
Float
compute='_compute_margin'
digits='Product Price'
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits='Product Price'
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Margin rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
string='Theorical Margin (%)'
standard_markup_rate
Float
compute='_compute_margin'
digits='Product Price'
help='Markup rate is [ Theorical Margin / cost price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no cost price set, will display 999.0'
string='Theorical Markup (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/12.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0.1 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Sylvain LE GAL, OCA Transbot, oca-travis, Weblate, OCA-git-bot |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:22 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - decimal_precision - bus - web_tour - uom - analytic - portal - http_routing - digest |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | field | Inherits product.product_normal_form_view | |
view_product_product_form_easy |
product.product | field | Inherits product.product_variant_easy_edit_view | |
view_product_template_form |
product.template | xpath | Inherits product.product_template_only_form_view |
list_price_vat_excl
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
help='Markup rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Theorical Margin (%)'
No public methods.
list_price_vat_excl
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
string='Theorical Margin'
standard_margin_rate
Float
compute='_compute_margin'
digits=dp.get_precision('Product Price')
help='Margin rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
string='Theorical Margin (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/10.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Pedro M. Baeza, Stéphane Bidoul (ACSONE), Francisco Fernández @PlanetaTIC, oca-travis, OCA-git-bot, Marc Poch @PlanetaTIC |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/margin-analysis |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:20:00 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/margin-analysis: - product_replenishment_cost odoo/odoo: - product - base - decimal_precision - base_setup - web_kanban - web - bus - web_tour - report - sales_team - account - analytic - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | Add a field on the product form that compute the standard (or theorical) margin based on the current values of sale and replenishment cost present in the product form. We take care of taxe included or excluded. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view |
product.template | xpath | Inherits product.product_template_only_form_view | |
view_product_product_form |
product.product | xpath | Inherits product.product_normal_form_view |
list_price_vat_excl
Float
compute='_get_margin'
digits=dp.get_precision('Product Price')
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute='_get_margin'
digits=dp.get_precision('Product Price')
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Margin'
standard_margin_rate
Float
compute='_get_margin'
digits=dp.get_precision('Product Margin Precision')
help='Markup rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude. If no sale price set, will display 999.0'
store=True
string='Margin (%)'
No public methods.
standard_margin
Float
compute='_compute_standard_margin'
digits=dp.get_precision('Product Price')
help='Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Margin'
standard_margin_rate
Float
compute='_compute_standard_margin'
digits=dp.get_precision('Product Price')
help='Markup rate is [ Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude. If no sale price set, will display 999.0'
store=True
string='Margin (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/9.0/product_standard_margin |
| VERSION | |
| VERSION | 2.0.0 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Pedro M. Baeza, Stéphane Bidoul (ACSONE) |
| WEBSITE | |
| WEBSITE | http://www.camptocamp.com/ |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:15:23 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/margin-analysis: - product_replenishment_cost odoo/odoo: - product - base - decimal_precision - base_setup - web_kanban - web - bus - report - account - analytic - web_tip - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | xpath | Inherits product.product_normal_form_view |
list_price_vat_excl
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Price')
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Price')
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Theorical Margin'
standard_margin_rate
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Margin Precision')
help='Markup rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Theorical Margin (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/8.0/product_standard_margin |
| VERSION | |
| VERSION | 2.0.0 |
| CATEGORY | |
| CATEGORY | Product |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp, GRAP |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp, GRAP |
| COMMITTERS | |
| COMMITTERS | Stéphane Bidoul, Alexandre Fayolle, Sylvain LE GAL, Stéphane Bidoul (ACSONE), OCA-git-bot |
| WEBSITE | |
| WEBSITE | http://www.camptocamp.com/ |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:11:25 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/margin-analysis: - product_replenishment_cost odoo/odoo: - product - base - decimal_precision - base_setup - web_kanban - web - report - account - analytic - board - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_product_form |
product.product | xpath | Inherits product.product_normal_form_view |
list_price_vat_excl
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Price')
store=True
string='Sale Price VAT Excluded'
standard_margin
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Price')
help='Theorical Margin is [ sale price (Wo Tax) - cost price ] of the product form (not based on historical values). Take care of tax include and exclude. If no sale price, the margin will be negativ.'
store=True
string='Theorical Margin'
standard_margin_rate
Float
compute=_get_margin
digits_compute=dp.get_precision('Product Margin Precision')
help='Markup rate is [ Theorical Margin / sale price (Wo Tax) ] of the product form (not based on historical values).Take care of tax include and exclude.. If no sale price set, will display 999.0'
store=True
string='Theorical Margin (%)'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/7.0/product_standard_margin |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales Management |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Camptocamp |
| COMMITTERS | |
| COMMITTERS | Yannick Vaucher, Alexandre Fayolle, Joel Grand-Guillaume, Sylvain LE GAL |
| WEBSITE | |
| WEBSITE | http://www.camptocamp.com/ |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:07:15 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/margin-analysis: - product_get_cost_field odoo/odoo: - product - base - process - web - decimal_precision - base_setup - web_kanban - account - analytic - board - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | Add a field on the product form that compute the standard (or theorical) margin based on the current values of sale and cost price present in the product form. We take care of taxe included or excluded. It will just compute it as follow: (Sale Price without tax - Cost Price) / Sale Price without tax Remember that this module can be used in conjonction with product_cost_incl_bom to have the cost price computed from the BOM when a product has one. WARNING: 1) As this module will base his simple computation on sale and cost prices, it suppose you have them both in the same currency (the price type must of the same currency for both of them). Remember this is the default OpenERP configuration (price type of all product price fields are set as the same as the company currency). We don't take care of it cause otherwise we should have added a dependency on sale module. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
sale_markup_product_form |
product.markup.view.form | product.product | xpath | Inherits product.product_normal_form_view |
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/margin-analysis |
| GIT | |
| GIT | https://github.com/OCA/margin-analysis.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/margin-analysis/tree/6.1/product_standard_margin |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Sales Management |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | Yes |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Camptocamp |
| COMMITTERS | |
| COMMITTERS | Alexandre Fayolle, Joël Grand-Guillaume, unknown, Alexandre Fayolle @ camptocamp, Guewen Baconnier @ Camptocamp, Endian Solutions |
| WEBSITE | |
| WEBSITE | http://www.camptocamp.com/ |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:04:06 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/margin-analysis: - product_get_cost_field odoo/odoo: - product - base - process - decimal_precision - account - base_setup - analytic - board - edi - email_template - base_tools |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | Add a field on the product form that compute the standard (or theorical) margin based on the current values of sale and cost price present in the product form. We take care of taxe included or excluded. It will just compute it as follow : (Sale Price without tax - Cost Price) / Sale Price without tax Remember that this module can be used in conjonction with product_cost_incl_bom to have the cost price computed from the BOM when a product has one. WARNING: 1) As this module will base his simple computation on sale and cost prices, it suppose you have them both in the same currency (the price type must of the same currency for both of them). Remember this is the default OpenERP configuration (price type of all product price fields are set as the same as the company currency). We don't take care of it cause otherwise we should have added a dependency on sale module. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
sale_markup_product_form |
product.markup.view.form | product.product | group | Inherits product.product_normal_form_view |
No new fields.
Public methods (0)No public methods.
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/margin-analysis |
| PULL REQUEST | |
| PULL REQUEST | [17.0] [MIG] product_standard_margin: Migration to 17.0 (#256) |
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/margin-analysis |
| PULL REQUEST | |
| PULL REQUEST | [MIG] product_standard_margin: Migration to 19.0 (#261) |