Repository
OCA/l10n-romania · module folder · Try on Runboat
Module version
1.0.0
Category
Localization
Folder size
0.12 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/l10n-romania
Last tracking update
2026-09-18 11:33:44
Authors
Odoo Community Association (OCA), NextERP Romania, Dakai Soft SRL
Maintainers
Odoo Community Association (OCA), NextERP Romania, Dakai Soft SRL
Committers
Mihai Fekete, OCA-git-bot, oca-ci
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
# Romania - Retail Stock Report (Marfa in Magazin)

Reporting for the retail merchandise accounting of
`l10n_ro_stock_account_retail`.

## Retail stock

`l10n.ro.stock.retail.report` lists, per (warehouse, product), the
quantity on hand, its cost, the markup (378) and the deferred VAT (4428)
actually carried by that stock, and the retail value they add up to -
which is what account 371 holds.

The figures come from the markup ledger, so they are what is on the
accounts, not a recomputation from the current pricelist. A **To
Revalue** column shows the difference between the current shelf price
and what the stock carries: anything other than zero means a Proces
Verbal de Schimbare Pret is due for that product.

## Storage sheet

Retail columns on the Romanian storage sheet (fisa de magazie) are not
implemented yet; the module already depends on `l10n_ro_stock_report` so
they can be added here without moving anything.

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_stock_retail_report_list l10n.ro.stock.retail.report.list l10n.ro.stock.retail.report list New
view_stock_retail_report_search l10n.ro.stock.retail.report.search l10n.ro.stock.retail.report search New
view_stock_retail_report_wizard_form l10n.ro.stock.retail.report.wizard.form l10n.ro.stock.retail.report.wizard form New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (2)

New fields (34)
  • categ_id Many2one → product.category
    readonly=True string='Category' args: 'product.category'
  • company_id Many2one → res.company
    readonly=True string='Company' args: 'res.company'
  • cost_adjustment Monetary
    currency_field='currency_id' help='Cost added by landed costs and purchase price differences, which move no goods.' readonly=True string='Cost Corrections'
  • cost_in Monetary
    currency_field='currency_id' readonly=True
  • cost_initial Monetary
    currency_field='currency_id' readonly=True string='Opening Cost'
  • cost_out Monetary
    currency_field='currency_id' readonly=True
  • cost_total Monetary
    currency_field='currency_id' readonly=True string='Stock Value (cost)'
  • cost_unit Monetary
    compute='_compute_values' currency_field='currency_id' string='Cost / Unit'
  • currency_id Many2one → res.currency
    readonly=True related='company_id.currency_id' args: 'res.currency'
  • current_price_unit Monetary
    compute='_compute_values' currency_field='currency_id' help="Shelf price the warehouse pricelist gives today, VAT included. Always today's price, whatever period the rest of the row covers." string='Current Shelf Price / Unit'
  • markup_adjustment Monetary
    currency_field='currency_id' help='Markup moved by price changes, landed costs and purchase price differences, which move no goods.' readonly=True string='Markup Corrections (378)'
  • markup_in Monetary
    currency_field='currency_id' readonly=True string='Markup In (378)'
  • markup_initial Monetary
    currency_field='currency_id' readonly=True string='Opening Markup (378)'
  • markup_out Monetary
    currency_field='currency_id' readonly=True string='Markup Out (378)'
  • markup_total Monetary
    currency_field='currency_id' readonly=True string='Markup Carried (378)'
  • price_gap_total Monetary
    compute='_compute_values' currency_field='currency_id' help='Difference between the current shelf price and what the stock carries. Anything other than zero means a price change document is due for this product.' string='To Revalue'
  • product_id Many2one → product.product
    readonly=True string='Product' args: 'product.product'
  • product_tmpl_id Many2one → product.template
    readonly=True string='Product Template' args: 'product.template'
  • quantity Float
    readonly=True string='Recorded Quantity'
  • quantity_adjustment Float
    help='Quantity brought in by events that are not stock moves, chiefly the retail opening balance. Without it the quantities of a period did not add up: opening plus in plus out fell short of the closing balance by whatever the opening balance had recognised, and nothing in the report said where the difference had gone.' readonly=True string='Quantity Corrections'
  • quantity_in Float
    readonly=True
  • quantity_initial Float
    readonly=True string='Opening Quantity'
  • quantity_on_hand Float
    help='What the shop actually holds, from the quants. Only filled when the report answers for today: the quants keep no history, so a report asked for a past position leaves this empty.' readonly=True
  • quantity_out Float
    readonly=True
  • quantity_unrecorded Float
    help='Stock on the shelf that the markup ledger has no record of, normally goods that were already there when this module was installed. Their shelf value is not on 371 yet: run the retail markup opening balance to settle them. Only filled when the report answers for today.' readonly=True
  • retail_initial Monetary
    compute='_compute_values' currency_field='currency_id' string='Opening Retail Value (371)'
  • retail_price_unit Monetary
    compute='_compute_values' currency_field='currency_id' help='Retail value per unit, VAT included, as loaded.' string='Carried PVA / Unit'
  • retail_value Monetary
    compute='_compute_values' currency_field='currency_id' help='Cost plus the markup and deferred VAT carried - what account 371 holds for this stock.' string='Retail Value (371)'
  • vat_adjustment Monetary
    currency_field='currency_id' readonly=True string='Deferred VAT Corrections (4428)'
  • vat_in Monetary
    currency_field='currency_id' readonly=True string='Deferred VAT In (4428)'
  • vat_initial Monetary
    currency_field='currency_id' readonly=True string='Opening Deferred VAT (4428)'
  • vat_out Monetary
    currency_field='currency_id' readonly=True string='Deferred VAT Out (4428)'
  • vat_total Monetary
    currency_field='currency_id' readonly=True string='Deferred VAT Carried (4428)'
  • warehouse_id Many2one → stock.warehouse
    readonly=True string='Warehouse' args: 'stock.warehouse'
Public methods (0)

No public methods.

New fields (4)
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company'
  • date_from Date
    default=<expr> help='Movements before this date are folded into the opening balance.' required=True string='From'
  • date_to Date
    default=fields.Date.context_today help='The closing balance is the position at the end of this day - the figure to compare against the trial balance.' required=True string='To'
  • warehouse_ids Many2many → stock.warehouse
    domain="[('l10n_ro_retail', '=', True), ('company_id', '=', company_id)]" help='Leave empty for every retail warehouse of the company.' string='Shops' args: 'stock.warehouse'
Public methods (1)
  • action_open_report(self)