半成品汇总
这张表统计的是非预生产的普通生产计划单里,按物料汇总出来的半成品用量。它和预生产半成品汇总是互补的一对:一张看提前备的,一张看正常排的,两张加起来才是这段时间半成品线上的全量。
功能路径:生产调度 → 预生产报表 → 半成品汇总

一、功能概述
菜单位置:生产调度 → 预生产报表 → 半成品汇总(页面地址 /admin/SimpProduce/semisummaryreport/)
| 用途 | 说明 |
|---|---|
| 总量 | 普通排产用了多少半成品,按物料一行 |
| 金额 | 对应的金额规模 |
| 分摊 | 每个物料来自几张计划单 |
| 对照 | 与预生产半成品汇总相加得到半成品总需求 |
只读报表,无任何写入按钮。
二、界面布局说明
| 区域 | 内容 |
|---|---|
| 查询条 | 单据日期 快捷档 今天 / 昨天 / 本周 / 上周 / 本月 / 上月 / 自定义;物料名称 文本条件;右侧 查询 / 重置 / 导出 / ★方案 |
| 已选条件 | 默认「单据日期 等于 本月」 |
| 列表 | 七列,与预生产半成品汇总逐列相同 |
| 分页 | 每页 100 条,档位 20/30/50/100/200 |
| 合计行 | 没有 |
| 高级筛选 | 没有,只有日期与物料名称两项 |
三、列与口径
| 列 | 来源 | 说明 |
|---|---|---|
| 物料ID | 计划单明细 fInvID | 物料内码 |
| 物料名称 / 规格 / 单位 | 物料档案 | 单位取基础单位 |
| 汇总数量 | SUM(fInputCount) | 加粗,两位小数,默认按它倒序 |
| 汇总金额 | SUM(fInputCount × fPrice) | 单价为空按 0 计 |
| 单据数 | COUNT(DISTINCT 计划单ID) |
与预生产半成品汇总的唯一差异
| 页 | 预生产标志条件 | 空值算不算进来 |
|---|---|---|
| 预生产半成品汇总 | fIsPreproduction = 1 | 不算 |
| 半成品汇总 | fIsPreproduction 为 0 或空 | 算 |
其余三条门径(单据状态 ∈ 已生效/已关闭、排除 fRemarkId = 3 的分解明细行、日期区间)两张表完全一致。
这条差异有一个很实际的后果:客户端 ERP 建的历史计划单,那一列常常根本没写过值,于是它们全部落在本页,一行都不会出现在预生产页。两张表的行数加起来对不上总单数时,先想到这里。
四、一次真实查询长什么样
测试账套本月查询返回 7 行(按汇总数量倒序,逐单元格取自界面):
| # | 物料ID | 物料名称 | 规格 | 单位 | 汇总数量 | 汇总金额 | 单据数 |
|---|---|---|---|---|---|---|---|
| 1 | 6237 | 杨枝甘露1杯 | 个 | 10.00 | ¥160.00 | 1 | |
| 2 | 5147 | 葡萄软欧 | 个 | 6.00 | ¥180.00 | 1 | |
| 3 | 5173 | 巧克力甜甜圈 | 个 | 5.00 | ¥49.00 | 1 | |
| 4 | 5176 | 草莓女王卷 | 个 | 5.00 | ¥79.00 | 1 | |
| 5 | 4995 | 红豆甜粽 | 个 | 3.00 | ¥9.00 | 1 | |
| 6 | 3203 | 榴莲披萨 | 6寸|植 | 2.00 | ¥76.00 | 1 | |
| 7 | 4447 | 鲜肉粽子 | 个 | 2.00 | ¥14.00 | 1 |
几个可以直接读出来的信息:
- 规格整列为空:这批物料的档案没填规格,空值不影响分组与汇总;
- 单据数全是 1:每个半成品的量都来自一张计划单,排产没有拆碎;
- 单位不统一:第 6 行的单位是「6寸|植」而不是「个」——这一列取的是物料档案的基础单位文本,档案里怎么填就怎么显示;
- 单价各档都有:红豆甜粽 3.00 件 ¥9.00(约 3 元/件),巧克力甜甜圈 5.00 件 ¥49.00(约 9.8 元/件),说明本页金额是按各明细行自己的单价累加的,不是统一成本价。
五、业务操作步骤
- 生产调度 → 预生产报表 → 半成品汇总;
- 单据日期 选区间;
- 需要看某一款,在 物料名称 填关键字,匹配方式可切 包含 / 等于 / 开头为 / 结尾为 / 不等于 / 不包含 / 介于;
- 点 查询;
- 要总需求就把本页与预生产半成品汇总同一区间的 汇总数量 相加(导出后在表格里做更快,页面本身没有合计行)。
六、导出与分页
- 文件名
半成品汇总_年月日时分秒.csv,UTF-8 带 BOM; - 导出当前条件下全量显示列,上限 10000 行;
- 页面分页不影响导出范围。
七、典型使用场景
场景一:算清半成品的总需求
背景:半成品仓对不上账,要先知道计划一共要多少。 路径:同一区间分别查本页与预生产半成品汇总,导出两份 CSV 按物料ID 合并。 注意:两张表都排除分解明细行、都只认已生效/已关闭,所以合起来就是「计划口径的总需求」,但仍不等于实际领用——实际领用看原料领出单和配料领入单。
场景二:找出排产拆得太碎的物料
背景:某个半成品的 单据数 明显大于其他行。 处理:拿这个物料去生产中心看是哪几张单,能合并的合并;或改用生产看板的半成品缺口视图统一排。
八、权限控制与前置条件
- 「生产调度」菜单组下,无单独功能权限项,登录即放行;
- 前置:账套里要有已生效或已关闭的普通生产计划单(预生产标志不为 1);
- 计划单由生产中心新增并生效。
九、常见问题
这张表为什么叫「半成品汇总」却列出了蛋挞、披萨这类成品? 本页统计的是生产计划单明细行上的物料,并不校验这个物料在档案里是不是半成品类别。计划单上排了什么,这里就汇总什么。名字里的「半成品」指的是这条业务线,不是筛选条件。
本月共 0 条。 依次核:区间(默认本月)、单据状态(草稿不进)、预生产标志(标志为 1 的会去预生产半成品汇总,不在本页)。
两张表的行数加起来不等于计划单明细的物料种类数。 正常。同一物料可能两张表各出现一次;也可能因为规格/单位被改过而在一张表里拆成两行。
能不能只看某一家分店? 不能,三张预生产报表都没有分店条件。
汇总数量能不能自动合计? 页面没有合计行(七列都没配底部汇总)。要总量请导出后求和。
与客户端同名报表数不同。 客户端老窗体走半成品完工台账 + 配方展开,数量取批产量与配方用量,还带班次/生产组维度;网页端只汇总计划单明细的录入数量。两套口径,各自内部一致即可,不要互相验证。
