Nancy的SCM仪表盘和分析模版 V2.8
概述
本 Skill 用于服装外贸公司的供应链管控看板构建、SCOR 基础秩序模型建立、Scrum 敏捷优化框架设计、人员风险变更追踪和模型自我迭代。从 Excel 数据源自动提取信息,生成交互式 HTML 仪表盘、SCOR 战略框架文档、Scrum Sprint 方案和 Excel 数据导出。历经 V1→V9 共9个版本迭代,当前推荐使用 V9(单文件数据源)或 V8(多文件数据源)。V2.5 新增 SCOR 1.0 五支柱模型,V2.6 新增 Scrum-SCM 2.0 敏捷优化框架,V2.7 新增人员风险变更追踪,V2.8 新增模型自我迭代引擎(V1.1)。
版本演进一览
| 特性 | V1 | V2 | V2.1 | V2.2 | V2.3/V2.4 | V2.5/V2.6 | V2.7 | V2.8(当前) |
|---|---|---|---|---|---|---|---|---|
| 数据源 | WIP + 部分工厂 | WIP主文件 + SCI + TARGET×2 + 8工厂 + ERP | +15工厂(含阳驰特例) | +人员字段 | JGF综合追踪总表(单文件10Sheet) | 同V2.4 | 14Sheet(含QC/付款/财务) | 同V2.7 |
| 看板Tab | 5个 | 8个 | 同V2 | +人员工作量=9 | 8个(样品/面辅料/海外客户) | 同V2.4 | +改进建议含风险追踪 | +模型迭代信息卡 |
| 订单数 | ~200 | ~800 | ~800 | 557(2026过滤) | 1171(全量) | 同V2.4 | 1188(全量) | 同V2.7 |
| 工厂进度 | 基础解析 | 智能列检测+交叉匹配 | +列检测优先级 | 同V2.1 | 直接解析工厂进度Sheet | 同V2.4 | 同V2.4(458条) | 同V2.7 |
| 风险检测 | 3级 | 7级原因追踪 | 同V2 | 同V2 | 3级+交期自动计算 | 同V2.4 | +人员风险变更追踪 | 同V2.7 |
| 订单金额 | 无 | 无 | 无 | 无 | ✓ $2306万USD | 同V2.4 | ✓ $2395万USD | 同V2.7 |
| 海外客户 | 无 | 无 | 无 | 无 | ✓ LUX STUDIO + LAND N SEA | 同V2.4 | 同V2.4 | 同V2.7 |
| SCOR模型 | 无 | 无 | 无 | 无 | 无 | ✓ 5支柱+23KPI+4阶段路线图 | 同V2.6 | 同V2.6 |
| Scrum框架 | 无 | 无 | 无 | 无 | 无 | ✓ 5大Sprint+角色+仪式+模板 | 同V2.6 | 同V2.6 |
| 人员风险追踪 | 无 | 无 | 无 | 无 | 无 | 无 | ✓ 新订单/数据更新双维度+持续高风险预警+工厂集中度 | 同V2.7 |
| 模型自迭代 | 无 | 无 | 无 | 无 | 无 | 无 | 无 | ✓ 7维检测/自动升级/迭代日志 |
| 输出格式 | HTML | HTML + Excel | 同V2 | 同V2 | HTML (V9) / HTML+Excel (V8) | +SCOR +Scrum战略框架HTML | +风险追踪卡片(改进建议内) | +模型迭代卡片+changelog |
| 改进建议 | 5条 | 8条 | 15工厂评估 | +人员均衡 | 7条+优化路径 | +SCOR成熟度诊断 +Scrum Sprint方案 | +人员风险变更+持续高风险深度分析 | +模型自迭代信息卡 |
数据源总览
数据源A:JGF海外订单WIP综合追踪总表(V9 主数据源)
位置: /Users/nancychan/Desktop/JGF海外订单WIP综合追踪总表.xlsx
格式: 10个Sheet,1171条订单,更新日期2026-07-13
Sheet 0: 订单综合追踪总表(核心,Row 3表头,Row 4+数据,1171条)
| 列 | 字段 | 说明 |
|---|---|---|
| 0 | 品牌 Brand | BCI/LUX STUDIO/LAND N SEA等21个 |
| 1 | PO# | 订单编号 |
| 2 | 款号 Style# | |
| 3 | 款式描述 | |
| 4 | 颜色 Color | |
| 5 | 生产工厂 Factory | 东方经销/彩明等40家 |
| 6 | 面料描述 Fabric | |
| 7 | 订单数量 Qty | 总计212.5万件 |
| 8 | 单价(USD) U/Price | |
| 9 | 总金额 Amount | 总计$2306万 |
| 10 | 生产理单 | 郑小莲/MARY等9人 |
| 11 | 业务员 | Derek/EVA/PAula 3人 |
| 12 | 加工费(原单价) | |
| 13 | 跟单员 | ⚠️ 实际存储ETA到港日期,非人员姓名 |
| 14 | 客户要求交期 | |
| 15 | EX-FTY出厂日 | 仅453条有此日期(38.7%) |
| 16 | ETD船期 | 慢船/快船等 |
| 17 | ETA到港日 | |
| 18 | 大货进度(%) | |
| 19 | 进度状态 Status | 开发中/生产中/交期紧急等(含渠道信息混合) |
| 20 | 备注 Remark | |
| 21 | 风险 Risk | 🔴/⚠️/✅ 三级 |
> ⚠️ Col 13标题为"跟单员"但实际数据是ETA到港日期,解析时不可当人员字段使用
Sheet 2: 工厂进度明细(Row 2表头,390条,21工厂)
| 列 | 字段 |
|---|---|
| 0 | 工厂 |
| 4 | PO# |
| 7 | 订单数量 |
| 9 | 生产理单 |
| 10 | 订单进度说明 |
| 11 | 面辅料状态 |
| 12 | 裁剪 |
| 13 | 上线 |
| 14 | 日产量 |
| 15 | 出货时间 |
Sheet 3: 样品进度(100条)
1st送样/批复 → 2nd送样/批复 → PP样 → 船样全流程追踪
Sheet 4: 面料进度(100条)
L/D送样 → 大货送样 → 到厂日
Sheet 5: 辅料进度(100条)
送样 → 大货到厂
Sheet 8: LUX STUDIO海外客户(57条)
FIT/LD/PP/船样状态追踪
Sheet 9: LAND N SEA & GIII海外客户(279条)
到港日/出厂日/金额追踪
其他Sheet
- Sheet 1: 仪表盘(原有统计摘要,72行)
- Sheet 6: 数据统计(品牌/工厂统计,41行)
- Sheet 7: 使用说明(操作指南,20行)
数据源B:WIP主文件(V1-V8 数据源,生产进度核心)
位置: /Volumes/服装生产/CloudStation/大货WIP表/WIP表/WIP2025-2-12 4-17.9-18,10-20.xlsx
格式: 160MB+,2个核心Sheet
Sheet: 大货在手订单(约569条,Row 1表头,Row 2+数据)
| 列 | 字段 | 说明 |
|---|---|---|
| 0 | 客户 | 品牌/客户名 |
| 2 | 成衣款式 | 成衣/面料/辅料分类 |
| 3 | 下单日期 | Excel序列号格式,用于V8的2026年过滤 |
| 4 | 业务员 | Derek/EVA/PAula → 操作订单/外销业务员 |
| 5 | 生产理单 | MARY/NANCY等10人 → 生产跟单/生产业务员 |
| 6 | PO | 订单编号 |
| 7 | 款号 | 款式代码 |
| 9 | 最晚出货日期 | 客户要求的最晚出货截止日 |
| 10 | 工厂交期 | 工厂承诺的交货日期 |
| 12 | 订单数量 | 件数 |
| 15 | 面料交期 | 面料计划到料日期(仅22%有数据) |
| 17 | 服装联系人 | 工厂名称 |
> ⚠️ 人员字段映射:外销业务员 = 业务员(同一人),生产业务员 = 生产理单(同一人)
Sheet: 2025年已出货明细(约3545条)
- 与大货在手订单列结构类似 + Col 19
跟单qc+ Col 20 预计开裁时间 + Col 21 生产异常情况 + Col 22 加工费金额 - ⚠️ Col 22 实际存的是加工费而非出货日期,不用于出货追踪
数据源C:客户 WIP 表(V1-V8)
- SCI Stantex:
WIP_Sales_Chart_-_SCI_2026.6.1.xlsx,PO/Sample/Fabric/Trims四个Sheet - TARGET:
WIP_Sales_Chart_-_SCI_-_TARGET.xlsx+WIP_TARGET.xlsx,SUMMARY/FABRIC/TRIM/Shipping等(2个文件需合并去重)
数据源D:工厂进度报告(V1-V8)
8-15家工厂的独立进度报告,文件通常在WeMail缓存目录(路径含日期如2026-6-13):
缤诺/盛尧/赛尔美/简蓉/韬瑞-高达/玖悦/泰阳/伟通/彩明/宸轩/阳驰/鑫达/新舒雅/新达/钶玮
⚠️ WeMail缓存文件可能被系统清理导致不可访问(星之浩、泰昌已丢失),需定期备份。
数据源E:ERP供应商数据汇总(V1-V8)
位置: 供应商数据汇总(成衣+面料+辅料)(1).xlsx
8个Sheet: 成衣出运/服装面料入库/辅料入库单/面料出运/收汇/付款等
- 成衣出运 Col 3 = 业务部门(组级别,非个人名)
- 服装面料入库 Col 3 = 业务员, Col 4 = 生管
构建脚本体系
模式A:单脚本模式(V6+ 推荐)
一个脚本完成全部工作,无需中间JSON文件:
| 版本 | 构建脚本 | Excel导出 | Tab数 | 数据源 |
|---|---|---|---|---|
| V9 | build_dashboard_v9.js |
- | 8 | JGF综合追踪总表(单文件) |
| V8 | build_dashboard_v8.js |
export_excel_v8.js |
9 | WIP主文件+SCI+TARGET+ERP+15工厂 |
| V7 | build_dashboard_v7.js |
export_excel_v7.js |
8 | 同V8(15工厂更新) |
| V6 | build_dashboard_v6.js |
export_excel_v6.js |
8 | WIP主文件+SCI+TARGET+ERP+8工厂 |
NODE_PATH=~/.workbuddy/binaries/node/workspace/node_modules
NODE=~/.workbuddy/binaries/node/versions/22.22.2/bin/node
# V9: 生成看板(JGF单文件数据源)
$NODE /path/to/build_dashboard_v9.js
# V8: 生成看板 + JSON + Excel导出
$NODE /path/to/build_dashboard_v8.js # 输出HTML + dashboard_data_v8.json
$NODE /path/to/export_excel_v8.js # 读取JSON输出Excel
模式B:分离脚本模式(V2 原始)
先提取数据再生成看板(适合数据源频繁变更的场景):
SKILL=~/.workbuddy/skills/nancy-scm-dashboard
$NODE $SKILL/scripts/extract_data.js \
--wip-master "/path/to/WIP主文件.xlsx" \
--sci "/path/to/SCI_WIP.xlsx" \
--target "/path/to/TARGET_WIP1.xlsx" "/path/to/TARGET_WIP2.xlsx" \
--erp "/path/to/ERP供应商数据.xlsx" \
--factory "/path/to/工厂进度表1.xlsx" "/path/to/工厂进度表2.xlsx" \
--output dashboard_data.json
$NODE $SKILL/scripts/generate_dashboard_v2.js \
--data dashboard_data.json \
--output supply_chain_dashboard.html
> 📁 单脚本模式脚本位于项目根目录;分离模式脚本位于 $SKILL/scripts/
V9 看板内容(8个标签页)
1. 📊 订单总览
- 9个KPI卡片(总订单/总数量/总金额/活跃订单/高风险/中风险/低风险/未评估/工厂数)
- 品牌/工厂/风险/状态 4个分布图表
- 5重筛选器(品牌/工厂/业务员/生产理单/风险等级)
- 订单明细表(含业务员/生产理单标签)
2. 🏭 工厂进度
- 390条工厂进度明细(21家工厂)
- 工厂订单分布柱状图
- 按工厂分组的进度表(面辅料/裁剪/上线/日产量/出货时间)
3. 🧵 面辅料采购
- 面料进度100条(L/D送样→大货送样→到厂日)
- 辅料进度100条(送样→大货到厂)
- 审批状态分布饼图
4. 🔬 样品进度
- 100条样品全流程追踪
- 1st送样/批复 → 2nd送样/批复 → PP样 → 船样
5. ⚠️ 风险预警
- 工厂风险叠加柱状图(高/中/低分层)
- 品牌风险分布图
- 高风险订单清单(可筛选)
6. 👤 人员工作量
- 业务员订单分布图(柱状图)
- 生产理单工作量图(柱状图 + 风险叠加)
- 业务员明细表(订单数/总数量/总金额/风险占比)
- 生产理单明细表(跟进记录/总数量/高风险/中风险)
7. 🌍 海外客户
- LUX STUDIO(57条):FIT/LD/PP/船样状态追踪
- LAND N SEA & GIII(279条):到港日/出厂日/金额追踪
8. 💡 改进建议
7条结构化建议(问题→数据支撑→根因→行动→预期效果)+ 供应链优化路径
V8 看板内容(9个标签页,多文件数据源)
> V8为多文件数据源模式的最新版本,保留供WIP主文件数据源场景使用
- 📊 订单总览 — KPI + 筛选器 + 业务员/生产理单标签
- 📋 WIP生产总表 — 557条2026年WIP在手订单 + 工厂进度交叉匹配
- 🧵 面辅料采购 — 面料/辅料审批状态 + SCI/TARGET分组
- 🏭 工厂进度 — 284条15工厂 + 进度条 + 风险标签 + 业务员/理单
- ⚠️ 异常分析 — 异常类型分布 + 工厂异常统计
- 💡 改进建议 — 含人员工作量均衡分析
- 📅 年份拆解 — 按年份拆解WIP订单
- 💰 收汇付款 — ERP收汇与付款跟踪
- 👤 人员工作量 — 业务员/理单工作量图 + 明细表
Excel 导出
V8 Excel导出(7个Sheet)
| Sheet | 内容 | 典型数据量 |
|---|---|---|
| 工厂生产进度 | 含WIP交期对比 + 业务员/生产理单 | 284条(15工厂) |
| WIP生产总表 | 557条2026年订单 + 业务员/生产理单 | 557条 |
| 订单总览 | SCI+TARGET(2026年过滤) | 204条 |
| ERP收汇付款 | 成衣出运财务(2026年过滤) | ~2000条 |
| 异常分析 | 逾期+高风险汇总 | 400+条 |
| KPI摘要 | 关键指标一览 | 26行 |
| 人员工作量 | 业务员+生产理单明细 | 13人 |
> V9暂未实现Excel导出,可参考V8的export_excel_v8.js模式开发
关键技术实现
1. V9风险自动计算逻辑
V9数据源中风险标记可能缺失,需要自动补全:
// 有明确风险标记(🔴/⚠️/✅): 直接使用
if (rawRisk.includes('🔴')) risk = 'high';
else if (rawRisk.includes('⚠️')) risk = 'medium';
else if (rawRisk.includes('✅')) risk = 'low';
// 无标记但有客户交期: 自动计算
else if (reqDate) {
const days = Math.floor((reqDate - now) / 86400000);
if (days < 0) risk = 'high'; // 已过期
else if (days <= 7) risk = 'high'; // 7天内
else if (days <= 14) risk = 'medium';
else risk = 'low';
}
// 无交期: 标记为"未评估"
else risk = 'unknown';
2. 智能列检测引擎(V2-V8 工厂报告解析)
工厂进度报告列布局因工厂而异,使用关键词自适应检测:
const colIdx = {};
for (let c = 0; c <= 17; c++) {
const v = safeStr(getColVal(ws, headerRow, c)).toLowerCase();
if (v.includes('客户')) colIdx.client = c;
else if (v.match(/^p\.?o/i)) colIdx.po = c;
else if (v.includes('款号') || v.includes('款式')) colIdx.style = c;
else if (v.includes('数量') && !v.includes('日')) colIdx.qty = c;
else if (v.includes('要求') && v.includes('交期')) colIdx.reqDate = c;
else if (v.includes('面辅料') && !v.includes('裁剪')) colIdx.matStatus = c;
else if (v.includes('裁剪') || v.includes('开裁')) colIdx.cut = c;
else if (v.includes('线') || v.includes('生产')) colIdx.line = c;
else if (v.includes('出货') || v.includes('离厂')) colIdx.ship = c;
else if (v.includes('产量')) colIdx.daily = c;
else if (v.includes('颜色')) colIdx.color = c;
else if (v.includes('备注')) colIdx.remark = c;
}
关键规则:
- 只扫描 c0-c17:工厂报告列18+存储历史数据,不应被检测
- 列检测优先级:面辅料 > 裁剪 > 上线 > 产量 > 出货 > 备注 > 进度(通用)。必须先检测具体字段,最后才检测通用"进度",否则 裁剪进度 会被误匹配
- ⚠️ 阳驰特例:该工厂文件在 c11-c28 存储历史周数据,最新回复在 c29-c35。需在c0-c17扫描后追加c25-c35扫描
3. 幻影行处理
Excel文件可能有100万+空行,需连续空行断点检测:
let consecEmpty = 0;
for (let r = headerRow + 1; r <= range.e.r; r++) {
if (hasContent) { rows.push(r); consecEmpty = 0; }
else {
consecEmpty++;
if (consecEmpty > 50 && r > 100) break;
}
}
4. WIP交叉匹配引擎(V6-V8)
将WIP主文件在手订单与工厂进度报告交叉匹配:
// 策略1: PO号直接匹配
const poKey = fd.po.replace(/\s+/g, '').toUpperCase();
if (wipByPO[poKey]) match = wipByPO[poKey];
// 策略2: 工厂名 + PO 联合匹配(通过工厂名称映射表)
const facName = factoryNameMap[wipName] || wipName;
const facPoKey = facName + '|' + poKey;
// 策略3: 模糊匹配(遍历所有key查找包含该PO的)
实际效果: V7达到 224/284 (79%) 匹配率
5. 工厂名称映射表(31条)
WIP主文件中的工厂名与看板中的工厂名不完全一致,需要映射:
const factoryNameMap = {
'林澄/盛尧': '盛尧', '盛尧': '盛尧',
'高达/建亮': '韬瑞/高达', '高达': '韬瑞/高达',
'泓润(原三盛)': '三盛', '三盛': '三盛',
'东方经销': '东方经销', '新恒经销': '新恒经销',
'缤诺': '缤诺', '赛尔美': '赛尔美',
'玖悦': '玖悦', '简蓉': '简蓉',
'泰阳': '泰阳', '伟通': '伟通',
'彩明': '彩明', '宸轩': '宸轩',
'阳驰': '阳驰', '鑫达': '鑫达',
'新舒雅': '新舒雅', '新达': '新达',
'钶玮': '钶玮',
// ... 共31个映射
};
6. 增强风险检测(V6-V8,7级原因追踪)
if (progress === 'not_started' && reqDate && daysToDue < 30)
{ risk = 'high'; reason = '未启动且交期<30天'; }
else if (combinedNote.includes('来不及') || combinedNote.includes('紧急'))
{ risk = 'high'; reason = '工厂标注紧急'; }
else if (factoryDate && latestShipDate) {
const gap = Math.floor((shipD - facD) / 86400000);
if (gap < 7) { risk = 'high'; reason = '工厂交期距最晚出货仅' + gap + '天'; }
else if (gap < 14) { risk = 'medium'; reason = '工厂交期距最晚出货仅' + gap + '天'; }
}
7. 日期解析(多格式兼容)
function parseDate(v) {
if (v instanceof Date) return v;
if (typeof v === 'number' && v > 40000) return new Date((v - 25569) * 86400000);
if (/^\d{5}$/.test(s)) return new Date((+s - 25569) * 86400000);
const m = s.match(/(\d{4})[-/.](\d{1,2})[-/.](\d{1,2})/);
if (m) return new Date(+m[1], +m[2]-1, +m[3]);
const m3 = s.match(/(\d{1,2})\/(\d{1,2})/);
if (m3) return new Date(new Date().getFullYear(), +m3[1]-1, +m3[2]);
return null;
}
8. V8 2026年数据过滤规则
// WIP大货在手订单: 仅保留下单日期(Col 3)为2026年的记录 (569→557条)
// WIP已出货明细: 保留实际出货日期或下单日期为2026年的记录 (3545→356条)
// SCI/TARGET: 按EX-fty日期过滤2026年
// ERP: 按ETD/送货日期过滤2026年
// 工厂进度: 已均为2026年数据 (无需过滤)
订单状态判定逻辑
| 状态 | 条件 | 标签颜色 |
|---|---|---|
| overdue 逾期 | EX-fty 已过 >14天 | 🔴 红色 |
| late 延误 | EX-fty 已过 1-14天 | 🟡 黄色 |
| pending 待定 | EX-fty = "PENDING" | 🔵 蓝色 |
| upcoming 即将到期 | EX-fty 在未来14天内 | 🔵 蓝色 |
| on-track 正常 | EX-fty 在14天以后 | 🟢 绿色 |
| no-date 无日期 | EX-fty 为空 | ⚪ 灰色 |
V9 关键数据发现(2026-07-13)
| 维度 | 数据 | 风险/洞察 |
|---|---|---|
| 总订单 | 1171条 (21品牌, 40工厂) | — |
| 总金额 | $23,064,994 USD | 首次实现金额追踪 |
| 总数量 | 2,125,444件 | — |
| BCI品牌集中度 | 923/1171 = 78.9% | ⚠️ 单一客户依赖风险 |
| 东方经销 | 214条 (18.3%) | ⚠️ 高风险集中 |
| EX-FTY覆盖率 | 453/1171 = 38.7% | ⚠️ 大量开发中订单未确认交期 |
| 风险分布 | 高184/中188/低778/未评估21 | 高风险占15.7% |
| 业务员 | Derek(317)/PAula(80)/EVA(56) | Derek负载最重 |
| 生产理单 | 郑小莲(162)/MARY(82)/珍(48)/慧慧(47)/NANCY(38)/珠婷(33)/李希(21)/郭(20)/Nancy(2) | ⚠️ 工作量81倍差距 |
V9 改进建议摘要(7条)
- 🔴 高风险集中在东方经销 — 214条订单中高风险占比高,需重点跟踪
- ⚠️ BCI品牌集中度78.9% — 单一客户依赖,建议拓展客户多元性
- 📋 开发中订单占比偏高 — 大量订单未进入生产,需推进转产
- 👤 理单工作量不均衡 — 郑小莲162条 vs Nancy 2条 (81倍差距),建议重新分配
- 📊 工厂进度数据完整性不足 — 仅50%有面辅料/裁剪信息,需规范录入
- 📅 EX-FTY覆盖率仅38.7% — 大量订单未确认出厂日,影响出运计划
- 🚀 供应链优化路径 — 短期(数据补全)/中期(流程优化)/长期(系统化)三阶段行动
SCOR 1.0 供应链基础秩序模型(V2.5新增)
概述
SCOR (Supply Chain Operations Reference) 是国际标准供应链运营参考模型。JGF SCOR 1.0 聚焦从"人治经验型供应链"转型为"流程数据型供应链",核心目标:先把供应链"看得见",再谈"跑得快"。
文件位置: /Users/nancychan/Desktop/JGF_SCOR_1.0模型.html
五支柱框架
| 支柱 | 核心目标 | JGF当前痛点 | SCOR 1.0 目标 |
|---|---|---|---|
| Plan 计划 | 建立需求计划模型 | 无预测,BCI集中度78.9% | 季节性指数 + 预测准确率≥60% |
| Source 供应 | 供应商资源模型 + 评分 | 40工厂无档案无评分 | 基础档案 + V1.0评分(5维度) |
| Make 制造 | 工厂产能池 + 品类优势 | 工作量81:1失衡,无产能数据 | 5个品类池 + 均衡度≤5:1 |
| Deliver 交付 | OTIF追踪 + 船期风险 | EX-FTY仅38.7%,OTIF未追踪 | OTIF≥75% + EX-FTY≥80% |
| Enable 支撑 | ERP+SCM+BI+ESG平台 | 数据完整率~45% | 看板周更 + 数据完整率≥80% |
供应商评分权重(Source)
const supplierScore = {
交期: { weight: 0.30, metrics: ['准时交付率OTD', '平均交付周期'] },
质量: { weight: 0.30, metrics: ['合格率', '返工率', '客户投诉次数'] },
成本: { weight: 0.20, metrics: ['单价竞争力', '年度降本率'] },
开发: { weight: 0.10, metrics: ['打样速度', '新品开发数'] },
ESG: { weight: 0.10, metrics: ['环保认证', '社会责任审核'] }
};
// 分级: A级≥85分(战略) / B级70-84(核心) / C级55-69(备选) / D级<55(淘汰)
成熟度评估
JGF当前整体成熟度 1.6/5 (初始级),SCOR 1.0目标 2.5/5 (可重复级):
| 支柱 | 当前 | SCOR 1.0目标 | SCOR 2.0目标 |
|---|---|---|---|
| Plan | 1.0 | 2.5 | 3.5 |
| Source | 1.5 | 3.0 | 4.0 |
| Make | 1.5 | 2.5 | 3.5 |
| Deliver | 1.0 | 2.5 | 3.5 |
| Enable | 1.8 | 3.0 | 4.0 |
23个KPI体系
| 支柱 | KPI数 | 核心指标 |
|---|---|---|
| Plan | 4 | 预测准确率 / 需求计划周期 / 季节性指数覆盖率 / 客户集中度 |
| Source | 5 | 供应商评分覆盖率 / OTD交期达成率 / 质量合格率 / 面辅料完整率 / A级供应商占比 |
| Make | 5 | 产能利用率 / 工作量均衡度 / 工厂数据完整率 / 旺季交付达成率 / 品类优势覆盖率 |
| Deliver | 5 | OTIF / EX-FTY覆盖率 / 高风险占比 / 船期确认率 / DDP成本透明度 |
| Enable | 4 | 数据完整率 / 看板更新频率 / ESG覆盖率 / 自动化率 |
每个KPI都有 当前值→SCOR 1.0目标→SCOR 2.0目标 三段式指标。
实施路线图(4阶段12个月)
| 阶段 | 时间 | 目标 | 关键交付物 |
|---|---|---|---|
| Phase 1: 透明化 | Month 1-2 | 让供应链"看得见" | 3年历史数据基线 / 40工厂档案 / EX-FTY 38.7%→60% / 面辅料50%→70% / 郑小莲分流50+单 |
| Phase 2: 标准化 | Month 3-4 | 建立SOP和评分体系 | Top20工厂V1.0评分 / 需求计划SOP / EX-FTY确认SOP / 工厂周报模板 |
| Phase 3: 系统化 | Month 5-6 | 数据驱动决策 | 需求计划模型上线 / 产能池建立 / 供应商分级运行 / OTIF追踪上线 |
| Phase 4: 优化 | Month 7-12 | 持续优化,准备SCOR 2.0 | 预测准确率≥60% / OTIF≥75% / EX-FTY≥80% / 高风险≤10% |
生成SCOR模型文档
当用户需要SCOR模型时,生成交互式HTML文档,包含:
- 左侧导航栏:总览 → 诊断 → 五支柱(Plan/Source/Make/Deliver/Enable) → 路线图 → KPI
- 每个支柱四件套:现状诊断(含V9数据) → 目标模型 → 行动计划 → KPI指标
- Chart.js可视化:雷达图/柱状图/饼图/进度条/Kraljic矩阵表/实施时间线
- 关键词:成熟度评估、供应商评分权重条、过去vs未来对比块、数据质量提升计划
SCOR模型核心设计原则
- 数据驱动 — 所有现状数据来自V9看板实际数据(非理论值)
- 四件套结构 — 每支柱: 现状诊断→目标模型→行动计划→KPI指标
- 可量化 — 23个KPI都有"当前值→1.0目标→2.0目标"三段式
- 可视化 — Chart.js图表 + 进度条 + 矩阵表 + 时间线
- 先稳定再敏捷 — SCOR 1.0聚焦建立基础秩序,SCOR 2.0才是敏捷化
Scrum-SCM 2.0 供应链敏捷优化框架(V2.6新增)
概述
Scrum-SCM 2.0 是 SCOR 1.0 之后的第二阶段策略框架。核心原则:Scrum 不是管整个供应链,而是管理变化和优化项目。 没有 SCOR 1.0 数据底座的 Scrum 只会变成不停开会。
文件位置: /Users/nancychan/Desktop/JGF_Scrum-SCM_2.0敏捷框架.html
核心理念
| 维度 | SCOR 1.0(底座) | Scrum-SCM 2.0(执行层) |
|---|---|---|
| 管理对象 | 整个供应链的流程和秩序 | 优化项目和变化响应 |
| 目标 | 透明化、标准化 | 敏捷执行、快速验证 |
| 产出 | 数据基线、SOP、框架 | Sprint交付物、决策方案 |
| 周期 | 月度-季度 | 4周 Sprint |
| 团队 | 职能组织 | 跨职能临时团队(5人) |
Scrum 角色适配
| 角色 | SCM映射 | 职责 |
|---|---|---|
| Product Owner | SCM总监/业务负责人 | 定义Sprint目标、排序Backlog、验收成果 |
| Scrum Master | 生产理单组长/运营负责人 | 清除障碍、保护团队、确保节奏 |
| Development Team | 业务+面料+采购+生产+财务(3-7人) | 自组织执行Sprint Backlog |
关键差异:SCM团队成员每天仍需处理本职工作,Scrum投入控制在每人每周8-12小时(20-30%工作时间),不像软件团队100%投入。
Sprint 四项仪式
| 仪式 | 时长 | 频率 | 核心内容 |
|---|---|---|---|
| Sprint Planning | 2小时 | Sprint第1天 | Backlog排序→Sprint Backlog+Sprint Goal |
| Daily Standup | 15分钟 | 每天9:00 | 昨天/今天/障碍 三问 |
| Sprint Review | 1.5小时 | Sprint最后一天 | Demo成果(非PPT)→PO验收 |
| Sprint Retro | 1小时 | Review之后(仅团队) | 好/差/改进 三问→1-2个改进项 |
5大标杆 Sprint 项目
| # | Sprint | 优先级 | 目标 | 团队 | SCOR支柱 |
|---|---|---|---|---|---|
| 1 | 降低美国关税风险 | P0 | 找到替代方案,建备份供应链 | 业务+面料+采购+生产+财务(5人) | Source+Make |
| 2 | 提升EX-FTY覆盖率 | P0 | 38.7%→60% | 业务+生产+采购(3人) | Deliver |
| 3 | 分散BCI品牌集中度 | P1 | 78.9%→65% | 业务+生产+财务(3人) | Plan+Source |
| 4 | 人员工作量再平衡 | P1 | 郑小莲162单→≤80单, 均衡度81:1→≤5:1 | 生产理单组+HR(4人) | Make |
| 5 | 建立OTIF交付体系 | P0 | OTIF追踪上线, 首月基线≥75% | 业务+生产+物流(3人) | Deliver |
Sprint Backlog 模板
每个Sprint包含4周任务分解:
| ID | 任务 | 负责人 | 周 | 预估工时 | 验收标准 |
| S1-01 | 拉取美国订单数据 | 业务 | W1 | 6h | 数据表可审查 |
| S1-02 | 标注HS Code + 关税 | 业务 | W1 | 4h | HS映射表完成 |
| S1-03 | 筛选越南供应商 | 面料 | W2 | 8h | ≥3家回应 |
| S1-04 | 成本模拟对比 | 采购+财务 | W3 | 10h | 含3种关税情景 |
| S1-05 | 决策报告+切换时间表 | 全团队 | W4 | 8h | PO验收通过 |
项目优先级矩阵
按 Impact × Effort 排序:
- P0 立即启动(高影响+中低投入): 关税风险、EX-FTY覆盖、OTIF体系
- P1 本月启动(高影响+高投入/中影响+低投入): BCI集中度、工作量平衡
- P2 下季度(中影响+中投入): 面辅料周期、供应商评分
SCOR-Scrum 闭环
每个 Sprint Review 成果直接更新 SCOR KPI → Sprint Retro 发现的流程问题反哺到 SCOR Enable 层 → SCOR 数据底座为下个 Sprint 提供选题依据。
生成Scrum-SCM文档
当用户需要Scrum框架时,生成交互式HTML文档,包含:
- 左侧导航栏 → 总览/前置条件/角色/节奏/项目组合/5大Sprint/集成/模板
- 每个Sprint: Sprint Goal + 4周分解 + Sprint Backlog + 成功度量卡
- Chart.js图表: 优先级矩阵(散点图) + 工作量柱状图 + Sprint时间线 + 数据循环图
- 模板区: Sprint Backlog / Daily Standup / Sprint Review议程 / 成功度量卡
Scrum核心设计原则
- 数据驱动 — Sprint选题来自SCOR KPI缺口,非拍脑袋
- 跨职能 — 每个Sprint团队必须含业务+生产+采购三条线
- 短周期 — 4周 Sprint,不允许延长;做不完就砍范围
- 可验证 — 每个Sprint有明确的"成功标准",PO验收算完成
- 先稳定再敏捷 — SCOR数据完整率≥70%后才启动Scrum
人员风险变更追踪(V2.7新增)
概述
每次构建看板时,自动对比上一次构建的人员风险快照,从两个维度追踪变化,并在改进建议Tab中生成专项分析卡片。
追踪文件: .workbuddy/personnel_risk_tracker.json(保存最近30次快照)
三大追踪维度
| 维度 | 检测逻辑 | 输出卡片 | 阈值 |
|---|---|---|---|
| 📦 新订单分配 | 人员订单数较上次增加≥2单 | 「新订单分配追踪(新增订单维度)」 | delta≥2 |
| 🔄 风险等级变化 | 人员高风险订单数变化≥3单(数据更新导致) | 「风险等级变化追踪(数据更新维度)」 | |
| 🚨 持续高风险 | 高风险占比>30% 且连续≥2次构建 | 「持续高风险人员预警」+ 深度分析 | highPct>30%, consecutive≥2 |
| 👔 业务员风险 | 业务员高风险数变化≥3单 | 「业务员风险变化追踪」 |
深度分析内容
持续高风险卡片自动分析:
- 工厂集中度: 该人员高风险订单集中在前3大工厂(名称+订单数)
- 品牌集中度: 高风险订单集中的前3大品牌
- 根因诊断: 4种可能根因(产能不足/交期偏紧/跟单方式/EX-FTY不合理)
- 行动建议: 工厂产能审核 → 分摊订单 → 检查EX-FTY执行率
追踪数据流
Excel更新 → build_dashboard_v9.js → 加载上次快照 → 对比分析
→ 生成report cards → 注入改进建议Tab → 保存本次快照
触发方式
- 每次运行
build_dashboard_v9.js自动触发 - 第一次构建:创建初始快照,无对比输出
- 后续构建:自动对比并输出分析
- 快照保留最近30次,超出自动清理
与改进建议的关系
人员风险追踪卡片排在改进建议Tab最前面,用分隔线与静态建议区分:
- 上半部分:人员风险追踪(动态,每次对比变化)
- 下半部分:静态分析建议(每次重新评估,如BCI集中度/工厂进度覆盖等)
V8 vs V9 对比
| 维度 | V8 | V9 |
|---|---|---|
| 数据源 | WIP主文件+SCI+TARGET+ERP+15工厂(多文件) | JGF综合追踪总表(单文件10 Sheet) |
| 订单数 | 557条(2026过滤) | 1171条(全量) |
| 金额 | 未追踪 | $2306万USD |
| 工厂进度 | 284条(15工厂) | 390条(21工厂) |
| 新增Tab | — | 样品进度/面辅料采购/海外客户 |
| 风险评估 | 7级原因追踪 | 3级+自动计算(基于交期) |
| 海外客户 | 无 | LUX STUDIO+LAND N SEA/GIII |
| Excel导出 | ✓ (7 Sheet) | 暂未实现 |
模型自我迭代引擎 V1.1(V2.8新增)
核心理念
模型不是静态的——每次构建后,系统会自动对比本次与上次构建的7项关键指标,如果检测到显著变化,自动触发版本升级。这是一个"学会自我成长"的机制。
七维检测体系
| 维度 | 检测内容 | 触发阈值 | 升级级别 |
|---|---|---|---|
| 📊 DATA_COMPLEXITY | Sheet数量变化 | 任何变化 | MINOR |
| 📦 DATA_VOLUME | 订单总量变化率 | >10% | PATCH |
| 🔍 ANALYSIS_DEPTH | 检测维度数量变化 | 任何新增 | MINOR |
| ⚠️ RISK_PATTERN | 高风险占比波动 | >20百分点 | PATCH |
| 🗂️ DATA_SOURCE | 新增数据Sheet | 任何新Sheet | MINOR |
| 🎯 RISK_TRACKER | 人员风险追踪激活 | 首次激活 | MINOR |
| 🏭 FACTORY_LANDSCAPE | 工厂数量变化 | ≥3家 | PATCH |
版本号规则
- PATCH (1.1.0→1.1.1): 数据量变化、风险格局波动、工厂增减
- MINOR (1.1→1.2): 新增分析维度、数据源扩展、风险追踪激活
- MAJOR (1→2): 完全重构、范式转变(预留,当前未触发)
产出文件
| 文件 | 位置 | 用途 |
|---|---|---|
model_version.json |
.workbuddy/ |
结构化版本清单,记录每次构建统计和升级决策 |
model_changelog.md |
.workbuddy/ |
人类可读迭代日志,仅记录实际版本升级 |
| 看板"改进建议"Tab | HTML | 显示模型自我迭代信息卡片 |
自迭代流程
Excel数据 → 构建看板 → 收集BuildStats(7维) → 加载上次BuildStats
↓
对比差异 → 触发阈值?
↓ ↓
是: 自动升级 否: 稳定不变
↓
写入changelog + manifest
↓
看板"改进建议"卡片显示迭代信息
构建日志格式
每次构建结束时输出:
🧬 自迭代: v1.1.0 ← 版本无变化(稳定)
🧬 自迭代: v1.1.0→v1.2.0 [MINOR] ← 自动检测到升级
---
## 常见问题与解决
### 构建问题
1. **工厂文件不可访问**: WeMail缓存文件被清理 → 沿用上一版本数据,在构建日志中标注
2. **xlsx库TimeOut**: 处理大文件(160MB)时可能超时 → 设置 `--timeout=180000`
3. **Desktop写入沙箱限制**: 无法直接写Desktop → 先写到工作目录再 `cp` 到桌面
4. **模板字符串冲突**: JS中 `${}` 在生成HTML模板时需特殊处理 → 使用字符串拼接
### 数据质量
5. **面料交期覆盖率低**: WIP主文件中仅22%订单有面料交期 → 建议完善面料计划数据录入
6. **PO匹配不完整**: 25%工厂记录未匹配到WIP → 定期审查工厂名称映射表
7. **Col 13"跟单员"实际是ETA日期** (V9) → 解析时不可当人员字段使用
8. **已出货明细Col 22是加工费** (V8) → 不用于出货追踪,仅用于金额参考
### V9特有问题
9. **Col 19进度状态含渠道信息混合** — 部分值如"LUX专供-生产中"混合了渠道和状态,解析时需拆分
10. **V9无Excel导出** — 可参考V8的`export_excel_v8.js`模式,读取JSON后用xlsx库导出
---
## 注意事项
1. **Runtime隔离**:始终使用 managed Node.js (`~/.workbuddy/binaries/node/versions/22.22.2/bin/node`) + 隔离的 node_modules (`~/.workbuddy/binaries/node/workspace/node_modules`)
2. **xlsx库安装**:`npm install xlsx` 在 `~/.workbuddy/binaries/node/workspace/`
3. **数据文件路径**包含中文和空格,需正确引号包裹
4. **Chart.js** 通过 CDN 加载,离线环境需改用本地文件
5. **160MB+的WIP主文件**每次构建需完整读取,建议在SSD上操作
6. **工厂报告为可选数据**,无此数据时看板仍可正常生成
7. **V9单文件模式**数据更新最简单——只需替换Desktop上的JGF xlsx文件即可
---
## 培训资料能力(V2.4新增)
Skill 已学习 JGF 三套培训资料,可根据需求生成各类培训文档:
### 已掌握的资料
| 资料 | 格式 | 内容 |
|------|------|------|
| 外贸供应链管理12个月培训体系 | PPTX | 15页,零基础→独立上手,覆盖采购/生产/报关/物流/跟单 |
| 供应链管理12个月培训体系 | PPTX | 15页,刘宝红+丰田TPS高阶版,偏战略和体系 |
| B端外贸供应商考核体系 | XLSX | 5 Sheet,V1.0(当前)→V2.0(1年后)→V3.0(2年后)三级进化,参考SHEIN |
| **SCOR 1.0 基础秩序模型** | **HTML** | **8个板块,5支柱框架,23个KPI,4阶段12个月路线图** |
### 可生成的资料类型(含SCOR)
- **新人入职培训**:BOM拆解、采购5步走、订单全生命周期
- **业务员/跟单员手册**:订单跟踪表模板、异常处理SOP、物流单证检查清单
- **供应商管理课件**:考核指标解读、评分卡使用说明、供应商分级标准
- **管理层汇报PPT**:供应链诊断报告、改善建议、KPI仪表盘解读
- **精益生产培训**:7大浪费识别、5S推行指南、价值流图绘制
- **采购谈判培训**:Kraljic矩阵应用、Should Cost模型、BATNA策略
- **SCOR战略框架**:五支柱模型、成熟度评估、KPI仪表盘、实施路线图
- **Scrum敏捷方案**:Sprint Backlog模板、Daily Standup议程、Sprint Review流程、优先级矩阵、5大标杆Sprint方案
详细培训体系结构见 `references/training-system.md`