4. 供应商批次信息采集与录入

批次关联管理的第一道关口不是系统配置,而是数据本身。如果供应商批次号在录入时格式混乱、日期口径不一、计量单位混用,后续的收货关联、库存追溯、召回定位都会建立在不可靠的基础上。本节围绕三个问题展开:批次信息从哪里来、进来之后如何统一口径、以及用什么规则把错误挡在入库之前。

一、三条采集渠道及其适用边界

食品企业的供应商批次数据通常来自三个方向,各有明确的适用场景和固有缺陷,实际工作中往往是组合使用而非三选一。

ERP 采购与收货模块是最主要的渠道。采购订单、到货通知、收货单在 ERP 中流转,批次号一般由收货人员在收货界面录入或由供应商提前在 ASN(到货通知)中提供。这条渠道的优势是数据直接进入业务主流程,与订单、发票、质检单天然关联;风险在于供应商在 ASN 中填写的批次号可能与其实际送货标签不一致,形成"单货不符"。

WMS 仓储管理系统负责实物层面的批次采集。收货上架时通过扫码枪读取托盘或外箱标签上的批次号,形成库位—批次—数量的对应关系。WMS 的数据更贴近实物,但它的批次号来源仍是标签,如果标签本身印错,WMS 只会忠实地记录错误。

手工单据是兜底渠道,适用于供应商信息化程度低、临时补货、赠品或样品到货等场景。纸质送货单上的批次号由供应商手写或打印,字迹、格式、完整性都难以保证,录入时最容易出错,也最需要后续校验规则兜底。

三条渠道的关键差异在于"批次号由谁生成、在哪个环节第一次被记录"。理想状态下应以供应商实际标签为准,ERP 和 WMS 都向标签对齐,而不是各自维护一套编号。

供应商批次信息采集与标准化链路 ERP 采购/收货 订单 · ASN · 收货单 批次号由供应商预填 WMS 仓储收货 扫码枪读取实物标签 库位—批次—数量绑定 手工单据 纸质送货单 · 手写批次 临时补货 · 样品 · 赠品 数据标准化 日期 → YYYY-MM-DD 单位 → 统一基本计量单位 批次号 → 规则模板归一 供应商编码 → 主数据映射 录入校验规则 ① 必填:批次号/生产日期/数量 ② 格式:正则匹配批次模板 ③ 逻辑:生产日期 ≤ 到货日期 ④ 唯一:同供应商批次不重复 ⑤ 关联:批次号与标签一致 ⑥ 范围:保质期剩余天数阈值 校验通过 → 入库 生成批次主档,建立关联 拦截/退回 补录或联系供应商 注:三条渠道最终都向供应商实物标签对齐,标准化与校验是统一入口

二、数据标准化的三个核心维度

日期格式。同一批到货数据里,生产日期可能写成"2024/3/5""2024.03.05""24年3月5日""05-Mar-24",甚至只写"3月5日"而缺年份。统一规则是全部转换为 YYYY-MM-DD 的 ISO 格式存储,显示层可按需本地化。转换时必须处理歧义:03/05/2024 在美式口径下是 3 月 5 日,在欧式口径下是 5 月 3 日,因此录入界面应强制使用日期选择器而非自由文本,从源头消除歧义。对于只有月和日的单据,需结合到货日期推断年份,并标记为"推断值"供复核。

计量单位。供应商送货单上的"1 箱""1 件""1 托"含义因供应商而异。标准化要求建立单位换算表,把采购单位转换为库存基本计量单位(如千克、升、个)。例如某调味品供应商以"箱"送货,每箱 24 瓶、每瓶 500 毫升,则 1 箱 = 12 升。换算系数必须维护在物料主数据中,而不是每次录入时手工计算,否则同一物料在不同收货单上会出现不同的换算结果。对于无法整除或存在损耗的单位(如散装称重),应保留原始数量和单位,同时记录换算后的基本单位数量,两者并存以便追溯。

批次号规则。这是最容易出问题的维度。不同供应商的批次编码逻辑差异极大:有的用"生产日期+班次"(如 20240305A),有的用"工厂代码+流水号"(如 SH01-00123),有的直接沿用内部工单号。标准化不是把批次号改写成统一格式——那会破坏与供应商标签的对应关系——而是建立"批次号模板库":为每个供应商(或每个供应商的每个物料类别)登记其批次号的正则表达式模板,录入时按模板校验格式,同时保留原始字符串作为主键的一部分。系统内部可另设一个代理键用于关联,但对外追溯时始终以供应商原始批次号为准。

三、录入校验规则的设计

校验规则应分层设置,从"硬性拦截"到"软性提示"分级处理,避免规则过严导致正常业务被卡死。

必填校验属于硬拦截:供应商编码、物料编码、批次号、生产日期、到货数量、收货日期六项缺一不可。缺少任何一项,该条记录无法建立有效的批次关联。

格式校验依据批次号模板库执行。例如模板 ^\d{8}[A-Z]\d{3}$ 要求 8 位日期 + 1 位字母 + 3 位流水号。格式不符时拦截并提示"批次号不符合该供应商登记规则,请核对标签"。

逻辑校验处理字段间的关系:生产日期不得晚于到货日期;保质期到期日 = 生产日期 + 保质期天数,且到期日必须晚于到货日期;收货数量不得超过订单数量的合理溢装比例(如 105%)。

唯一性校验防止重复录入:同一供应商 + 同一物料 + 同一批次号在同一收货日期下只允许存在一条有效记录。重复时提示可能为重复收货或批次号填写错误。

一致性校验针对单货不符:ERP 中 ASN 预填的批次号与 WMS 扫码得到的批次号不一致时,触发人工复核,而不是简单以某一方为准。

阈值提示属于软性规则:保质期剩余天数低于设定阈值(如总保质期的 1/3)时,不拦截但弹出警示,由收货人员判断是否让步接收并记录原因。

四、实战任务:从一张送货单到批次主档

假设某乳品供应商送来一批常温酸奶,手工送货单信息如下:供应商"华康乳业"、物料"原味酸奶 200ml"、数量"30 箱"、批次号"HK2024.03.05-02"、生产日期"2024年3月5日"、保质期"6 个月"。

录入时的处理过程:物料主数据中该物料基本单位为"瓶",1 箱 = 24 瓶,故数量换算为 720 瓶;生产日期标准化为 2024-03-05;批次号按华康乳业的模板 ^HK\d{4}\.\d{2}\.\d{2}-\d{2}$ 校验通过,原始字符串保留;保质期到期日推算为 2024-09-05;到货日期设为当日 2024-03-08,逻辑校验通过(生产日期早于到货日期,到期日晚于到货日期);唯一性校验通过。若该批酸奶总保质期 180 天,到货时已过 3 天,剩余 177 天,高于阈值,无警示。最终生成批次主档记录,并与采购订单、收货单、质检单建立关联。

建议在录入界面把"原始值"和"标准化值"并排显示,例如原始"30 箱"与标准"720 瓶"同时可见。这样既方便录入人员核对,也为后续审计留下换算依据。
常见错误:把供应商批次号在录入时"顺手规范化",例如把 HK2024.03.05-02 改成 HK2024030502。一旦供应商标签上仍是带点的格式,扫码核对时就会对不上,追溯链条在此断裂。标准化应作用于格式校验和内部代理键,不应改写原始批次号。

完成本节任务后,可以用一个简单标准自检:任取一条已录入的批次记录,能否在不查原始单据的情况下,还原出供应商、物料、原始批次号、生产日期、换算后的数量,并说明它关联到哪张订单和哪次收货。如果其中任何一项缺失或需要人工回忆,说明采集或校验环节仍有漏洞。