✨ 系列第56篇|从零开始搭建标准ERP架构
👣 接续第55天“工艺配置状态管理”,今天我们进入 生产计划的“精细化执行层”
🔧 目标:实现“MPS主计划 → 自动分解为零件工序任务”
🎯 关键点:触发器 + 查找内容 + 新增记录
💡 核心价值:把“大订单”变成“可执行的小任务”
🔍 回顾:我们已经做了什么?
在前几篇中,我们完成了:
建立了完整的 物料编码体系
完成了 工艺配置状态判断
实现了 零件工艺配置的闭环管理
现在,所有“已配置工艺”的零件都具备了明确的加工路径。但问题来了:
❓ 如何把一个“整单生产任务”拆成多个“具体工序”?
❓ 每个工序对应哪个零件?数量多少?什么时候做?
❓ 能不能自动完成,而不是手动填写?
答案是:用“自动化流程”来驱动“计划分解”!
✅ 步骤一:新建模块与数据表
✅ 新建文件夹:7.5 零件计划
用于存放所有与“零件级计划”相关的数据
包括:零件分解、工序排程、报工明细等
✅ 新建数据表:零件分解
字段配置如下(均为自动化写入字段):
排程线体:关联自 MPS 计划生产任务号:来自 MPS 计划编码:来自物料编码名称:来自物料编码零件工艺:来自工艺明细表数量:来自 MPS 计划交期:来自 MPS 计划分解时间:自动填充当前时间
✅ 特别说明:
所有字段均不设公式,全部由流程自动填充
保证数据一致性与可追溯性

✅ 步骤二:创建“零件-排程”视图
✅ 在 MPS计划 表中新建视图:零件-排程
筛选条件:
是否配置工艺= 已配置工艺排程顺序= 为空
✅ 作用:
只显示“已完成工艺配置”且“尚未分解”的任务
是启动自动分解流程的前提条件
避免对未配置工艺的任务进行无效分解
✅ 示例输出:

✅ 步骤三:配置自动化流程(核心)
✅ 触发器设置:修改记录时
🔹 触发条件:
数据表:MPS计划
字段被修改:分解工序计划(复选项)
条件:该字段值变为“是”
✅ 说明:
当用户勾选“分解工序计划”时,触发自动分解流程

✅ 流程步骤详解:
第2步:查找内容 → 获取原始计划数据
数据表:MPS计划
查找范围:第1步触发的记录
查找字段:生产任务号, 编码, 名称, 数量, 交期, 排程线体, 是否配置工艺, 分解工序计划
✅ 目的:
获取需要分解的完整信息

第3步:查找内容 → 查询工艺明细
数据表:零件工艺明细表
筛选条件:
零件编码= 第2步中的A 编码
查找字段:零件名称, 零件编码, 零件工艺, 已配置工艺
✅ 目的:
获取该零件的所有工艺工序
如果没有找到,则跳过(或提示错误)

第4步:新增记录 → 写入零件分解表
数据表:零件分解
设置字段值:
编码← 第3步中的A 零件编码名称← 第3步中的A 零件名称零件工艺← 第3步中的A 零件工艺数量← 第2步中的123 数量交期← 第2步中的交期排程线体← 第2步中的排程线体生产任务号← 第2步中的生产任务号分解时间← 自动填充当前时间
✅ 效果:
每一条工艺工序都会生成一条独立的“零件分解记录”
例如:A1零件有4道工序 → 生成4条记录

📊 实际效果演示(以图为例)
🟩 图1:零件分解 表 —— 分解结果展示

✅ 每条记录代表一个“可执行的工序任务”
🛠️ 为什么这样设计?背后逻辑解析
| 设计点 | 原因 |
| 使用“触发器”而非手动按钮 | 实现无感操作,提升效率 |
| 多步查找 + 新增记录 | 确保数据准确、完整、一致 |
| 不使用公式字段 | 避免计算错误,确保可控性 |
| 分解后自动写入时间戳 | 支持后续审计与追踪 |
| 视图隔离 | 控制流程入口,防止误操作 |
✅ 这套模型,其实就是一个 微型MES中的“计划分解引擎”!
