SCENARIO ① · DRILL-DOWN
库存压不住了,老板要个说法
老板问一句话,答案穿过五层:场景 → 三句话 → 报告页 → 规则引擎 → Excel 单元格。
这一页是总览。后面三页把每句话单独拆到底——每个数字都能回溯到某一个 Excel 列、某一行代码、某一条公式。经得起财务总监追问。
场景 ① · 季度末盘点前,老板突然问:"为什么账上躺着这么多钱?"
你拿出一份脱敏样例,三句话说清楚:钱压在哪、浪费在哪、先动哪。不许翻表,不许说"我回去查查"。
1
钱压在哪 → 压在死货和头部
总库存 ¥2,966,900,其中 28%(¥831,000)是死货;头部 5% 的 SKU 占了 51.2% 的销售额——钱两头压。
2
浪费在哪 → 浪费在一刀切的 45 天备货
公式说中位 17.8 天就够(范围 9.5~27),你一刀切备 45 天——¥943,686 资金压在仓库睡大觉。
3
先动哪 → 先补 1248、先清 366、先裁决 34
1,248 个缺货风险先补货、366 个死货先清仓、34 个"死货∩主力"打架的先裁决——其他的排队。
L0 · 场景
老板的一句话:"为什么账上躺着这么多钱?"
触发时点:季度末盘点前。回答约束:三句话、带数字、不当场翻表。
L1 · 三句话
钱压在哪 / 浪费在哪 / 先动哪
对应 diagnostics.html
P2 执行摘要——Governing Message 独立成页。
L2 · 报告页
P3 总账四数 · P4 四类清单 · P5 三个动作 · P6 假设边界
每句话由哪一页支撑,见 P2/P3/P4 的下钻链。
L3 · 规则引擎
run_rules.py · 两个模块
模块1 四规则(缺货/死货/主力/长尾+打架);模块2 EOQ(EOQ、安全库存、ROP、备货天数、节省)。
L4 · Excel 数据
sku_table.csv 9 列 → sku_table_with_eoq.csv 25 列
每个数字最终落在某一列的某一个单元格。字段级映射见最后一页。