首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Ferrari DELINS EDI 对接指南:报文解析、交付计划与 ERP 集成

Ferrari DELINS EDI 对接指南:报文解析、交付计划与 ERP 集成

原创
作者头像
知行软件EDI
发布2026-09-04 11:00:45
发布2026-09-04 11:00:45
70
举报

在汽车供应链中,主机厂的需求计划会随着生产节奏持续滚动更新。Ferrari 通过 ODETTE DELINS 报文向供应商发送物料交付计划,供应商需要将这些计划转换为 ERP、SRM、MES 或生产计划系统可以识别的结构化数据。

本文参考 Ferrari DELINS 规范,并结合测试报文,说明 Ferrari DELINS 报文如何表达业务信息,以及 EDI 对接时需要重点处理哪些字段、层级和异常点。

Ferrari DELINS 是什么?

DELINS 是 ODETTE 标准中的 Delivery Instruction / Delivery Schedule 类报文。Ferrari 使用它向供应商传递指定零件在未来一段时间内的交付需求。

一份 Ferrari DELINS 不只是“哪天交多少件”,还会同时说明:

  • 报文发送方、接收方和报文编号;
  • Ferrari 买方身份、供应商身份和收货工厂;
  • 计划有效期从哪一天开始;
  • 每个 Ferrari 零件号、描述、单位和合同/订单号;
  • 物料对应的计划频率,例如日计划、周计划、月计划;
  • 每个交付日期或交付区间的数量;
  • 每条计划是执行/即时需求,还是预测/计划需求。

对供应商而言,DELINS 的关键不是解析出一串段名,而是把“报文头 – 工厂 – 物料 – 交付明细”的上下级关系完整保留下来,避免计划行在导入 ERP 时失去归属。

Ferrari DELINS 需求概览

项目

Ferrari DELINS 要求

报文标准

ODETTE DELINS Version 3

测试报文类型

UNH+1+DELINS:3::OD:INTESA

业务用途

Ferrari 向供应商发送交付计划 / Delivery plans

报文发送方

UNB 中发送方为 FERRARI:AA

接收方

UNB 中接收方为供应商代码,例如 27****:AA

报文编号

MID 中 Program Number,例如 0003****

报文日期时间

MID 中日期和时间,例如 260409:0000

计划有效期开始

ARI 中 Effective from date,例如 260413

买方

BDT,例如 0940********0366

供应商

SDT,例如 27****

收货工厂 / 目的地

CSG,例如 030

物料信息

ARD,包含 Ferrari 零件号、描述、单位、合同/订单号

物料附加信息

SAD,包含更新动作、物料状态和计划频率

状态/累计信息

DST,包含计算日期及累计数量等状态字段

交付明细

DEL,包含起止日期、数量和计划类型

执行/即时需求

DEL 中计划状态 1

计划/预测需求

DEL 中计划状态 4

一份真实 Ferrari DELINS 传递了什么?

测试报文通常包含多行物料、每个物料包含多行交付明细。报文整体结构如下:

代码语言:javascript
复制
UNA
UNB
UNH
MID
SDT
BDT
ARI
CSG
  ARD
    SAD
    DST
    DEL...
  ARD
    SAD
    DST
    DEL...
CSG
  ARD...
UNT
UNZ

报文原文示例

以下示例基于测试场景整理,已对业务标识信息进行处理,仅用于说明 DELINS 报文结构和字段含义。

代码语言:javascript
复制
UNA:+.? '
UNB+UNOA:1+FERRARI:AA+27****:AA+260409:0645+2++DELINS'
UNH+1+DELINS:3::OD:INTESA'
MID+0003****+260409:0000'
SDT+::::::27****'
BDT+0940********0366'
ARI+4+260413'
CSG+::::::030'
ARD+055058***::BLACK SCREEN FISSO DX CPL+:PCE+000012****'
SAD+1++20++2'
DST+260409+4::4'
DEL+260413:0000:260413:0000+1:::1'
DEL+260416:0000:260416:0000+0:::1'
DEL+260420:0000:260420:0000+1:::1'
DEL+260423:0000:260423:0000+2:::1'
...
DEL+260608:0000:260614:0000+1:::4'
DEL+260615:0000:260621:0000+5:::4'
DEL+260622:0000:260628:0000+5:::4'
...
DEL+270916:0000:270922:0000+0:::4'
DEL+270923:0000:270929:0000+0:::4'
DEL+270930:0000:271006:0000+0:::4'
CSG+::::::030'
ARD+055058***::BLACK SCREEN FISSO SX CPL+:PCE+000012****'
SAD+1++20++2'
DST+260409+4::4'
DEL+260413:0000:260413:0000+1:::1'
...
ARD+055059***::CONDOTTO PORTA ANT  SX CPL+:PCE+000012****'
SAD+1++20++2'
DST+260409'
DEL+260413:0000:260413:0000+0:::1'
...
ARD+055059***::CONDOTTO PORTA ANT  DX CPL+:PCE+000012****'
SAD+1++20++2'
DST+260409'
DEL+260413:0000:260413:0000+0:::1'
...
UNT+348+1'
UNZ+1+2'

将报文还原为业务信息后,可以得到以下概览:

业务信息

示例值

含义

报文发送方

FERRARI

Ferrari 发出交付计划

供应商代码

27****

接收该 DELINS 的供应商

报文类型

DELINS:3::OD:INTESA

ODETTE DELINS V3,Intesa 子集

报文编号

0003****

本次计划的 Program Number

报文日期时间

2026-04-09 00:00

Ferrari 创建本次计划的日期时间

计划有效期开始

2026-04-13

规范说明为文件日期之后的周一

买方代码

0940********0366

Ferrari 买方识别号

收货工厂

030

Recipient Plant Code / 收货工厂代码

报文体段数

348

UNT+348+1,从 UNH 到 UNT 的段数

物料数

4

示例中有 4 个 ARD 物料块

交付明细数

326

示例中有 326 条 DEL 明细

测试报文中的 4 个物料如下:

序号

Ferrari 零件号

描述

单位

合同/订单号

DEL 条数

非零需求条数

数量合计

1

055058***

BLACK SCREEN FISSO DX CPL

PCE

000012****

82

58

1,005

2

055058***

BLACK SCREEN FISSO SX CPL

PCE

000012****

82

58

1,005

3

055059***

CONDOTTO PORTA ANT SX CPL

PCE

000012****

81

49

993

4

055059***

CONDOTTO PORTA ANT DX CPL

PCE

000012****

81

48

992

按 DEL 中的计划状态汇总:

计划状态

业务含义

DEL 条数

数量合计

1

Executive / Immediate,执行或即时交付需求

62

22

4

Planned / Expected,计划或预测需求

264

3,973

合计

326

3,995

从示例可以看到,Ferrari 会在同一份 DELINS 中混合发送近期执行需求和远期预测需求。供应商系统应保留计划状态,不应把所有数量都当成同一种业务性质处理。

Ferrari DELINS 关键业务信息

1. 报文头与信封

报文头用于识别“谁发给谁、哪一份计划、什么时候生成”。

报文内容

业务含义

示例

UNA:+.? ‘

EDIFACT 服务字符定义

分隔符、释放符等

UNB

交换信封

Ferrari 发给供应商 27****,交换日期时间为 2026-04-09 06:45

UNH

消息头

消息引用号 1,报文类型 DELINS V3

MID

Message Identity Data

Program Number 为 0003****,报文日期时间为 2026-04-09 00:00

UNT

消息尾

报文体段数 348,消息引用号 1

UNZ

交换尾

本交换包含 1 条消息,交换控制号 2

处理建议:

  • 使用 UNB 的发送方、接收方和交换控制号做通信层追踪;
  • 使用 UNH 的消息引用号校验 UNT;
  • 使用 MID 的 Program Number 作为业务计划编号;
  • 使用 MID 的日期时间判断计划版本先后;
  • 校验 UNT 段数,避免截断报文被误导入。

2. 业务参与方

Ferrari DELINS 使用不同段表达供应链参与方。

规范名称

示例

业务含义

SDT

Seller Details

SDT+::::::27****

供应商信息,示例中供应商号为 27****

BDT

Buyer Details

BDT+0940********0366

买方信息,规范说明为 0940 + Ferrari VAT registration number

CSG

Recipient Details

CSG+::::::030

收货工厂 / 目的地,示例中工厂代码为 030

注意:UNB 的接收方、SDT 的供应商和 CSG 的收货工厂是不同业务角色。对接时应分别映射,不要全部写入同一个“客户/供应商代码”字段。

3. 计划有效期与计划类型

ARI 段提供本次交付计划的附加信息。

报文内容

字段含义

示例值

说明

ARI+4+260413

Release Type Code

4

规范中 Ferrari 固定为 Message Type Code 4

ARI+4+260413

Effective from date

260413

本次计划有效期开始日:2026-04-13

规范说明 ARI 的有效期开始日期表示报文日期之后的周一。测试报文 MID 日期为 2026-04-09,ARI 为 2026-04-13,正好是之后的周一。

4. 物料、描述、单位与合同/订单

ARD 是 Ferrari DELINS 中最核心的物料段。每个 ARD 表示一个 Ferrari 零件及其对应的合同/订单关系。

示例:

代码语言:javascript
复制
ARD+055058***::BLACK SCREEN FISSO DX CPL+:PCE+000012****'

解析为:

位置

示例值

业务含义

ARD/7304

055058***

Ferrari 买方零件号

ARD/7008

BLACK SCREEN FISSO DX CPL

物料描述

ARD/6410

PCE

数量单位

ARD/1022

000012****

合同号或采购订单号/行号组合

规范对 ARD 的 1022 字段有特别说明:合同号右对齐并补零至 10 位,合同位置右对齐并补零至 4 位,组合为 14 位。例如合同号与行号会按固定位数补零后拼接。示例中的 000012**** 可按“订单/合同号 + 行号”的组合字段处理。

如果 Ferrari 计划携带项目号,规范说明零件号可能扩展为 16 位:前 9 位为零件号,后接 1 个空格和 6 位项目号。对接时建议为“Ferrari 零件号”和“项目号”预留拆分逻辑。

5. 物料附加信息与计划频率

SAD 用于描述物料层面的附加信息,例如更新动作、物料状态、计划频率。

示例:

代码语言:javascript
复制
SAD+1++20++2'

解析为:

位置

示例值

业务含义

SAD/7807

1

Instruction Update Action Code / Type of Scheduling

SAD/7153

20

Article status,规范示例中固定为 20

SAD/2013

2

Program Emission Frequency,计划发布频率

SAD/2013 的常见取值:

代码

业务含义

2

Daily programming,日计划

3

Weekly programming,周计划

4

Monthly programming,月计划

5

Other / closed order programming,其他或关闭订单计划

测试报文 4 个物料均为 SAD+1++20++2,表示本次物料层计划频率为日计划。但明细 DEL 中同时存在日粒度和周粒度日期区间,因此导入 ERP 时不能只依赖频率字段,还应结合 DEL 的起止日期判断计划粒度。

6. 状态与累计数量

DST 是 Delivery Status 段,用于表达计算日期、累计计划数量、累计收货数量、差异数量等状态信息。

示例:

代码语言:javascript
复制
DST+260409+4::4'
DST+260409'

规范定义的关键字段包括:

字段

业务含义

DST/2253

Calculation Date / Limit Date,计算日期

DST/6802

Actual cumulative scheduled quantity,累计计划数量

DST/6804

Actual cumulative received quantity,累计接收数量

DST/6806

Delivery Quantity Balance,交付数量差异,可带正负号

DST/2121

Quantities Accumulation Start Date,累计开始日期

DST/6812

Quantity Balance,数量余额

示例中 DST 信息较简略,至少应读取 260409 作为状态计算日期。若后续生产报文携带累计数量,应将其作为历史收发货与当前计划之间的对账依据。

7. 交付明细

DEL 是交付计划明细段。每条 DEL 对应一个日期或日期区间、数量和计划状态。

示例:

代码语言:javascript
复制
DEL+260413:0000:260413:0000+1:::1'
DEL+260608:0000:260614:0000+1:::4'

解析为:

位置

示例值

业务含义

DEL/2803

260413

起始日期,2026-04-13

DEL/2002

0000

起始时间,00:00

DEL/2805

260413

结束日期,2026-04-13

DEL/2002

0000

结束时间,00:00

DEL/6060

1

数量

DEL/6811

1 或 4

计划状态:执行/即时或计划/预测

DEL/6811 的含义:

代码

规范含义

对接建议

1

Executive / Immediate,Delivery Order

可作为近期较确定的执行需求或发货参考

4

Planned / Expected

用于备料、产能规划和中长期预测

示例中,近期存在单日需求:

序号

起始时间

结束时间

数量

状态

1

2026-04-13 00:00

2026-04-13 00:00

1

1 执行/即时

2

2026-04-16 00:00

2026-04-16 00:00

0

1 执行/即时

3

2026-04-20 00:00

2026-04-20 00:00

1

1 执行/即时

4

2026-04-23 00:00

2026-04-23 00:00

2

1 执行/即时

也存在周粒度的远期预测:

序号

起始时间

结束时间

数量

状态

1

2026-06-08 00:00

2026-06-14 00:00

1

4 计划/预测

2

2026-06-15 00:00

2026-06-21 00:00

5

4 计划/预测

3

2026-06-22 00:00

2026-06-28 00:00

5

4 计划/预测

4

2026-06-29 00:00

2026-07-05 00:00

5

4 计划/预测

5

2026-07-06 00:00

2026-07-12 00:00

5

4 计划/预测

报文字段详解

UNA / UNB / UNH

示例

说明

UNA

UNA:+.? ‘

定义 EDIFACT 分隔符

UNB

UNB+UNOA:1+FERRARI:AA+27****:AA+260409:0645+2++DELINS

交换信封,包含发送方、接收方、交换日期时间和控制号

UNH

UNH+1+DELINS:3::OD:INTESA

消息头,说明消息类型为 ODETTE DELINS V3

MID

字段

示例值

说明

Program Number

0003****

计划编号 / 文档编号

Date

260409

报文日期,2026-04-09

Time

0000

报文创建时间

SDT / BDT / CSG

示例

说明

SDT

SDT+::::::27****

供应商编号

BDT

BDT+0940********0366

Ferrari 买方编号

CSG

CSG+::::::030

收货工厂或目的地代码

ARI

字段

示例值

说明

Release Type Code

4

Ferrari 规范中 Message Type Code 为 4

Effective from date

260413

计划有效期开始日期,2026-04-13

ARD

字段

示例值

说明

Buyer’s Article Number

055058***

Ferrari 零件号

Seller’s Article Number

供应商零件号,示例未使用

Article Description

BLACK SCREEN FISSO DX CPL

零件描述

Unit of Measurement

PCE

计量单位

Order / Contract Number

000012****

合同/订单及行号组合

SAD

字段

示例值

说明

Instruction Update Action Code

1

物料层计划动作/计划类型

Article Status

20

物料状态

Frequency

2

日计划

DST

字段

示例值

说明

Calculation Date

260409

状态计算日期

Actual cumulative scheduled quantity

4

示例部分物料携带累计计划数量

Cumulative received quantity / balance

4

示例中以简化复合字段形式出现,导入时需按接口映射确认

DEL

字段

示例值

说明

First date / time

260413:0000

起始日期时间

Last date / time

260413:0000

结束日期时间

Quantity

1

需求数量

Scheduled status indicator

1 或 4

1 执行/即时,4 计划/预测

建议的 ERP 接口结构

建议将 Ferrari DELINS 转换为如下层级,避免物料和计划明细脱离所属工厂、订单和报文版本:

代码语言:javascript
复制
FerrariDELINS
├─ MessageHeader
├─ Parties
│  ├─ Sender
│  ├─ ReceiverSupplierCode
│  ├─ BuyerCode
│  └─ SellerCode
└─ Consignees[]
   ├─ ConsigneePlantCode
   ├─ ConsigneeName
   └─ Items[]
      ├─ FerrariPartNumber
      ├─ Description
      ├─ UnitOfMeasure
      ├─ ContractOrOrderNumber
      ├─ InstructionUpdateAction
      ├─ ArticleStatus
      ├─ ProgramFrequency
      └─ Schedules[]
         ├─ StartDateTime
         ├─ EndDateTime
         ├─ Quantity
         └─ ScheduleStatus

如果 ERP 只能接收扁平明细,至少应在每条计划明细中带上以下字段:

字段

必要性

说明

ProgramNumber

必填

本次 DELINS 编号

MessageDateTime

必填

判断版本先后

SupplierCode

必填

供应商

BuyerCode

建议必填

Ferrari 买方

ConsigneePlantCode

必填

收货工厂

FerrariPartNumber

必填

Ferrari 零件号

PartDescription

建议必填

便于业务核对

UnitOfMeasure

必填

数量单位

ContractOrOrderNumber

必填

合同/订单关联

ProgramFrequency

建议必填

日/周/月计划

StartDateTime

必填

计划开始时间

EndDateTime

必填

计划结束时间

Quantity

必填

需求数量,可为 0

ScheduleStatus

必填

1 或 4,区分执行需求与预测需求

对接 Ferrari DELINS 最容易出错的地方

1. 把 ODETTE DELINS 当成 EDIFACT DELFOR 处理

测试报文虽然有 UNA/UNB/UNH/UNT/UNZ 信封,但业务段是 ODETTE DELINS 风格,例如 MID/SDT/BDT/ARI/ARD/SAD/DST/DEL。如果按 EDIFACT DELFOR 的 BGM/NAD/LIN/QTY/SCC/DTM 去映射,会丢失 Ferrari 的关键业务字段。

2. 忽略 DEL 的计划状态

DEL 中的 6811 用于区分执行/即时需求和计划/预测需求。示例中 1 与 4 同时出现。ERP 导入时应保留状态字段,并让业务规则决定哪些需求用于发货、哪些用于备料和产能规划。

3. 只读取起始日期,不读取结束日期

Ferrari DELINS 的 DEL 可以表示单日,也可以表示一段区间。比如:

代码语言:javascript
复制
DEL+260608:0000:260614:0000+1:::4'

这表示 2026-06-08 到 2026-06-14 这个区间的计划数量为 1,而不是只在 2026-06-08 当天交 1 件。系统应同时保存开始日期和结束日期。

4. 将数量为 0 的计划行直接丢弃

示例报文中存在大量数量为 0 的 DEL 行。它们可能用于表达某些周期没有需求,或用于覆盖/清零既有预测。是否过滤应由业务规则决定,原始解析层不建议静默删除。

5. 混淆 SAD/2013 计划频率与 DEL 日期粒度

示例物料层 SAD/2013 为 2,表示日计划;但远期 DEL 明细中存在周区间。建议同时保留频率字段和 DEL 起止日期,不要只根据频率推断所有计划都是单日。

6. 未拆分或误拆分合同/订单号

规范说明 ARD/1022 是合同号/订单号与位置号的组合字段。若 ERP 需要拆分,应根据 Ferrari 确认的长度规则处理:前 10 位为合同/订单号,后 4 位为行号。示例 000012**** 可按“订单/合同号 + 行号”的组合字段处理,拆分规则需以双方确认的长度为准。

7. 忽略报文版本控制

供应商可能持续收到新的 DELINS。建议用以下组合判断和追踪版本:

代码语言:javascript
复制
Sender + SupplierCode + ProgramNumber + MessageDateTime + ConsigneePlantCode + FerrariPartNumber + ContractOrOrderNumber

导入新计划时,应结合 Ferrari 业务规则判断是覆盖原计划、更新同一周期,还是保留历史版本供追踪。

Ferrari DELINS 自动化对接流程

建议自动化流程包括:

  1. 接收 Ferrari DELINS 原始报文;
  2. 校验 UNB/UNH/UNT/UNZ 控制信息;
  3. 解析 MID/SDT/BDT/ARI 报文头和参与方;
  4. 按 CSG -> ARD -> SAD/DST/DEL 层级解析收货工厂、物料和计划;
  5. 将日期从 YYMMDD 转换为完整日期,例如 260413 转为 2026-04-13;
  6. 保留 DEL 的起止日期、数量和计划状态;
  7. 按 Ferrari 零件号、订单号、收货工厂更新 ERP 中的交付计划;
  8. 对未知物料、未知工厂、异常单位、负数/异常数量、段数不匹配进行告警;
  9. 保存原始报文与解析结果,便于业务追溯。

示例计划明细解析

以第一个物料为例:

代码语言:javascript
复制
CSG+::::::030'
ARD+055058***::BLACK SCREEN FISSO DX CPL+:PCE+000012****'
SAD+1++20++2'
DST+260409+4::4'
DEL+260413:0000:260413:0000+1:::1'
DEL+260608:0000:260614:0000+1:::4'

对应业务含义:

字段

解析结果

收货工厂

030

Ferrari 零件号

055058***

物料描述

BLACK SCREEN FISSO DX CPL

单位

PCE

合同/订单号

000012****

计划频率

2,日计划

状态计算日期

2026-04-09

第一条需求

2026-04-13 00:00,数量 1,执行/即时

第二条需求

2026-06-08 至 2026-06-14,数量 1,计划/预测

推荐校验规则

校验项

建议规则

报文类型

必须为 DELINS:3::OD:INTESA 或双方约定的 Ferrari DELINS 类型

发送方

UNB 发送方应为 FERRARI

接收方

UNB 接收方应与供应商代码匹配

报文编号

MID Program Number 不应为空

报文日期

MID 日期应可解析

有效期开始

ARI Effective from date 应可解析

收货工厂

CSG 工厂代码应在主数据中存在

Ferrari 零件号

ARD 零件号应在物料主数据中存在

单位

ARD 单位应在允许单位列表中,例如 PCE

合同/订单号

ARD 订单/合同字段不应为空

交付日期

DEL 起止日期应可解析,结束日期不早于开始日期

数量

DEL 数量应为数字,允许 0

计划状态

DEL 状态应在允许值内,例如 1、4

段数

UNT 段数应与实际消息段数一致

实施 Ferrari DELINS 对接的价值

完成 Ferrari DELINS 自动化对接后,供应商可以:

  • 自动接收 Ferrari 最新交付计划,减少人工下载和录入;
  • 准确区分近期执行需求和远期预测需求;
  • 按 Ferrari 零件号、订单号、工厂和计划周期更新 ERP;
  • 避免因日期区间、单位或数量录入错误造成交付异常;
  • 保存每版计划,方便追踪需求变化和客户计划调整;
  • 将 EDI 报文直接转化为可执行的备料、排产和交付计划。

Ferrari DELINS 的核心难点在于:它既有 EDIFACT 信封,又采用 ODETTE DELINS 业务段;既有单日计划,又有区间计划;既有执行需求,又有预测需求。只有在解析时保留这些业务层级和状态差异,EDI 对接才真正能支撑供应链协同。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • Ferrari DELINS 是什么?
  • Ferrari DELINS 需求概览
  • 一份真实 Ferrari DELINS 传递了什么?
    • 报文原文示例
  • Ferrari DELINS 关键业务信息
    • 1. 报文头与信封
    • 2. 业务参与方
    • 3. 计划有效期与计划类型
    • 4. 物料、描述、单位与合同/订单
    • 5. 物料附加信息与计划频率
    • 6. 状态与累计数量
    • 7. 交付明细
  • 报文字段详解
    • UNA / UNB / UNH
    • MID
    • SDT / BDT / CSG
    • ARI
    • ARD
    • SAD
    • DST
    • DEL
  • 建议的 ERP 接口结构
  • 对接 Ferrari DELINS 最容易出错的地方
    • 1. 把 ODETTE DELINS 当成 EDIFACT DELFOR 处理
    • 2. 忽略 DEL 的计划状态
    • 3. 只读取起始日期,不读取结束日期
    • 4. 将数量为 0 的计划行直接丢弃
    • 5. 混淆 SAD/2013 计划频率与 DEL 日期粒度
    • 6. 未拆分或误拆分合同/订单号
    • 7. 忽略报文版本控制
  • Ferrari DELINS 自动化对接流程
  • 示例计划明细解析
  • 推荐校验规则
  • 实施 Ferrari DELINS 对接的价值
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档