Costing rules can only be created for legal entities, that is either "legal with accounting" organizations or "legal without accounting" organizations.
Product transactions costs can be calculated for both legal entities types, however only "legal with accounting" organizations support "perpetual" inventory posting as "legal without accounting" organizations do not support any type of posting.
It is important to remark that a costing rule can be validated if a "Currency" is configured for the legal entity in the organization window, therefore costs are calculated in that given currency.
A valid costing rule once created and validated for a legal entity organization will automatically be assigned to the products of that organization, therefore it can be reviewed in the Costing Rule tab of "Product" window.
Costing rules allow to define whether backdated transactions booked for products on a later date need to be adjusted therefore corresponding "backdated transaction" cost adjustments are also created and booked to get the correct cost of those products.
Notice that "Costing Rules" is a feature implemented by the new Costing Engine, therefore a costing rule can be created and validated within an Openbravo instance managing costs only if it has been migrated to the new "Costing Engine".
Openbravo recommends to migrate instances using the "legacy" costing engine to the new costing engine.
Please review the Costing Migration Process article.
Note that the new costing engine is included in Openbravo 3 starting from MP13.
New Openbravo instances or instances which did not calculate cost do not need to migrate to the new "costing" engine but just to create and validate a "Costing Rule" by having into account that:
- First costing rule created allows not to enter any date in the field "Starting Date", which means that all existing product transactions are going to be cost calculated.
- A blank date in the field "Starting Date" implies also a blank date in the field "Fix Backdated From" date unless a different date is entered in this field. "Fix Backdated From" date can be same or later than "Starting Date".
- Openbravo will show an error in case there are product transactions whose costs need to be calculated with a movement date on a "Closed" period. In those cases it will not be possible to post any cost transaction to the ledger unless the corresponding period is open for legal with accounting entities.
- First costing rule created allows also to specify a date in the field "Starting Date", i.e. 01-01-2014:
- In that case all transactions with a transaction process date prior to that date will also be cost calculated at a zero cost.
- All transactions with a transaction process date on January 1st, 2014 and later on are going to be cost calculated at the corresponding cost.
- Second costing rule does not allow to enter a "Starting Date" as current date is taken by default, therefore first costing rule ends when second costing rule starts and so on.
- Same applies to "Fix Backdated From" date defaulted to current date unless a specific date later than "current" date is entered.