Case Study: Smart Warehouse Digital Twin & Restocking Intelligence
842K
Inventory Stock Quantity
Warehouse operations and procurement teams needed more than a table of stock numbers. They wanted to see
how full the warehouse really is, where products physically live, and which items require attention
before they become a problem. Previous reports showed totals, but gave no spatial context and no
restocking guidance.
The Smart Warehouse Digital Twin and Restocking Intelligence solution delivers a 3D,
bin-level view of the warehouse combined with a replenishment engine. Users can zoom into aisles and
levels, inspect individual bins, and instantly understand occupancy and inventory value. At the same time,
DAX-based measures compute safety stock, stock categories and estimated reorder dates, while an alerting
layer sends email and in-app notifications when critical thresholds are breached.
The Challenge
- No spatial visibility: Ops teams could not answer simple questions such as
“Where is this product located?” or “Which aisles are under- or over-utilized?”
- Manual restocking decisions: Reorder timing was driven by gut feel and occasional
Excel extracts rather than recent demand and safety stock calculations.
- Late reaction to risk: There were no automatic alerts when inventory dropped into
critical zones or when warehouse occupancy exceeded safe limits.
The Solution & Architecture
- 3D warehouse digital twin: A custom 3D visual renders the warehouse with aisles,
levels and bins. Filters allow narrowing down to specific product categories, products, aisles and
levels while all KPIs recalculate in real time.
- Bin-level inventory measures: DAX measures such as Inventory Stock Quantity,
Occupancy Rate and Inventory Value are computed at bin, aisle and level granularity,
providing a clear picture of how space and capital are used.
- Demand-driven restocking engine: Using the last 6 months of sales, the model
calculates safety stock ratios, classifies items into stock categories (New, Unsaleable, Safety, Unsafe,
Critical) and derives an Estimated Reorder Date per product.
- Alerting system: When products fall into Critical or Unsafe stock
categories, or when overall occupancy crosses configured thresholds, the system triggers email and
notification alerts so warehouse and procurement teams can react immediately.
Core Restocking & Reorder Logic (DAX)
The following DAX pattern powers the stock categorisation and estimated reorder date logic used in the
restocking dashboard and alerting rules.
// 1- Total inventory units currently stored in bins
Inventory Stock Quantity =
SUM ( Inventory[UnitsPlaced] )
// 2- Total product quantity sold in the last 6 months
Last 6M Product Count =
VAR Last6MonthsDate =
[Last 6 Month Date] // e.g. 30 June 2013
VAR TodayDate =
[Today] // e.g. 31 December 2013
RETURN
CALCULATE (
[Product Count], // total units sold for the product
vFactSales[OrderDate] >= Last6MonthsDate,
vFactSales[OrderDate] <= TodayDate
)
// 3- Safety stock ratio: how many 6-month demand periods
// are currently sitting in inventory
Safety Stock =
DIVIDE ( [Inventory Stock Quantity], [Last 6M Product Count], BLANK () )
// 4- Stock segmentation used for restocking decisions
Stock Category =
SWITCH (
TRUE (),
ISBLANK ( Bin[Last Order Date] )
&& ISBLANK ( Bin[Safety Stock] ), "New Product",
ISBLANK ( Bin[Safety Stock] ), "Unsaleable Product",
Bin[Safety Stock] > 1, "Safety Stock",
Bin[Safety Stock] >= 0.5
&& Bin[Safety Stock] <= 1, "Unsafe Stock",
Bin[Safety Stock] < 0.5, "Critical Stock Item",
"Unknown"
)
// 5- Average daily demand in the last 6 months
Average Daily Demand 6M =
DIVIDE ( [Last 6M Product Count], 180 )
// 6- How many days the current inventory will last
// at the recent demand rate
Additional Day =
DIVIDE ( [Inventory Stock Quantity], [Average Daily Demand 6M], BLANK () )
// 7- Estimated reorder date based on current stock and demand.
// If we cannot compute additional days, show the stock category instead.
Estimated Reorder Date =
IF (
ISBLANK ( [Additional Day] ),
MAX ( 'vDimProduct'[Stock Category] ),
[Today] + [Additional Day]
)
These measures feed both the restocking table view and the alerting rules. Critical and Unsafe stock
categories, combined with near-term reorder dates, are used to drive targeted notifications to warehouse
supervisors and buyers.