Supplier performance measurement is critical for a resilient supply chain. With Databricks AI/BI, we can build a scorecard that measures supplier quality and delivery performance, powered by four key KPIs: OTD, OTS, Lead Time Adherence, and Defect Rate.
Step 1: Define KPIs in SQL
1. On-Time Delivery (OTD)
Definition: % of deliveries received by the expected delivery date.
CREATE OR REPLACE TABLE otd_kpi AS
WITH on_time_deliveries AS (
    SELECT supplier_number,
           COUNT(*) AS on_time_deliveries
    FROM supplier_sourced
    WHERE date_received <= expected_date_received
    GROUP BY supplier_number
),
total_deliveries AS (
    SELECT supplier_number,
           COUNT(*) AS total_deliveries
    FROM supplier_sourced
    GROUP BY supplier_number
)
SELECT otd.supplier_number,
       (COALESCE(otd.on_time_deliveries,0) / COALESCE(td.total_deliveries,1)) * 100 AS on_time_delivery_kpi
FROM on_time_deliveries otd
JOIN total_deliveries td
  ON otd.supplier_number = td.supplier_number;2. On-Time Ship (OTS)
Definition: % of shipments shipped by the expected ship date.
CREATE OR REPLACE TABLE ots_kpi AS
WITH on_time_shipments AS (
    SELECT supplier_number,
           COUNT(*) AS on_time_shipments
    FROM supplier_sourced
    WHERE date_shipped <= expected_date_shipped
    GROUP BY supplier_number
),
total_shipments AS (
    SELECT supplier_number,
           COUNT(*) AS total_shipments
    FROM supplier_sourced
    GROUP BY supplier_number
)
SELECT ots.supplier_number,
       (COALESCE(ots.on_time_shipments,0) / COALESCE(ts.total_shipments,1)) * 100 AS on_time_ship_kpi
FROM on_time_shipments ots
JOIN total_shipments ts
  ON ots.supplier_number = ts.supplier_number;3. Lead Time Adherence
Definition: % of deliveries that met the promised lead time window.
CREATE OR REPLACE TABLE lead_time_kpi AS
WITH lead_time_adherence AS (
    SELECT supplier_number,
           COUNT(*) AS on_time_lead_times
    FROM supplier_sourced
    WHERE DATEDIFF(date_received, date_requested)
          <= DATEDIFF(expected_date_received, date_requested)
    GROUP BY supplier_number
),
total_deliveries AS (
    SELECT supplier_number,
           COUNT(*) AS total_deliveries
    FROM supplier_sourced
    GROUP BY supplier_number
)
SELECT lta.supplier_number,
       (COALESCE(lta.on_time_lead_times,0) / COALESCE(td.total_deliveries,1)) * 100 AS lead_time_adherence_kpi
FROM lead_time_adherence lta
JOIN total_deliveries td
  ON lta.supplier_number = td.supplier_number;4. Defect Rate
Definition: % of defective parts (based on warranty claims) vs. total sourced parts.
CREATE OR REPLACE TABLE defect_rate_kpi AS
WITH defective_parts AS (
    SELECT ss.supplier_number,
           COUNT(*) AS defective_parts
    FROM warranty_claims wc
    JOIN supplier_sourced ss
      ON wc.part_number = ss.part_number
    GROUP BY ss.supplier_number
),
total_parts AS (
    SELECT supplier_number,
           SUM(quantity_sourced) AS total_parts
    FROM supplier_sourced
    GROUP BY supplier_number
)
SELECT sm.supplier_number,
       sm.supplier_name,
       (COALESCE(dp.defective_parts,0) / COALESCE(tp.total_parts,1)) * 100 AS defect_rate_kpi
FROM supplier_master sm
LEFT JOIN defective_parts dp ON sm.supplier_number = dp.supplier_number
LEFT JOIN total_parts tp ON sm.supplier_number = tp.supplier_number;Step 2: Combine into a Supplier Scorecard View
Once we have all four KPI tables, we join them into a single view that feeds the Databricks AI/BI dashboard.
CREATE OR REPLACE VIEW supplier_scorecard AS
SELECT sm.supplier_number,
       sm.supplier_name,
       otd.on_time_delivery_kpi,
       ots.on_time_ship_kpi,
       lt.lead_time_adherence_kpi,
       dr.defect_rate_kpi
FROM supplier_master sm
LEFT JOIN otd_kpi otd ON sm.supplier_number = otd.supplier_number
LEFT JOIN ots_kpi ots ON sm.supplier_number = ots.supplier_number
LEFT JOIN lead_time_kpi lt ON sm.supplier_number = lt.supplier_number
LEFT JOIN defect_rate_kpi dr ON sm.supplier_number = dr.supplier_number;Step 3: Build the Dashboard
With supplier_scorecard available in Unity Catalog:
- Create KPI Cards: OTD %, OTS %, Lead Time Adherence %, and Defect Rate %.
- Rank Suppliers: Table sorted by performance, with filters for region or category.
- Trend Charts: Monthly OTD/OTS performance.
- AI Narratives: Databricks AI/BI can summarize insights in plain English.
Final Thoughts
By unifying supplier performance into one scorecard, organizations gain visibility into quality, delivery, and risk. With Databricks AI/BI, it’s easy to calculate, govern, and visualize these KPIs at scale, empowering better sourcing decisions.
 
								


