工艺配方
工艺配方是一个成品(或半成品)的用料清单:做一批要放哪些原料、每种放多少、损耗多少、要经过哪些工序。它同时是这张清单的管理页——建配方、改用量、确认、停用都在这里,点进某一行则进入配方编辑器,逐层展开原料树。
功能路径:生产调度 → 配方管理 → 工艺配方

一、功能概述
菜单位置:生产调度 → 配方管理 → 工艺配方(页面地址 /admin/SimpProduce/sppcreatebom/)
| 用途 | 说明 |
|---|---|
| 建配方 | 给成品/半成品创建配方根,之后在编辑器里录原料 |
| 确认配方 | 只有确认过的配方才会被排产、配料、机单读取 |
| 改配方 | 已确认的先取消确认,再改用量 |
| 停用配方 | 取消确认,或标记研发失败 |
| 看状态 | 六个标签按配方状态筛,一眼看出哪些还没定义 |
二、界面布局说明
| 区域 | 内容 |
|---|---|
| 状态标签 | 全部 / 待定义 / 待确认 / 已确认 / 待升级 / 物料已删除,每个标签右侧带条数 |
| 页签 | 产品 / 配方 |
| 查询条 | 关键字(包含 / 等于 / 不等于),匹配物料编号、名称、规格;商品类别 下拉 |
| 工具栏 | 勾选数据行后出现统一的 批量操作 下拉(创建配方 / 编辑配方 / 确认 / 取消确认 / 研发失败);右上角 查询、重置 |
| 列表 | 物料类型 / 物料分类 / 物料编号 / 物料名称 / 配方信息 / 条码 / 物料规格 / 基础单位 / 配方状态 / 修改中 / 可生产 / 可分解 |
| 分页 | 每页 50 条,可切换 20 / 30 / 50 / 100 / 200 |
配方信息 列形如「共 3 版」,点开是这条物料的配方版本入口;可生产、可分解 是两个开关,点一下立即保存(回执「已更新」),分别控制分店能不能生产、成品能不能往下拆解。待定义的物料还没有配方根,这两个开关点不动,会提示「配方不存在或尚未定义,无法修改」。
工具栏按钮收在一个下拉里是因为按钮超过两个,前端统一折叠。没勾选任何行时点下拉里的任一项,提示「请先勾选数据行」。
三、配方状态怎么看
「配方状态」不是简单的一列状态值,而是系统对整棵树的判断。列表里会出现这九种文字:
| 状态文字 | 含义 |
|---|---|
| 未定义配方 | 成品/半成品还没有建配方 |
| 配方未确认 | 有配方,但是草稿状态 |
| 配方已确认 | 可用;排产与配料只认这一种 |
| 配方已取消 | 曾经确认过,被取消确认了 |
| 配方已删除 | 配方被删掉(历史数据里才会出现) |
| 物料已删除 | 物料档案本身被删了 |
| 配方下级含有删除物料 | 配方里引用的某个原料已被删除 |
| 配方下级含有待确认半成品 | 配方里有个半成品,它自己的配方还没确认 |
| 配方下级含有未定义配方半成品 | 配方里有个半成品,它根本还没有配方 |
前六种标签(全部 / 待定义 / 待确认 / 已确认 / 待升级 / 物料已删除)就是把上面这些文字归类。待升级 指配方本身确认了,但下级半成品的配方还没确认或没定义——这类配方排产时会出问题,值得优先处理。
行尾操作按状态给不同按钮:待定义给「创建配方」,待确认给「查看 + 审核」,已确认给「查看 + 编辑」,其余只给「查看」。已确认还能加一个「删除」。
四、批量操作
勾选一行或多行,点 批量操作,五项动作:
| 动作 | 对状态的要求 | 行为 | 确认语 |
|---|---|---|---|
| 创建配方 | 物料是成品/半成品且还没有配方 | 建配方根,状态=未确认 | 是否为选中的待定义物料创建配方?(仅成品/半成品可建) |
| 编辑配方 | 无 | 打开配方编辑器(多选只开第一行) | — |
| 确认 | 未确认 / 已取消 | 整树翻成已确认,重算成本 | 您是否要进行配方确认? |
| 取消确认 | 仅已确认 | 整树退回已取消,并删掉已确认时生成的用料快照 | 您是否要取消配方确认? |
| 研发失败 | 仅已确认 | 把整树快照进「研发失败配方」,原配方退回已取消 | 您是否要将选中配方标记为研发失败? |
批量执行的回执按结果拼:{动作}成功 N 个;有跳过时追加 跳过 N 个(首条原因);有失败时追加 失败 N 个(首条原因)。全部失败只显示红字提示。
创建配方成功后提示「创建配方成功 N 个(可在编辑器中继续录入原料)」,单条创建的回执是「配方已创建(未确认状态),请继续录入原料!」。创建时如果物料不是成品/半成品,提示「该物料不是成品或半成品!」;该物料已有配方则提示「该物料已存在配方,请直接编辑!」。
确认失败的六种原因(都是原文提示):
| 提示 | 怎么处理 |
|---|---|
| 没有设置任何原料! | 进编辑器加原料行 |
| 物料 [编号 名称] 物料已经被删除! | 换掉这条原料或恢复物料 |
| 物料 [编号 名称] 物料未输入批用量! | 批用量必须大于 0 |
| 半产品批用量管理,至少启用一种搅拌缸! | 在「批用量管理」页签启用至少一个缸 |
| 启用工序配方批量用设置只允许设置一个搅拌缸,只能启用一个搅拌缸! | 只保留一个启用的缸 |
| 半产品批用量管理批用量不能为0![缸号 缸名] | 给启用的缸填批用量 |
另外,同时启用「按工序核算用量」与「校验工序用量」两个开关时,还会比对辅助用量与工序用量合计,不一致提示「物料 [编号 名称] 的辅助用量与工序用量合计不一致!」。确认整体失败统一提示「配方确认失败:<原因>」,成功提示「配方已确认!」。
取消确认的代价:状态退回已取消,已确认时生成的用料快照被清空,成本不回滚。之后再确认是重新算一遍,所以改配方要一步改到位,别反复确认/取消。
五、配方编辑器
在列表里点 编辑配方(或行尾的查看/编辑)会新开一个页签,标题形如「配方编辑器(0001)」。
左树 是配方的层级:根是当前物料,下面挂着原料与半成品;子半成品带自己的配方时还能继续展开。树默认全展开,根行加粗,名称后面跟着批产量。顶部输入框可以按物料编号或名称回车定位到配方根。
八个页签:
| 页签 | 内容 | 能改吗 |
|---|---|---|
| 配方基本信息 | 原料明细表 | 能,单元格失焦即存 |
| 批用量管理 | 搅拌缸 × 批用量 | 能,整表提交,要按保存 |
| 配方工序管理 | 工序 × 用量、工价 | 能,整表提交,要按保存 |
| 营养成分 | 营养数据 | 只读 |
| 面团分解 | 面团拆分数据 | 只读(另有粘贴 Excel 导入) |
| 可用物料 | 这条配方可用的料 | 只读 |
| 配方多级展现 | 多层展开的用量视图 | 只读 |
| 配方说明 | 文字说明 | 只读 |
配方基本信息 的明细列:顺序、物料编号、名称、规格、单位、批用量、批用量(克)、损耗率、单位用量、单个用量、成本价、成本、状态、备注、投料顺序、配方权限、修改人员、修改时间,后面追加每个已启用工序的动态列与「工艺批用量|汇总」。底部合计行写「合计(公斤 / 克 / 单个 / 成本):」,并注明「兑换规则:配方原料明细的用量 = 可用料的用量 × 兑换比例(以基础单位为标准)」。
保存时机是这套界面最容易踩的地方:
- 配方基本信息的单元格改完点别处就保存,没有保存按钮,成功弹「已保存」;保存失败会把显示值还原成原值;
- 批用量管理与配方工序管理必须点页签里的 保存 才落库;
- 第一次打开批用量管理,系统会把所有未删除的搅拌缸补成行(未启用);第一次打开工序管理同理补工序行——只是打开也会写库,但不会改你的用量。
两个损耗率口径:明细单元格里填的是百分数 0–100(提示「损耗率必须在 0-100 之间」),而「批量损耗率」弹窗要求的是小数 0.00–1.00(提示「请正确输入损耗率!」「损耗率必须在0.00和1.00之间!」)。填 5 没生效、填 0.05 才生效,说的就是这个差别。
明细的增删:新增弹窗输物料编号,成功提示「已新增,请录入用量」,新行用量为 0,需要自己填。拦截语:物料 X 不存在 / 不能添加自身 / 该物料已在配方中 / 产品结构首尾连接,请重新定义! / 该配方已确认,请先取消确认后再修改!。删除明细前确认「确定删除选中的 N 行明细吗?」,删除只是把这行从树上摘掉,不是物理清空。
编辑器的工具栏:确认 / 取消确认 / 删除配方 / 研发失败 / 复制配方 / 修改此BOM / Excel导入 / 批量损耗率 / 按原料定位 / 修改历史 / 刷新。选中子节点时,确认、取消确认、研发失败三个按钮不可用——这三个动作只对配方根生效。
几个好用的小工具:
| 工具 | 用途 | 关键提示 |
|---|---|---|
| 复制配方 | 把当前配方整份复制到另一个物料 | 「配方复制成功(新配方为未确认状态)」;目标已有配方会被覆盖 |
| Excel导入 | 按「物料编号 / 物料名称 / 批产量用量(公斤) / 批产量用量(克) / 损耗率 / 备注」列序粘贴批量导入 | 「导入完成:新增 N 行」;失败提示物料不存在或不能添加自身 |
| 批量损耗率 | 一次改多行损耗率 | 填 0.00–1.00 |
| 按原料定位 | 查这个原料被哪些配方用到 | 空态「该原料没有被已确认/停用配方引用」 |
| 修改历史 | 看配方的变更记录 | 只读;没有记录时为空 |
已确认就锁死:明细单元格、批用量、工序、损耗率、删除明细,在已确认状态下全部返回「该配方已确认,请先取消确认后再修改!」;删除配方根本身则提示「该物料已经确认,不能删除!」。
删除配方 的确认语是「确定要删除该配方吗?删除后原料行一并移除,可在总览页重新创建!」。删完之后没有回收站可还原,列表里该物料回到「待定义」,可以重新创建——但原料得重新录(或用复制配方/Excel导入搬回来)。
六、常见问题
问:配方明明录好了,排产时还是说没有配方? 答:先看配方状态是不是「配方已确认」。未确认、已取消都不参与排产。如果状态显示「配方下级含有待确认半成品」,说明这条配方引用的半成品自己的配方还没确认,要先把子配方确认掉。
问:为什么我不能改这条配方的用量? 答:已确认的配方是只读的。先取消确认,改完再确认。取消确认会清空用料快照,操作前确认这段时间没有正在跑的生产计划。
问:删除配方后能找回吗? 答:网页端没有配方的回收站。物料会回到「待定义」,重新创建配方是空的,原料要重新录。所以「停用」比「删除」安全——取消确认就够,配方还在。
问:损耗率填 5 显示成 0.05,或者根本不生效? 答:明细单元格吃百分数(0–100),批量损耗率弹窗吃小数(0.00–1.00)。两处口径不同,按提示范围填。
问:批用量管理里少了一个搅拌缸? 答:批用量管理只自动补「类型为空」的未删除搅拌缸。某只缸如果在老系统里被设过类型,它不会自动出现在这里。确认前需要用的缸,先在搅拌缸管理里核对。
问:改了配方,为什么门店机单还是旧的? 答:门店机单展开只认已确认的配方。改完要重新确认,并且配料管理要重新「计算配料需求」才会按新配方出原料。
问:列表里有些物料看不到配方信息列的内容? 答:待定义的物料没有配方根,配方信息列是空的,状态显示「未定义配方」。勾上它点「创建配方」即可。
