3、EDI报文结构解析:EDI 856(发货通知)的标准字段、报文生成与发送机制
EDI 856(发货通知/ASN)是供应链数据交换中用于告知收货方“即将发运什么、何时到达、如何包装”的核心报文。在WMS出库数量与EDI报文差异的根因分析中,856报文的字段完整性、生成时机与发送机制是排查数据不一致的关键切入点。本节将深入解析856报文的标准结构、关键字段映射关系以及典型的生成与发送流程。
3.1 EDI 856 标准字段结构
EDI 856 遵循 ANSI X12 标准,采用层级嵌套结构(Hierarchical Loop)来描述从“装运”到“包装”再到“商品”的逐级分解。每个层级通过 HL(Hierarchical Level)段进行标识和关联。
| 层级 | HL段代码 | 描述 | 关键字段/段 |
|---|---|---|---|
| 装运层(Shipment) | S | 描述整个装运的全局信息,如承运商、运输方式、装运编号 | BHT(报文头)、REF(参考号,如ASN编号)、DTM(日期/时间)、TD1/TD5(运输详情) |
| 订单层(Order) | O | 关联采购订单或销售订单,标识本次装运对应的订单 | PRF(采购订单编号)、REF(订单行参考)、DTM(订单日期) |
| 包装层(Pack) | P | 描述物流包装单元,如托盘、纸箱、周转箱 | MAN(包装标签/SSCC-18)、PAC(包装类型与数量)、MEA(包装尺寸/重量) |
| 商品层(Item) | I | 描述包装内的具体商品,包括SKU、数量、批号 | LIN(商品标识/UPC/EAN)、SN1(数量/单位)、PID(产品描述)、REF(批号/序列号) |
数据治理要点: 在排查WMS出库数量与EDI报文差异时,应重点核对商品层(Item)的
SN1 段中的 Ship Quantity(发货数量)与WMS出库单的实际拣货数量是否一致。包装层(Pack)的 MAN 段中的SSCC标签号是追溯物理包装与电子报文对应关系的关键。
3.2 报文生成与发送机制
EDI 856 报文的生成并非简单的数据导出,而是涉及WMS、EDI翻译器、通信网关等多个系统的协同。典型的生成与发送流程包含以下步骤:
- 数据触发:WMS完成拣货、包装、装车后,生成“发货确认”事件,触发EDI 856报文的构建请求。
- 数据提取与映射:EDI翻译器从WMS的数据库或API中提取发货数据(订单号、SKU、数量、包装标签、承运商等),按照X12 856标准进行字段映射。
- 报文组装:翻译器根据HL层级结构,将数据组装成符合语法规则的EDI报文(ISA/GS/ST/HL/.../SE/GE/IEA)。
- 通信发送:通过AS2、SFTP或VAN等通信协议,将报文发送给收货方或第三方EDI平台。
- 回执确认:接收方返回EDI 997(功能确认)或EDI 855(采购订单确认),表示报文已成功接收或业务上已接受。
常见差异根因: 若WMS在“装车”阶段即触发856生成,而实际出库数量在“发运”阶段因异常(如部分商品被质检拦截)发生变化,则会导致EDI报文中的数量与最终WMS出库数量不一致。建议将触发点设置在“发运确认”而非“装车完成”。
3.3 报文生成中的常见差异场景
在实际数据治理项目中,以下三种场景最容易导致WMS出库数量与EDI 856报文数量产生差异:
- 场景一:包装合并与拆分 — WMS中一个订单被拆成多个包装(如两个托盘),但EDI报文仅汇总了总数量,未按包装层级拆分,导致收货方扫描单个包装时数量对不上。
- 场景二:零头箱处理 — 当订单数量不是整箱倍数时,WMS生成零头箱(如“箱号L-001”),但EDI报文未正确标识零头箱的包装类型(PAC段)或数量(SN1段),造成差异。
- 场景三:替换/补发 — 因库存不足,WMS实际出库了替代SKU,但EDI报文仍沿用原SKU编码,导致商品层(LIN段)的标识不一致。
数据治理建议: 在EDI 856报文生成前,应建立WMS与EDI翻译器之间的数据校验规则,例如:
- 校验HL Item层数量总和是否等于HL Shipment层总数量;
- 校验每个HL Pack层下的MAN标签是否在WMS中真实存在;
- 校验LIN段的商品编码是否与WMS出库单的SKU一致。若校验不通过,应阻止报文发送并触发告警。
- 校验HL Item层数量总和是否等于HL Shipment层总数量;
- 校验每个HL Pack层下的MAN标签是否在WMS中真实存在;
- 校验LIN段的商品编码是否与WMS出库单的SKU一致。若校验不通过,应阻止报文发送并触发告警。
3.4 报文发送机制与回执监控
发送机制的选择直接影响报文传递的可靠性与时效性。下表对比了三种主流发送方式的特点:
| 发送方式 | 传输协议 | 可靠性 | 实时性 | 适用场景 |
|---|---|---|---|---|
| AS2 | HTTP/S | 高(MDN回执) | 高(秒级) | 大型零售商(如Walmart、Target) |
| SFTP | SSH | 中(文件级校验) | 中(分钟级) | 中小型贸易伙伴、批量传输 |
| VAN | 专有网络 | 高(平台级保障) | 中(取决于VAN轮询) | 多对多连接、需要增值服务 |
无论采用哪种发送方式,都必须监控EDI 997(功能确认)回执。若在预设时间内未收到997,或收到997中指示报文存在语法错误(如字段长度超限、必填段缺失),应立即触发重发机制并通知IT运维人员排查。
通过深入理解EDI 856报文的标准字段结构、生成触发时机以及发送回执机制,数据治理人员可以精准定位WMS出库数量与EDI报文差异的根因,从而制定针对性的校验规则与流程优化方案。