Hi Hampton,
In
 Odoo, the Unit Cost displayed in stock reports or inventory valuations 
is typically calculated based on the costing method defined for the 
product. The most common costing methods used are:
- Standard Price: The Unit Cost is set manually as a predetermined value called the "Standard Price" for each product.
- Average Cost (AVCO):
 The Unit Cost is calculated as the weighted average cost of all the 
stock moves (receipts) that brought the product into stock.
- FIFO (First In First Out): The Unit Cost is calculated based on the cost of the oldest stock moves first.
When the On Hand quantity is zero, the Unit Cost is displayed as zero
 because there are no stock moves or receipts recorded for that 
particular product at that time. In other words, when there is no stock 
available, there is no cost associated with it, hence the Unit Cost is 
shown as zero.
However, as soon as new stock is received through a purchase, 
manufacturing order, or any other incoming stock move, the Unit Cost 
will be updated based on the costing method used for that product.
It's important to note that even when the On Hand quantity is zero, 
the product may still have a defined Standard Price or an Average Cost 
from previous stock movements, but these values are not displayed in the
 stock report when there is no available quantity.
Hope it helps