| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/12.0/stock_inventory_revaluation |
| VERSION | |
| VERSION | 1.0.2 |
| CATEGORY | |
| CATEGORY | Warehouse |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L., Matt Taylor |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L., Matt Taylor |
| COMMITTERS | |
| COMMITTERS | Denis Roussel, OCA Transbot, oca-travis, Weblate, OCA-git-bot, Matt Taylor, Pascal GOUHIER |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/stock-logistics-warehouse |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:16 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - stock_account - stock - product - base - decimal_precision - base_setup - web - bus - web_tour - uom - barcodes - account - 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 |
|---|---|---|---|---|
stock_inventory_revaluation_get_move_form |
stock.inventory.revaluation.get.moves.form | stock.inventory.revaluation.get.moves | form | New |
stock_inventory_revaluation_mass_post_form |
stock.inventory.revaluation.mass.post.form | stock.inventory.revaluation.mass.post | form | New |
view_category_property_form |
product.category.stock.property.form.inherit | product.category | group | Inherits stock_account.view_category_property_form |
view_move_line_form |
account.move.line.form | account.move.line | field | Inherits account.view_move_line_form |
view_stock_inventory_revaluation_form |
stock.inventory.revaluation.form | stock.inventory.revaluation | form | New |
view_stock_inventory_revaluation_move_form |
stock.inventory.revaluation.move.form | stock.inventory.revaluation.move | form | New |
view_stock_inventory_revaluation_move_tree |
stock.inventory.revaluation.move.tree | stock.inventory.revaluation.move | tree | New |
view_stock_inventory_revaluation_search |
stock.inventory.revaluation.search | stock.inventory.revaluation | search | New |
view_stock_inventory_revaluation_tmpl_form |
stock.inventory.revaluation.tmpl.form | stock.inventory.revaluation.template | form | New |
view_stock_inventory_revaluation_tmpl_tree |
stock.inventory.revaluation.tmpl.tree | stock.inventory.revaluation.template | tree | New |
view_stock_inventory_revaluation_tree |
stock.inventory.revaluation.tree | stock.inventory.revaluation | tree | New |
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
string='Stock Inventory Revaluation'
unlink(self)
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
related='move_id.stock_inventory_revaluation_id'
store=True
string='Stock Inventory Revaluation'
unlink(self)
property_inventory_revaluation_decrease_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Decrease Account is used when the inventory value is decreased.'
string='Valuation Decrease Account'
args: 'account.account'
property_inventory_revaluation_increase_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Increase Account is used when the inventory value is increased due to the revaluation.'
string='Valuation Increase Account'
args: 'account.account'
No public methods.
No new fields.
Public methods (1)do_change_standard_price(self, new_price, account_id)
No new fields.
Public methods (1)default_get(self, fields)
account_move_ids
One2many → account.move
comodel_name='account.move'
inverse_name='stock_inventory_revaluation_id'
readonly=True
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Company'
cost_method
Char
related='product_id.cost_method'
string='Cost Method'
current_cost
Float
help='The current cost of the product.'
related='product_id.standard_price'
string='Current cost'
current_value
Float
help='Total current value of product in stock'
related='product_id.stock_value'
string='Current value'
decrease_account_id
Many2one → account.account
comodel_name='account.account'
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Decrease Account is used when the inventory value is decreased.'
readonly=True
states={'draft': [('readonly', False)]}
string='Decrease Account'
document_date
Datetime
readonly=True
string='Applied date'
increase_account_id
Many2one → account.account
comodel_name='account.account'
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Increase Account is used when the inventory value is increased due to the revaluation.'
readonly=True
states={'draft': [('readonly', False)]}
string='Increase Account'
journal_id
Many2one → account.journal
comodel_name='account.journal'
help='Select a journal for the accounting entry. Leave blank to usethe default journal for the product.'
readonly=True
states={'draft': [('readonly', False)]}
string='Journal'
name
Char
copy=False
default='/'
help='Reference for the journal entry'
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Reference'
new_cost
Float
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the product. Relevant only when the selected revaluation type is Price Change.'
readonly=True
states={'draft': [('readonly', False)]}
string='New cost'
new_value
Float
digits=dp.get_precision('Account')
help='New total value for the available inventory. Relevant only if the selected revaluation type is Total Value Change. Actual resulting value may be slightly different, based on per-unit price precision and rounding.'
readonly=True
states={'draft': [('readonly', False)]}
string='New value'
old_cost
Float
digits=dp.get_precision('Product Price')
help='Displays the previous cost of the product'
readonly=True
string='Old cost'
old_value
Float
digits=dp.get_precision('Account')
help='Total current value of the product, prior to revaluation'
readonly=True
string='Old value'
post_date
Date
help='Journal Entry posting date'
readonly=True
states={'draft': [('readonly', False)]}
string='Posting Date'
product_id
Many2one → product.product
comodel_name='product.product'
domain=[('type', '=', 'product')]
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Product'
product_template_id
Many2one → product.template
comodel_name='product.template'
related='product_id.product_tmpl_id'
store=True
string='Product Template'
qty_available
Float
digits=dp.get_precision('Product Unit of Measure')
related='product_id.qty_available'
string='Quantity On Hand'
remarks
Text
help='Displays by default Inventory Revaluation. This text is copied to the journal entry.'
readonly=True
states={'draft': [('readonly', False)]}
string='Remarks'
reval_move_ids
One2many → stock.inventory.revaluation.move
comodel_name='stock.inventory.revaluation.move'
copy=False
inverse_name='revaluation_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Revaluation Moves'
reval_template_id
Many2one → stock.inventory.revaluation.template
comodel_name='stock.inventory.revaluation.template'
help='Choose a template to automatically apply revaluation options.'
readonly=True
states={'draft': [('readonly', False)]}
string='Template'
revaluation_type
Selection
default='inventory_value'
help="'Unit Price Change': Change the per-unit price of the product. Inventory value is recalculated according to the new price and available quantity.\n'Total Value Change': Change the total value of the inventory. Unit price is recalculated according to the new total value and available quantity. Actual resulting value may be slightly different, based on per-unit price precision and rounding."
readonly=True
required=True
selection=[('price_change', 'Unit Price Change'), ('inventory_value', 'Total Value Change')]
states={'draft': [('readonly', False)]}
string='Revaluation Type'
state
Selection
default='draft'
readonly=True
required=True
selection=[('draft', 'Draft'), ('posted', 'Posted'), ('cancel', 'Cancelled')]
string='Status'
stock_valuation_account_id
Many2one → account.account
comodel_name='account.account'
help='To be set automatically when posting the revaluation'
readonly=True
string='Stock Valuation Account'
uom_id
Many2one → uom.uom
comodel_name='uom.uom'
related='product_template_id.uom_id'
string='UoM'
button_cancel(self)
button_draft(self)
button_post(self)
create(self, values)
post(self)
date_from
Date
date_to
Date
location_id
Many2one → stock.location
comodel_name='stock.location'
domain=[('usage', '=', 'internal')]
string='Location'
lot_id
Many2one → stock.production.lot
comodel_name='stock.production.lot'
domain="[('product_id', '=', product_id)]"
string='Lot/Serial'
product_id
Many2one → product.product
comodel_name='product.product'
related='revaluation_id.product_id'
revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
required=True
string='Revaluation'
default_get(self, fields)
process(self)
No new fields.
Public methods (1)process(self)
company_id
Many2one → res.company
comodel_name='res.company'
related='revaluation_id.company_id'
string='Company'
current_value
Float
related='move_id.remaining_value'
string='Current Value'
in_date
Datetime
related='move_id.date'
string='Incoming Date'
location_id
Many2one → stock.location
comodel_name='stock.location'
related='move_id.location_dest_id'
string='Location'
move_id
Many2one → stock.move
comodel_name='stock.move'
readonly=True
required=True
string='Stock Move'
name
Char
compute='_compute_name'
readonly=True
store=True
string='Name'
new_value
Float
copy=False
digits=dp.get_precision('Product Price')
help='Enter the new value you wish to assign to the Move. Relevant only when the selected revaluation type is Total Value Change.'
string='New Value'
old_qty
Float
help="We store the remaining quantity, at the time of posting the revaluation, in case the revaluation gets canceled. If the remaining quantity at the time of cancellation is different, we can't allow the cancellation."
readonly=True
string='Old Quantity'
old_value
Float
digits=dp.get_precision('Product Price')
help='Shows the previous value of the move'
readonly=True
string='Previous Value'
product_id
Many2one → product.product
comodel_name='product.product'
related='move_id.product_id'
string='Product'
qty
Float
related='move_id.remaining_qty'
string='Quantity'
revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
readonly=True
required=True
string='Revaluation'
state
Selection
related='revaluation_id.state'
create_account_moves(self)
get_value_change(self)
write_new_value(self)
write_old_value(self)
decrease_account_id
Many2one → account.account
comodel_name='account.account'
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Decrease Account is used when the inventory value is decreased.'
string='Decrease Account'
increase_account_id
Many2one → account.account
comodel_name='account.account'
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Increase Account is used when the inventory value is increased due to the revaluation.'
string='Increase Account'
journal_id
Many2one → account.journal
comodel_name='account.journal'
help='Select a journal for the accounting entry. Leave blank to usethe default journal for the product.'
string='Journal'
name
Char
required=True
string='Name'
remarks
Text
help='This text is copied to the notes on the journal entry.'
required=True
string='Remarks'
revaluation_type
Selection
default='inventory_value'
help="'Unit Price Change': Change the per-unit price of the product. Inventory value is recalculated according to the new price and available quantity.\n'Total Value Change': Change the total value of the inventory. Unit price is recalculated according to the new total value and available quantity."
required=True
selection=[('price_change', 'Unit Price Change'), ('inventory_value', 'Total Value Change')]
string='Revaluation Type'
copy(self, default=None)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/10.0/stock_inventory_revaluation |
| VERSION | |
| VERSION | 1.1.1 |
| CATEGORY | |
| CATEGORY | Warehouse |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L. |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L. |
| COMMITTERS | |
| COMMITTERS | mreficent, Denis Roussel, Lois Rilo, OCA Transbot, oca-travis, Weblate, OCA-git-bot |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/stock-logistics-warehouse |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:19:55 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - bus - web_tour - report - procurement - barcodes - web_planner - account - analytic |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
stock_inventory_revaluation_get_quant_form |
stock.inventory.revaluation.get.quant.form | stock.inventory.revaluation.get.quant | form | New |
stock_inventory_revaluation_mass_post_form |
stock.inventory.revaluation.mass.post.form | stock.inventory.revaluation.mass.post | form | New |
view_category_property_form |
product.category.stock.property.form.inherit | product.category | group | Inherits stock_account.view_category_property_form |
view_move_line_form |
account.move.line.form | account.move.line | field | Inherits account.view_move_line_form |
view_stock_inventory_revaluation_form |
stock.inventory.revaluation.form | stock.inventory.revaluation | form | New |
view_stock_inventory_revaluation_quant_form |
stock.inventory.revaluation.quant.form | stock.inventory.revaluation.quant | form | New |
view_stock_inventory_revaluation_quant_tree |
stock.inventory.revaluation.quant.tree | stock.inventory.revaluation.quant | tree | New |
view_stock_inventory_revaluation_search |
stock.inventory.revaluation.search | stock.inventory.revaluation | search | New |
view_stock_inventory_revaluation_tree |
stock.inventory.revaluation.tree | stock.inventory.revaluation | tree | New |
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
string='Stock Inventory Revaluation'
unlink(self)
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
readonly=True
related='move_id.stock_inventory_revaluation_id'
store=True
string='Stock Inventory Revaluation'
unlink(self)
property_inventory_revaluation_decrease_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Decrease Account is used when the inventory value is decreased.'
string='Valuation Decrease Account'
args: 'account.account'
property_inventory_revaluation_increase_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Increase Account is used when the inventory value is increased due to the revaluation.'
string='Valuation Increase Account'
args: 'account.account'
No public methods.
No new fields.
Public methods (1)do_change_standard_price(self, new_price, account_id)
No new fields.
Public methods (1)default_get(self, fields)
account_move_ids
One2many → account.move
comodel_name='account.move'
inverse_name='stock_inventory_revaluation_id'
readonly=True
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Company'
cost_method
Char
readonly=True
related='product_id.cost_method'
string='Cost Method'
current_cost
Float
compute='_compute_calc_current_cost'
digits=dp.get_precision('Product Price')
help='Displays the current cost of the product.'
readonly=True
args: 'Current cost'
current_value
Float
compute='_compute_calc_product_value'
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Current value'
decrease_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Decrease Account is used when the inventory value is decreased.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.account', 'Decrease Account'
document_date
Date
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Creation date'
increase_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Increase Account is used when the inventory value is increased due to the revaluation.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.account', 'Increase Account'
journal_id
Many2one → account.journal
default=_default_journal
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.journal', 'Journal'
name
Char
copy=False
default='/'
help='Reference for the journal entry'
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Reference'
new_cost
Float
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the product. Relevant only when the selected revaluation type is Price Change.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'New cost'
new_value
Float
digits=dp.get_precision('Account')
help='Enter the amount you wish to credit or debit from the current inventory value of the item. Enter credit as a negative value.Relevant only if the selected revaluation type is Inventory Credit/Debit.'
args: 'Credit/Debit amount'
old_cost
Float
digits=dp.get_precision('Product Price')
help='Displays the previous cost of the product.'
readonly=True
args: 'Old cost'
old_value
Float
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Old value'
post_date
Datetime
help='Date of actual processing'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Posting Date'
product_id
Many2one → product.product
domain=[('type', '=', 'product')]
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'product.product', 'Product'
product_template_id
Many2one → product.template
readonly=True
related='product_id.product_tmpl_id'
store=True
args: 'product.template', 'Product Template'
qty_available
Float
compute='_compute_get_product_qty'
digits=dp.get_precision('Product Unit of Measure')
args: 'Quantity On Hand'
remarks
Text
default='Inventory Revaluation'
help='Displays by default Inventory Revaluation. This text is copied to the journal entry.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Remarks'
reval_quant_ids
One2many → stock.inventory.revaluation.quant
string='Revaluation line quants'
args: 'stock.inventory.revaluation.quant', 'revaluation_id'
revaluation_type
Selection
default='price_change'
help="'Price Change': You can re-valuate inventory values by Changing the price for a specific product. The inventory price is changed and inventory value is recalculated according to the new price.\n 'Inventory Debit/Credit': Changing the value of the inventory. The quantity of inventory remains unchanged, resulting in a change in the price"
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Revaluation Type'
args: [('price_change', 'Price Change'), ('inventory_value', 'Inventory Debit/Credit')]
state
Selection
default='draft'
readonly=True
required=True
selection=[('draft', 'Draft'), ('posted', 'Posted'), ('cancel', 'Cancelled')]
states={'draft': [('readonly', False)]}
string='Status'
uom_id
Many2one → product.uom
readonly=True
related='product_template_id.uom_id'
args: 'product.uom', 'UoM'
user_id
Many2one → res.users
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
args: 'res.users', 'Created by'
button_cancel(self)
button_draft(self)
button_post(self)
create(self, values)
post(self)
date_from
Date
date_to
Date
process(self)
No new fields.
Public methods (1)process(self)
company_id
Many2one → res.company
comodel_name='res.company'
readonly=True
related='revaluation_id.company_id'
string='Company'
current_cost
Float
readonly=True
related='quant_id.cost'
args: 'Current Cost'
in_date
Datetime
readonly=True
related='quant_id.in_date'
args: 'Incoming Date'
location_id
Many2one → stock.location
readonly=True
related='quant_id.location_id'
args: 'stock.location', 'Location'
new_cost
Float
copy=False
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the Quant. Relevant only when the selected revaluation type is Price Change.'
args: 'New Cost'
old_cost
Float
help='Shows the previous cost of the quant'
readonly=True
args: 'Previous cost'
product_id
Many2one → product.product
readonly=True
related='quant_id.product_id'
args: 'product.product', 'Product'
qty
Float
readonly=True
related='quant_id.qty'
args: 'Quantity'
quant_id
Many2one → stock.quant
domain=[('product_id.type', '=', 'product')]
ondelete='cascade'
readonly=True
required=True
args: 'stock.quant', 'Quant'
revaluation_id
Many2one → stock.inventory.revaluation
readonly=True
required=True
args: 'stock.inventory.revaluation', 'Revaluation'
get_total_value(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/9.0/stock_inventory_revaluation |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Warehouse |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L. |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Eficent Business and IT Consulting Services S.L. |
| COMMITTERS | |
| COMMITTERS | Jordi Ballester Alomar, OCA Transbot, oca-travis, Weblate |
| WEBSITE | |
| WEBSITE | http://www.eficent.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:15:20 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - bus - report - procurement - barcodes - web_planner - account - analytic - web_tip |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
stock_inventory_revaluation_get_quant_form |
stock.inventory.revaluation.get.quant.form | stock.inventory.revaluation.get.quant | form | New |
stock_inventory_revaluation_mass_post_form |
stock.inventory.revaluation.mass.post.form | stock.inventory.revaluation.mass.post | form | New |
view_category_property_form |
product.category.stock.property.form.inherit | product.category | group | Inherits stock_account.view_category_property_form |
view_move_line_form |
account.move.line.form | account.move.line | field | Inherits account.view_move_line_form |
view_stock_inventory_revaluation_form |
stock.inventory.revaluation.form | stock.inventory.revaluation | form | New |
view_stock_inventory_revaluation_quant_form |
stock.inventory.revaluation.quant.form | stock.inventory.revaluation.quant | form | New |
view_stock_inventory_revaluation_quant_tree |
stock.inventory.revaluation.quant.tree | stock.inventory.revaluation.quant | tree | New |
view_stock_inventory_revaluation_search |
stock.inventory.revaluation.search | stock.inventory.revaluation | search | New |
view_stock_inventory_revaluation_tree |
stock.inventory.revaluation.tree | stock.inventory.revaluation | tree | New |
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
string='Stock Inventory Revaluation'
unlink(self)
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
related='move_id.stock_inventory_revaluation_id'
store=True
string='Stock Inventory Revaluation'
unlink(self)
property_inventory_revaluation_decrease_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Decrease Account is used when the inventory value is decreased.'
string='Valuation Decrease Account'
args: 'account.account'
property_inventory_revaluation_increase_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Increase Account is used when the inventory value is increased due to the revaluation.'
string='Valuation Increase Account'
args: 'account.account'
No public methods.
No new fields.
Public methods (1)do_change_standard_price(self, new_price)
account_move_ids
One2many → account.move
comodel_name='account.move'
inverse_name='stock_inventory_revaluation_id'
readonly=True
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Company'
cost_method
Char
readonly=True
related='product_id.cost_method'
string='Cost Method'
current_cost
Float
compute='_compute_calc_current_cost'
digits=dp.get_precision('Product Price')
help='Displays the current cost of the product.'
readonly=True
args: 'Current cost'
current_value
Float
compute='_compute_calc_product_value'
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Current value'
decrease_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Decrease Account is used when the inventory value is decreased.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.account', 'Decrease Account'
document_date
Date
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Creation date'
increase_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Increase Account is used when the inventory value is increased due to the revaluation.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.account', 'Increase Account'
journal_id
Many2one → account.journal
default=_default_journal
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.journal', 'Journal'
name
Char
copy=False
default='/'
help='Reference for the journal entry'
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Reference'
new_cost
Float
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the product. Relevant only when the selected revaluation type is Price Change.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'New cost'
new_value
Float
digits=dp.get_precision('Account')
help='Enter the amount you wish to credit or debit from the current inventory value of the item. Enter credit as a negative value.Relevant only if the selected revaluation type is Inventory Credit/Debit.'
args: 'Credit/Debit amount'
old_cost
Float
digits=dp.get_precision('Product Price')
help='Displays the previous cost of the product.'
readonly=True
args: 'Old cost'
old_value
Float
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Old value'
post_date
Datetime
help='Date of actual processing'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Posting Date'
product_id
Many2one → product.product
domain=[('type', '=', 'product')]
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'product.product', 'Product'
product_template_id
Many2one → product.template
related='product_id.product_tmpl_id'
store=True
args: 'product.template', 'Product Template'
qty_available
Float
compute='_compute_get_product_qty'
digits_compute=dp.get_precision('Product Unit of Measure')
args: 'Quantity On Hand'
remarks
Text
default='Inventory Revaluation'
help='Displays by default Inventory Revaluation. This text is copied to the journal entry.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Remarks'
reval_quant_ids
One2many → stock.inventory.revaluation.quant
string='Revaluation line quants'
args: 'stock.inventory.revaluation.quant', 'revaluation_id'
revaluation_type
Selection
default='price_change'
help="'Price Change': You can re-valuate inventory values by Changing the price for a specific product. The inventory price is changed and inventory value is recalculated according to the new price.\n 'Inventory Debit/Credit': Changing the value of the inventory. The quantity of inventory remains unchanged, resulting in a change in the price"
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Revaluation Type'
args: [('price_change', 'Price Change'), ('inventory_value', 'Inventory Debit/Credit')]
state
Selection
default='draft'
readonly=True
required=True
selection=[('draft', 'Draft'), ('posted', 'Posted'), ('cancel', 'Cancelled')]
states={'draft': [('readonly', False)]}
string='Status'
uom_id
Many2one → product.uom
readonly=True
related='product_template_id.uom_id'
args: 'product.uom', 'UoM'
user_id
Many2one → res.users
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
args: 'res.users', 'Created by'
button_cancel(self)
button_draft(self)
button_post(self)
create(self, values)
post(self)
date_from
Date
date_to
Date
process(self)
No new fields.
Public methods (1)process(self)
company_id
Many2one → res.company
comodel_name='res.company'
readonly=True
related='revaluation_id.company_id'
string='Company'
current_cost
Float
readonly=True
related='quant_id.cost'
args: 'Current Cost'
in_date
Datetime
readonly=True
related='quant_id.in_date'
args: 'Incoming Date'
location_id
Many2one → stock.location
readonly=True
related='quant_id.location_id'
args: 'stock.location', 'Location'
new_cost
Float
copy=False
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the Quant. Relevant only when the selected revaluation type is Price Change.'
args: 'New Cost'
old_cost
Float
help='Shows the previous cost of the quant'
readonly=True
args: 'Previous cost'
product_id
Many2one → product.product
readonly=True
related='quant_id.product_id'
args: 'product.product', 'Product'
qty
Float
readonly=True
related='quant_id.qty'
args: 'Quantity'
quant_id
Many2one → stock.quant
domain=[('product_id.type', '=', 'product')]
ondelete='cascade'
readonly=True
required=True
args: 'stock.quant', 'Quant'
revaluation_id
Many2one → stock.inventory.revaluation
readonly=True
required=True
args: 'stock.inventory.revaluation', 'Revaluation'
get_total_value(self)
write_new_cost(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/8.0/stock_inventory_revaluation |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Warehouse |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Eficent Business and IT Consulting Services S.L. |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Eficent Business and IT Consulting Services S.L. |
| COMMITTERS | |
| COMMITTERS | Alexandre Fayolle, GitHub, OCA Transbot, jbeficent, oca-travis, Weblate |
| WEBSITE | |
| WEBSITE | http://www.eficent.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:11:21 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - report - procurement - board - web_kanban_gauge - web_kanban_sparkline - account - analytic - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
stock_inventory_revaluation_get_quant_form |
stock.inventory.revaluation.get.quant.form | stock.inventory.revaluation.get.quant | form | New |
stock_inventory_revaluation_mass_post_form |
stock.inventory.revaluation.mass.post.form | stock.inventory.revaluation.mass.post | form | New |
view_category_property_form |
product.category.stock.property.form.inherit | product.category | group | Inherits stock_account.view_category_property_form |
view_move_line_form |
account.move.line.form | account.move.line | field | Inherits account.view_move_line_form |
view_stock_inventory_revaluation_form |
stock.inventory.revaluation.form | stock.inventory.revaluation | form | New |
view_stock_inventory_revaluation_quant_form |
stock.inventory.revaluation.quant.form | stock.inventory.revaluation.quant | form | New |
view_stock_inventory_revaluation_quant_tree |
stock.inventory.revaluation.quant.tree | stock.inventory.revaluation.quant | tree | New |
view_stock_inventory_revaluation_search |
stock.inventory.revaluation.search | stock.inventory.revaluation | search | New |
view_stock_inventory_revaluation_tree |
stock.inventory.revaluation.tree | stock.inventory.revaluation | tree | New |
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
string='Stock Inventory Revaluation'
unlink(self)
stock_inventory_revaluation_id
Many2one → stock.inventory.revaluation
comodel_name='stock.inventory.revaluation'
copy=False
ondelete='restrict'
related='move_id.stock_inventory_revaluation_id'
store=True
string='Stock Inventory Revaluation'
unlink(self, check=True)
property_inventory_revaluation_decrease_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Decrease Account is used when the inventory value is decreased.'
string='Valuation Decrease Account'
args: 'account.account'
property_inventory_revaluation_increase_account_categ
Many2one → account.account
company_dependent=True
help='Define the Financial Accounts to be used as the balancing account in the transaction created by the revaluation. The Valuation Increase Account is used when the inventory value is increased due to the revaluation.'
string='Valuation Increase Account'
args: 'account.account'
No public methods.
No new fields.
Public methods (1)do_change_standard_price(self, new_price)
account_move_ids
One2many → account.move
comodel_name='account.move'
inverse_name='stock_inventory_revaluation_id'
readonly=True
company_id
Many2one → res.company
comodel_name='res.company'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Company'
cost_method
Selection
readonly=True
related='product_template_id.cost_method'
string='Cost Method'
current_cost
Float
compute='_compute_current_cost'
digits=dp.get_precision('Product Price')
help='Displays the current cost of the product.'
readonly=True
args: 'Current cost'
current_value
Float
compute='_compute_product_template_value'
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Current value'
decrease_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Decrease Account is used when the inventory value is decreased.'
args: 'account.account', 'Decrease Account'
document_date
Date
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Creation date'
increase_account_id
Many2one → account.account
help='Define the G/L accounts to be used as the balancing account in the transaction created by the revaluation. The Increase Account is used when the inventory value is increased due to the revaluation.'
args: 'account.account', 'Increase Account'
journal_id
Many2one → account.journal
default=_default_journal
readonly=True
states={'draft': [('readonly', False)]}
args: 'account.journal', 'Journal'
name
Char
copy=False
default='/'
help='Reference for the journal entry'
readonly=True
required=True
states={'draft': [('readonly', False)]}
args: 'Reference'
new_cost
Float
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the product. Relevant only when the selected revaluation type is Price Change.'
args: 'New cost'
new_value
Float
digits=dp.get_precision('Account')
help='Enter the amount you wish to credit or debit from the current inventory value of the item. Enter credit as a negative value.Relevant only if the selected revaluation type is Inventory Credit/Debit.'
args: 'Credit/Debit amount'
old_cost
Float
digits=dp.get_precision('Product Price')
help='Displays the previous cost of the product.'
readonly=True
args: 'Old cost'
old_value
Float
digits=dp.get_precision('Account')
help='Displays the current value of the product.'
readonly=True
args: 'Old value'
post_date
Datetime
help='Date of actual processing'
states={'done': [('readonly', True)]}
args: 'Posting Date'
product_template_id
Many2one → product.template
domain=[('type', '=', 'product')]
required=True
args: 'product.template', 'Product'
qty_available
Float
compute='_compute_product_template_qty'
digits_compute=dp.get_precision('Product Unit of Measure')
args: 'Quantity On Hand'
remarks
Text
default='Inventory Revaluation'
help='Displays by default Inventory Revaluation. This text is copied to the journal entry.'
readonly=True
states={'draft': [('readonly', False)]}
args: 'Remarks'
reval_quant_ids
One2many → stock.inventory.revaluation.quant
string='Revaluation line quants'
args: 'stock.inventory.revaluation.quant', 'revaluation_id'
revaluation_type
Selection
default='price_change'
help="'Price Change': You can re-valuate inventory values by Changing the price for a specific product. The inventory price is changed and inventory value is recalculated according to the new price.\n 'Inventory Debit/Credit': Changing the value of the inventory. The quantity of inventory remains unchanged, resulting in a change in the price"
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Revaluation Type'
args: [('price_change', 'Price Change'), ('inventory_value', 'Inventory Debit/Credit')]
state
Selection
default='draft'
readonly=True
required=True
selection=[('draft', 'Draft'), ('posted', 'Posted'), ('cancel', 'Cancelled')]
states={'draft': [('readonly', False)]}
string='Status'
uom_id
Many2one → product.uom
readonly=True
related='product_template_id.uom_id'
args: 'product.uom', 'UoM'
user_id
Many2one → res.users
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
args: 'res.users', 'Created by'
button_cancel(self)
button_draft(self)
button_post(self)
create(self, values)
post(self)
date_from
Date
date_to
Date
process(self)
No new fields.
Public methods (2)default_get(self, fields)
process(self)
company_id
Many2one → res.company
comodel_name='res.company'
readonly=True
related='revaluation_id.company_id'
string='Company'
current_cost
Float
readonly=True
related='quant_id.cost'
args: 'Current Cost'
in_date
Datetime
readonly=True
related='quant_id.in_date'
args: 'Incoming Date'
location_id
Many2one → stock.location
readonly=True
related='quant_id.location_id'
args: 'stock.location', 'Location'
new_cost
Float
copy=False
digits=dp.get_precision('Product Price')
help='Enter the new cost you wish to assign to the Quant. Relevant only when the selected revaluation type is Price Change.'
args: 'New Cost'
old_cost
Float
help='Shows the previous cost of the quant'
readonly=True
args: 'Previous cost'
product_id
Many2one → product.product
readonly=True
related='quant_id.product_id'
args: 'product.product', 'Product'
qty
Float
readonly=True
related='quant_id.qty'
args: 'Quantity'
quant_id
Many2one → stock.quant
domain=[('product_id.type', '=', 'product')]
ondelete='cascade'
readonly=True
required=True
args: 'stock.quant', 'Quant'
revaluation_id
Many2one → stock.inventory.revaluation
readonly=True
required=True
args: 'stock.inventory.revaluation', 'Revaluation'
get_total_value(self)
write_new_cost(self)