十三、常见问题(FAQ)
1. 点【生成】报"编码规则不存在"(错误码 1040110000)
原因:该业务的编码规则数据缺失(常见于手工建库、跨环境迁移数据后)。
处理:到 基础数据 → 编码规则 检查对应规则是否存在。各业务规则编码对照(常用):
| 业务 | 规则编码 |
|---|---|
| 物料编码 | MD_ITEM_CODE |
| 物料分类编码 | MD_ITEM_TYPE_CODE |
| 客户编码 | MD_CLIENT_CODE |
| 供应商编码 | MD_VENDOR_CODE |
| 车间编码 | MD_WORKSHOP_CODE |
| 工作站编码 | MD_WORKSTATION_CODE |
| 批次编码 | WM_BATCH_CODE |
| 采购入库单编码 | WM_ITEM_RECEIPT_CODE |
| 销售出库单编码 | WM_PRODUCT_SALES_CODE |
| 销售退货单编码 | WM_RETURN_SALES_CODE |
规则不存在时:新建规则(编码按上表填写)并添加分段,配置方法见 2.8 编码规则。
2. 销售退货选不到批次(批次列表为空)
销售退货添加行时,批次选择器按 退货单表头客户 + 销售订单号 过滤批次主数据。查不到数据的根本原因通常是:批次主数据(mes_wm_batch)里的客户、销售订单号字段是空的。
先理解:批次从哪里来
批次只在三个场景自动生成,没有任何手工新增入口:
| 生成场景 | 携带客户/销售订单号吗 |
|---|---|
| 采购入库 | ❌ 只带供应商、采购订单号 |
| 生产报工产出 | ✅ 带工单的客户、来源销售订单号 |
| 委外入库 | ✅ 带工单客户 |
出库、退货等单据只是引用已有批次,不会创建或修改批次。
逐项排查
| 检查项 | 说明 |
|---|---|
| ① 物料批次配置是否开启"客户/销售订单号"维度 | 未开启时生成的批次不落这两个字段 → 2.3 批次配置 |
| ② 批次的生成来源 | 采购入库的批次永远没有客户维度,无论如何配置 |
| ③ 生产工单是否带客户/来源单号 | 工单缺客户 → 报工批次也没有客户 → 10.3 生产工单 |
| ④ 退货单表头"销售订单号"填的值 | 应填当初的销售订单号;填成退货单自己的编号必然匹配不到 |
快速处理方案
- 新数据:开启批次维度的客户/销售订单开关 + 生产工单带客户来源单号,之后报工生成的批次即可被退货选中;
- 存量数据:由管理员按业务事实回填
UPDATE mes_wm_batch SET client_id=..., sales_order_code=... WHERE ...; - 临时方案:清空退货单表头的"销售订单号",批次列表即不再按订单号过滤(仍按客户过滤)。
3. 保存行时报"批次客户不匹配"
退货单行的批次校验规则:批次归属客户必须与退货单表头客户一致。批次主数据中客户为空(NULL)时永远不等于任何客户,必报此错。
处理:确认批次是否属于该客户 → 回填批次的 client_id(同 FAQ 2),或改选正确客户名下的批次。
4. 保存行时报"该物料已启用批次管理,必须选择批次"
物料开启了"批次管理"(见 2.3)后:
- 出入库/退货行必须选择批次,无法留空;
- 若业务上不需要批次管理,关闭物料的批次管理开关即可(已有历史批次的物料不建议关闭)。
5. 出入库时报"仓库/库区/库位已冻结"
仓储档案支持冻结保护(见 3.1 仓库设置):仓库、库区、库位、库存记录任一层被冻结,该位置的出入库事务都会被拒绝。
处理:到 仓储设置 → 仓库设置 找到对应层级,解除冻结标记。冻结常用于盘点锁库(配合 库存盘点),盘点完成后记得解冻。
6. 出库时提示库存不足
依次检查:
- 库存现有量 中该 物料+库位+批次 的可用数量是否真的足够;
- 是否有未完成的出库单/调拨单已锁定库存(执行拣货未出库的单一);
- 库存是否在冻结状态(FAQ 5)。
7. 打印时没有弹出模板选择
自定义打印的模板选择逻辑:该单据类型没有启用模板时直接用兜底版式打印;只有一个模板时直接打印;多个模板才弹选择窗。想配置模板见 打印中心:模板管理。
📖 相关文档:
