BorgWarner DESADV报文解析—— 从JSON到EDI的结构化转换与字段说明

© All rights reserved. • 西安知行软件有限公司 • 陕ICP备09022277号
背景说明
在汽车零部件供应链中,DESADV(Despatch Advice,发货通知) 是供应商向主机厂或一级客户发送的发货通知报文,用于向客户提供本次发货的物料明细、数量、包装结构及运输信息。
BorgWarner 作为汽车行业的重要客户,通常要求供应商在每次发货后,通过 DESADV 报文向其提交发货通知数据,作为收货确认、仓储入库、对账结算及质量追溯的重要依据。
由于 DESADV 报文采用 EDIFACT 标准格式,报文层级复杂、字段专业性强,因此需要从DESADV单据规范中分析出结构化、清晰明确的 JSON 结构。最终由后端业务系统生成指定的JSON,由EDI系统将JSON转换为DESADV报文。
本文将结合一份模拟实际的 BorgWarner DESADV 报文示例,说明:
- DESADV 报文中的核心业务信息
- DESADV 报文中的关键字段结构
- JSON 结构设计及字段业务含义

BorgWarner DESADV原始报文示例
以下是一条发送给BorgWarner的DESADV报文(已脱敏):
UNB+UNOA:2+QQQ:1+DPH:1+260109:1220+000000013' UNH+1+DESADV:D:97A:UN:EAN008' BGM++123456+9' DTM+137:200303250200:203' DTM+11:200303250200:203' DTM+132:200303260200:203' MEA+AAX+G+LBR:200' MEA+AAX+N+LBR:200' MEA+AAX+SQ+C62:44' RFF+CN:35' RFF+MB:123456' RFF+AWB:1357' RFF+AMU:FR12345' RFF+CR:0439872' NAD+ST+H301::92' LOC+11+H301' NAD+MI+623700994::16' NAD+SU+999123456::16' NAD+SF+999112233::16' NAD+OB+HA02::92+++++++DE' TOD+++FOB:::SHIP POINT-COLLECT' FTX+AAI+++TEXT' TDT+12++M++RDWY::182+SD+A:A:177389389+DTW:145:3' EQD+TE+TRAILER 001' SEL+12345ABD' CPS+1++1' PAC+8++KLT3214' QTY+52:400:C62' PCI+16+0001' RFF+CN:11111' RFF+CW:0000257606' RFF+SN:22222' GIR+3+2PAT99:AW+0000005:AL' LIN+1++123ABC99:IN' PIA+1+3:RY+B:EC' IMD+++:::DESCRIPTION1:DESCRIPTION2' QTY+3:28800:C62' QTY+12:3200:C62' NAD+MP+999332211::16' FTX+AAI++TEXT' RFF+ON:0550012345' PCI+15+12345' MEA+PD+G+KD:0400' MEA+PD+LN+MTR:0400' MEA+PD+TH+TIC:111' MEA+PD+WD+WTD:222' MEA+PD+WT+W:333' QTY+12:99999:C62' GIN+BX+BC123HVU579X' CPS+2++4' PAC+4++KLT3214' QTY+52:400:C62' PCI+16+0001' RFF+CN:11111' RFF+CW:0000257606' RFF+SN:22222' GIR+3+2PAT99:AW+0000005:AL' LIN+1++123ABC88:IN' PIA+1+3:RY+B:EC' IMD+++:::DESCRIPTION1:DESCRIPTION2' QTY+3:20000:C62' QTY+12:1600:C62' NAD+MP+999332211::16' FTX+AAI++TEXT' RFF+ON:0550012345' PCI+15+12345' MEA+PD+G+KD:0400' MEA+PD+LN+MTR:0400' MEA+PD+TH+TIC:111' MEA+PD+WD+WTD:222' MEA+PD+WT+W:333' QTY+12:99999:C62' GIN+BX+BC123HVU579X' CPS+3++3' PAC+4++PLASTIC SKIDS' CPS+4++3' PAC+1++PALLET' UNT+77+1' UNZ+1+000000013'
报文整体业务含义概览
- 基础单据信息 ASN
单号:123456
时间节点:2003-03-25 发货,预计 2003-03-26 02:00 送达
物流路径:从供应商 999112233 发往工厂 H301 (DELPHI CHASSIS-KETTERING)
重量信息:毛重 200 LBR / 净重 200 LBR
- 详细发运清单与包装结构
物料 A (123ABC99) —— 托盘+箱子包装
发运数量:3,200 PCS 包装详情:该物料装载于 8 个 KLT3214 型号的包装箱内,每箱 400 PCS,统一码放在 1 个 PALLET(托盘)上。
辅助包材 :4 个 PLASTIC SKIDS (塑料盖板)
物料 B (123ABC88) —— 无托/单层包装
发运数量:1,600 PCS
包装详情:该物料直接装载于 4 个 KLT3214 型号的料箱中,不涉及托盘层级。
关键 EDI 段解析说明
1.报文头(Header)
UNH+1+DESADV:D:97A:UN:EAN008' BGM++123456+9' DTM+137:200303250200:203' DTM+132:200303260200:203'
DESADV:D:97A:发货通知报文,D97A 版本
123456:发货通知单号 (ASN Number)
DTM+137:报文生成时间(2003-03-25 02:00)
DTM+132:预计到达日期(2003-03-26 02:00)
2.业务伙伴与运输信息
NAD+ST+H301::92' NAD+SU+999123456::16' TDT+12++M++RDWY::182' EQD+TE+TRAILER 001'
ST:收货工厂代码 H301
SU:供应商代码 999123456
TDT+M:运输方式为公路运输,承运商代码 RDWY
EQD+TE:运输设备信息,挂车编号 TRAILER 001
3.托盘+箱子包装结构(物料 A)
CPS+1++1' PAC+8++KLT3214' LIN+1++123ABC99:IN' QTY+12:3200:C62'
CPS+1:第1组包装信息 ,是一组托盘上的箱子信息
PAC+8++KLT3214:当前层级包含 8 个 KLT3214 型号的包装箱
LIN:客户物料号 123ABC99
QTY+12:本次实际发运数量 3,200 PCS
4.无托/单层包装结构(物料 B)
CPS+2++4' PAC+4++KLT3214' LIN+1++123ABC88:IN' QTY+12:1600:C62'
CPS+2++4’:第2组包装信息 ,是一组无托散箱信息
PAC+4++KLT3214:直接使用 4 个 KLT3214 包装箱,不建立托盘关联
LIN:客户物料号 123ABC88
QTY+12:本次实际发运数量 1,600 PCS
5. 标签与追踪信息(以 CPS+1 为例)
PCI+16+0001' RFF+CN:11111' GIR+3+2PAT99:AW+0000005:AL' GIN+BX+BC123HVU579X'
PCI+16:标记指令,用于说明标签张贴要求
RFF+CN:关联的集装箱号或参考号 11111
GIR+3:SSCC 编码 (2PAT99) 及看板卡号 (0000005)
GIN+BX:具体的包装箱序列号 (Serial Number)\
6.辅助包材说明
CPS+3++3' PAC+4++PLASTIC SKIDS' CPS+4++3' PAC+1++PALLET'
CPS+3 / CPS+4:第3、4组包装信息 ,是两组除箱子外其他包装材料的信息
PAC+4++PLASTIC SKIDS:4 个塑料盖板,用于顶部防护
PAC+1++PALLET:1 个托盘
可转换为BorgWarner DESADV的 JSON 示例
需要业务系统生成下述JSON结构推送到EDI系统,从而生成DESADV报文:
{
"EDI_DESADV": {
"MessageNumber": "123456",
"DocumentMessageDatetime": "200303250200",
"DespatchDatetime": "200303250200",
"EstimatedArrivalDatetime": "200303260200",
"GrossWeightUOM": "LBR",
"GrossWeight": "200",
"ActualNetWeightUOM": "LBR",
"ActualNetWeight": "200",
"ShippedQuantityUOM": "C62",
"ShippedQuantity": "44",
"CarrierRefNumber": "35",
"MasterBillOfLadingNumber": "123456",
"AirWaybillNumber": "1357",
"IntegratedLogisticSupportCrossReferenceNumber": "FR12345",
"CustomerRefNumber": "0439872",
"ShipToCode": "H301",
"ShipToPlaceOfDischarge": "H301",
"MaterialReleaseIssuerCode": "623700994",
"SupplierCode": "999123456",
"ShipFromCode": "999112233",
"OrderedByCode": "HA02",
"OrderedByCountryCode": "DE",
"TermsOfDeliveryCode": "FOB",
"TermsOfDeliveryTermsOfDeliveryOrTransport": "SHIP POINT-COLLECT",
"TermsOfDeliveryGeneralInformationText": "TEXT",
"TransportStageCode": "12",
"TransportModeCode": "M",
"TransportCarrierId": "RDWY",
"TransportTransitDirectionCoded": "SD",
"TransportExcessTransportationReasonCoded": "A",
"TransportExcessTransportationResponsibilityCoded": "A",
"TransportCustomerAuthorizationNumber": "177389389",
"TransportIdOfMeansOfTransportIdentification": "DTW",
"EquipmentType": "TE",
"EquipmentId": "TRAILER 001",
"EquipmentSealNumber": "12345ABD",
"Inner_Level": {
"PackageCount": "8",
"PackageTypeCode": "KLT3214",
"PackageQuantityPerPack": "400",
"PackagePackageMarkNumber": "0001",
"PackagePackageMarkCarrierRefNumber": "11111",
"PackagePackageMarkPackageNumber": "0000257606",
"PackagePackageMarkSealNumber": "22222",
"PackagePackageMarkRelatedIdentificationNumbers": {
"SerialShippingContainerCode": "2PAT99",
"KanbanCardNumber": "0000005"
},
"Item": {
"LineItemNumber": "1",
"BuyerItemNumber": "123ABC99",
"AdditionalRecordKeepingOfModelYear": "3",
"AdditionalEngineeringChangeLevel": "B",
"ItemDescriptionContent": "DESCRIPTION1",
"ItemDescriptionContent2": "DESCRIPTION2",
"CumulativeQuantity": "28800",
"DespatchQuantity": "3200",
"ManufacturingPlantCode": "999332211",
"ManufacturingPlantCodeListAgency": "16",
"GeneralInformationFreeTextCode": "TEXT",
"PurchaseOrderNumber": "0550012345",
"PackageMark": {
"Number": "12345",
"GrossWeightUOM": "KD",
"GrossWeight": "0400",
"LengthUOM": "MTR",
"Length": "0400",
"ThicknessUOM": "TIC",
"Thickness": "111",
"WidthDimensionUOM": "WTD",
"WidthDimension": "222",
"WeightUOM": "W",
"Weight": "333",
"DespatchQuantity": "99999",
"GoodsIdentityNumbers": {
"Number": "BC123HVU579X"
}
}
}
},
"NoPackagingHierarchy_Level": {
"PackageCount": "4",
"PackageTypeCode": "KLT3214",
"PackageQuantityPerPack": "400",
"PackagePackageMarkNumber": "0001",
"PackagePackageMarkCarrierRefNumber": "11111",
"PackagePackageMarkPackageNumber": "0000257606",
"PackagePackageMarkSealNumber": "22222",
"PackagePackageMarkRelatedIdentificationNumbers": {
"SerialShippingContainerCode": "2PAT99",
"KanbanCardNumber": "0000005"
},
"Item": {
"LineItemNumber": "1",
"BuyerItemNumber": "123ABC88",
"AdditionalRecordKeepingOfModelYear": "3",
"AdditionalEngineeringChangeLevel": "B",
"ItemDescriptionContent": "DESCRIPTION1",
"ItemDescriptionContent2": "DESCRIPTION2",
"CumulativeQuantity": "20000",
"DespatchQuantity": "1600",
"ManufacturingPlantCode": "999332211",
"ManufacturingPlantCodeListAgency": "16",
"GeneralInformationFreeTextCode": "TEXT",
"PurchaseOrderNumber": "0550012345",
"PackageMark": {
"Number": "12345",
"GrossWeightUOM": "KD",
"GrossWeight": "0400",
"LengthUOM": "MTR",
"Length": "0400",
"ThicknessUOM": "TIC",
"Thickness": "111",
"WidthDimensionUOM": "WTD",
"WidthDimension": "222",
"WeightUOM": "W",
"Weight": "333",
"DespatchQuantity": "99999",
"GoodsIdentityNumbers": {
"Number": "BC123HVU579X"
}
}
}
},
"Outer_Level": [{
"PackageCount": "4",
"PackageTypeCode": "PLASTIC SKIDS"
},
{
"PackageCount": "1",
"PackageTypeCode": "PALLET"
}
]
}
}
JSON 字段业务说明
整体层级结构
EDI_DESADV → Header(整份发货通知头信息)
├── Inner_Level(托盘 + 箱子包装类型的箱子)
│ └── Item(物料维度)
│ └── PackageMark(标签及物理属性明细)
├── NoPackagingHierarchy_Level(无托 / 单层包装类型的箱子)
│ └── Item(物料维度)
└── Outer_Level(托盘/包装辅材)
EDI_DESADV层(主体信息)
该层用于描述本次发货的主体信息。
- MessageNumber
发货编号,用于唯一标识本次发运,可自定义。
- DocumentMessageDatetime, DespatchDatetime, EstimatedArrivalDatetime
报文生成时间、货物实际发出时间以及货物预计到达收货地点的时间。
- GrossWeight, GrossWeightUOM, ActualNetWeight, ActualNetWeightUOM
发运货物的总毛重及其计量单位,以及实际总净重及其计量单位。
- ShippedQuantity, ShippedQuantityUOM
发运的实际发货数量及其计量单位。
- CarrierRefNumber, MasterBillOfLadingNumber, AirWaybillNumber
承运商参考号、主提单号以及空运提单号。
- IntegratedLogisticSupportCrossReferenceNumber, CustomerRefNumber
物流相关参考编号。
- ShipToCode, ShipToPlaceOfDischarge
收货方代码及卸货地点代码,来自DELFOR。
- MaterialReleaseIssuerCode, OrderedByCode, OrderedByCountryCode
物料需求或订单的发布主体,来自DELFOR。
- SupplierCode, ShipFromCode
供应商代码及发货方代码,来自DELFOR。
- TermsOfDeliveryCode, TermsOfDeliveryTermsOfDeliveryOrTransport, TermsOfDeliveryGeneralInformationText
交付条款,包括标准交付条款代码(如 FOB)、对应的交付或运输方式说明,以及补充说明文本。
- TransportStageCode, TransportModeCode
运输阶段及运输方式代码,用于描述货物当前所处的运输状态及运输方式。
- TransportCarrierId, TransportCustomerAuthorizationNumber
发运所使用的承运商代码及客户侧运输授权编号。
- TransportTransitDirectionCoded, TransportExcessTransportationReasonCoded,
TransportExcessTransportationResponsibilityCoded
运输方向及发生超额运输时的原因和责任归属。
- TransportIdOfMeansOfTransportIdentification, EquipmentType, EquipmentId, EquipmentSealNumber
运输工具标识、设备类型、设备编号(如挂车号)及封签号。
Inner_Level层(内层包装信息)
用于描述托盘 + 箱子包装类型中箱级包装的相关信息。
- PackageCount
箱数。
- PackageTypeCode
包装类型代码,用于标识所使用的包装规格或容器类型(如 KLT3214
- PackageQuantityPerPack
每箱内物料数量。
- PackagePackageMarkNumber
卸货地点,来自DELJIT。
- PackagePackageMarkCarrierRefNumber, PackagePackageMarkPackageNumber, PackagePackageMarkSealNumber
用于描述包装相关的物流及物理标识信息,分别表示承运商参考号、包装编号及封签号。
- SerialShippingContainerCode
箱子的SSCC号。
- PackagePackageMarkRelatedIdentificationNumbers.KanbanCardNumber
箱子的看板号。
Item 层(物料信息)
用于描述物料明细信息。
- LineItemNumber
物料行序号,单笔ASN中从1开始递增。 - BuyerItemNumber
BorgWarner的物料号,来自DELFOR。 - AdditionalRecordKeepingOfModelYear, AdditionalEngineeringChangeLevel
车型年度及工程变更版本。 - ItemDescriptionContent, ItemDescriptionContent2
物料描述信息,来自DELFOR。 - CumulativeQuantity, DespatchQuantity
截至当前发运的累计数量,来自DELFOR;以及本次实际发运数量。 - ManufacturingPlantCode, ManufacturingPlantCodeListAgency
物料生产工厂信息。 - GeneralInformationFreeTextCode
通用信息文本。 - PurchaseOrderNumber
采购订单号,来自DELFOR。
PackageMark层(仅对Primary Metal使用)
该层级位于 Item 层之下,仅在物料类型为 primary metal(如钢卷、板材、金属坯料等)时使用。
- Number
PackageMark 编号,用于标识当前金属物料或金属单元。 - GrossWeight, GrossWeightUOM
表示该金属物料的毛重及其计量单位。 - Length, LengthUOM
表示该金属物料的长度及其计量单位。 - Thickness, ThicknessUOM
表示该金属物料的厚度及其计量单位。 - WidthDimension, WidthDimensionUOM
表示该金属物料的宽度及其计量单位。 - Weight, WeightUOM
表示该金属物料的净重或理论重量及其计量单位。 - DespatchQuantity
表示该金属物料对应的发运数量,通常用于描述按件或按重量拆分后的发运单位。 - GoodsIdentityNumbers
用于描述金属物料的唯一识别信息。 - GoodsIdentityNumbers.Number
金属物料标识号(如卷号、炉号或批次号),用于在生产、仓储及物流过程中对单件 primary metal 物料进行追溯。
NoPackagingHierarchy_Level层
结构与Inner_Level层相同,用于描述无托散箱/单层包装的信息
Outer_Level层
用于集中描述本次发货使用的托盘及包装辅助材料(如盖子)的信息。
-
PackageCount
包装材料的数量。 -
PackageTypeCode
包装类型代码(如 PLASTIC SKIDS)。
JSON -> DESADV方案实现说明
基于知行之桥 EDI 系统,业务系统可直接向平台发送结构化 JSON 数据。知行之桥通过内置的 JSON 端口接收业务数据,并结合 XML Map 映射能力,对业务字段进行解析、校验与映射,最终自动生成符合 BorgWarner 要求的 DESADV(Despatch Advice)EDIFACT 报文。
该流程实现了 业务系统 → JSON → DESADV 报文 的反向转换能力,无需业务系统直接处理 EDIFACT 规范细节,即可完成发运通知类报文的标准化输出与对外发送,从而构建完整、可配置的自动化发运业务工作流。
工作流示意图如下:

总结
BorgWarner 业务系统产生的发运数据,承载着供应链执行阶段中关键的发货、包装及物流信息,是上下游进行收货确认、库存管理与运输协同的重要依据。通过将业务系统输出的结构化 JSON 数据,按照既定业务语义与报文规范,自动转换为符合 BorgWarner 要求的 DESADV 报文格式,可实现发运信息在供应链中的标准化传递与高效流转。
合理、规范的 JSON 数据模型设计,是发运业务数据能否准确映射为 DESADV 报文的核心基础。基于知行之桥 EDI 系统内置的 EDIFACT 端口、XML Map 端口及 JSON 端口能力,系统可对业务数据进行字段映射、层级组装与规则校验,确保生成的 DESADV 报文在结构、语义及业务一致性方面均符合行业与客户规范。
依托知行 EDI 在汽车行业长期积累的实施经验与成熟稳定的映射机制,企业无需对业务系统进行大规模改造,即可快速完成发运数据向标准 EDI 报文的转换与对接。在保障数据准确性、报文合规性及传输可靠性的同时,该方案有效降低了实施复杂度与后期运维成本,为汽车供应链发运协同及业务稳定运行提供了持续、可靠的技术支撑。
注:文案部分图片及内容来源于网络,版权归原创作者所有,如有侵犯到您的权益,请您联系我们进行删除,给您带来困扰,我们深感抱歉。

