There is not a way for you to directly create new product transactions in the transactions tab.
Product transactions of any type are automatically saved and listed in this tab as they are booked in Openbravo.
As shown in the image above, Openbravo saves and informs us about below relevant data for each product transaction type:
- Storage Bin where the product has been stored in or taken from
- Movement Quantity, as the number of product units moved internally or either in or out
- Movement Date, as the date of the product transaction
- Movement Type, such as:
- Customer Shipment, this type can have:
- a negative movement quantity whenever a product is shipped to a customer in a Goods Shipment document.
- a positive movement quantity whenever a product is returned back from a customer in a Return Material Receipt.
- Internal Consumption, as the units consumed in internal activities such as projects, reparations. This type can be:
- Positive if the units of the product reduce stock from the warehouse
- or Negative if an internal consumption transaction is cancelled, this works like when a shipment is cancelled.
- Inventory In, this one relates to a Physical Inventory Count higher than the Stock booked for a product in Openbravo.
- Inventory Out, this one relates to a Physical Inventory Count lower than the Stock booked for a product in Openbravo.
- Movement From, this one relates to Goods Movements from a Warehouse & Storage Bin
- Movement To, this one relates to Goods Movements to a Warehouse & Storage Bin
- Production, as the units of a product included in a work effort. This type can be:
- Positive, for P+ when products are added to the warehouse
- or Negative, for P- when products are consumed
- Vendor Receipts, this type can have:
- a positive movement quantity whenever a product is received from a vendor in a Goods Receipt document.
- a negative movement quantity whenever a product is returned back to a vendor in a Return to Vendor Shipment.
- Customer Shipment, this type can have:
Openbravo also informs us about the specific:
- Goods Receipt/Shipment Line
- Physical Inventory Line
- Movement Line
- Production Line
- or Project Issue
information of the product transaction, as applicable.
It is also possible to review:
1. the Costing Status of a transaction.
Costing status of a transaction can be any of the ones listed below and has a lot to do with the Costing Background Process:
- Not Calculated. This status means that the costing background process has not taken the transaction yet to calculate its cost.
- Cost Calculated. This status means that the costing background process has already taken the transaction and its cost has been calculated.
- Pending. This status has been implemented to get that the costing background process do not throw an error whenever it is not possible to calculate the cost of a transaction.
This status is not used by the Costing Algorithms currently implemented in Openbravo but can be used by other costing algorithms such as FIFO for those cases where a product output transaction is booked without booking its corresponding product input transaction.
- Skip. This status has been implemented to get that the costing background process do not take into account the transactions set as "Skip" while calculating costs.
This status is not used by the Costing Algorithms currently implemented in Openbravo but could be used by other costing algorithms.
2. and whether the cost of a transaction has been calculated or not.
As soon as a product transaction gets its cost calculated by the Costing Background Process the field "Is Cost Calculated" gets the value "Yes".
Once the cost of a transaction is calculated you can also view the:
- Trx Original Cost, that is the original cost of the transaction
- Total Cost, that is the sum of the original cost of the transaction and all adjustment costs of any type.
- Unit Cost, that is the sum of the original cost and all the "unit cost" type adjustments.
- Currency used for the calculations.
Additionally, "Is Cost Permanent" field informs whether the cost of a transaction is permanent or not. In case it is permanent, it will not be changed anymore.
Finally, it is important to remark that in the case of "Average" cost algorithm, the "average" cost of a product is calculated as "Moving Average" as explained in this wiki article.
The average cost of a product is calculated based on the product's transaction flow, therefore it is the sum or subtraction of the "Total Cost" of the transactions listed for the product, divided by the sum of the "Total Movement Quantity" of the transactions.
For instance the average cost of a product which transactions are listed below is equal to 23.33 = (2000.00-1000.00+2500.00)/(100-50+100):
- goods receipt for Movement Qty 100 for a Total cost of 2000
- goods shipment for Movement Qty -50 for a Total cost of 1000
- goods receipt for Movement Qty 100 for a Total cost of 2500
Manual Cost Adjustment
Additionally, the cost of a transactions can be modify by clicking on Manual Cost Adjustment process button. After clicking this button a new popup is opened:
This pop-up allows entering below detailed data:
- Total Cost Amount: that is the new total cost of the product transaction
- Accounting Date: that is the date when this manual change which will imply a cost adjustment is going to be post to the ledger
- if not checked the amount entered in the total cost amount field is the new Total Cost of the transaction which besides that will be set as a "Permanent" cost which cannot be adjusted anymore.
- if checked the amount entered in the total cost amount field is going to be added to the current total cost, besides "Unit Cost" check-box is shown.
- Unit Cost: This check-box is shown only if "Incremental" check-box is selected.
- if not checked, the incremental amount entered in the field total cost amount is not going to be consider part of the transaction unit cost but total cost. This is like entering an "extra" cost such as "Landed Cost", which does not change the unit cost of that transaction but the total cost.
- if checked, the incremental amount entered in the field total cost amount is going to be consider part of the unit cost of the transaction.
For additional information about which cost adjustment is or it is not unit cost, please review this wiki article : Cost Adjustments - Introduction.
Once done a "manual cost correction" cost adjustment will be created.
This cost adjustment can be reviewed and post to the ledger in the Cost Adjustment window.
Same way, this cost adjustment can also be reviewed in the Transaction Cost tab.