什么是APERAK?

2022-12-22 16:27:48 浏览数 (2)

APERAK(Application error and acknowledgement message)是由消息接收方发出的应用程序错误和确认信息。其目的是:

a) 通知消息发送方他的消息已经被消息接收方收到,由于业务系统在处理过程中遇到错误,已被拒绝。 b) 向消息发送方确认消息已被接收方收到。

APERAK 报文中主要包含哪些信息?

主要包含的信息如下:

  • 文件错误日期
  • 错误描述
  • 发票日期/发货日期
  • 发票号/发货编号
  • 名称以及地址信息
  • 自由文本

APERAK 报文结构如下:

位置标记名称 SR

0010 UNH消息头 M 1

0020 BGM信息开头 M 1

0030 DTM日期/时间/周期 C 9

0040 FTX自由文本 C 9

0050 CNT控制总量 C 9

0060 ----- 段组 1 ------------------ C 99----------

0070 DOC文档/消息详细信息 M 1 |

0080 DTM日期/时间/周期 C 99----------

0090 ----- 段组 2 ------------------ C 9------------

0100 RFF参考 M 1 |

0110 DTM日期/时间/周期 C 9------------

0120 ----- 段组 3 ------------------ C 9------------

0130 NAD名称和地址 M 1 |

0140 CTA联系信息 C 9 |

0150 COM通讯信息 C 9------------

0160 ----- 段组 4 ------------------ C 99999------

0170 ERC应用错误信息 M 1 |

0180 FTX自由文本 C 1 |

|

0190 ----- 段组 5 ------------------ C 9---------- |

0200 RFF参考 M 1 ||

0210 FTX自由文本 C 9------------

0220 UNT消息尾部 M 1

APERAK常见的几种应用场景

1.针对DESADV发货通知发出的APERAK

如果A公司发给B公司的DESADV被B公司的应用系统检测到数据错误,B公司将会给A公司发送一个APERAK。这将意味着此DESADV发货通知还没有加载到B公司的应用系统中,A公司需要确认是否提交一份更正的DESADV发货通知。

2.针对INVOIC发票发出的APERAK

如果A公司发给B公司的INVOIC发票被B公司的应用系统检测到数据错误,B公司将会给A公司发送一个APERAK。这将意味着此INVOIC发票还没有加载到B公司的财务系统中,A公司需要更正并重新发送带有相同发票号的INVOIC发票。

示例报文

APERAK for DESADV failure:

UNB UNOA:1 SENDERID:1 RECEIVERID:1 150715:0115 1 APERAK

UNH 1 APERAK:D:97A:UN

BGM :::APPLICATION ACKNOWLEDGEMENT 20150715 11

DTM 97:20150714:102

RFF SI:22222222

DTM 11:20150714:102

NAD SF 123456CITY00

NAD ST 123

ERC 012::116

FTX AAO 3 ERROR DESCRIPTION

UNT 10 1

UNZ 1 1

对于DESADV发货通知可以通过RFF字段进行识别,根据发货单号方便定位到具体的某一个DEASDV发货通知:

RFF SI:22222222

APERAK for INVOIC failure: :

UNB UNOA:1 SENDERID:1 RECEIVERID:1 150720:1002 1 APERAK

UNH 1 APERAK:D:97A:UN

BGM :::APPLICATION ACKNOWLEDGEMENT 11

DTM 97:20150719:102

RFF IV:99999999

DTM 3:20150719:102

NAD SF 123456

NAD ST CBS

ERC 830::116

FTX AAO 3 ERROR DESCRIPTION

UNT 10 1

UNZ 1 1

对于INVOIC发票可以同样通过RFF字段进行识别,根据发票号方便定位到具体的发票:

RFF IV:99999999

以上信息中,需要注意 ERC 应用错误信息字段,在上述两个示例中,ERC01分别取值如下:

ERC 012::116 ERC 830::116

其中 012和830为应用错误信息代码,其代表的含义分别为:

  • 012 Invalid Combination无效组合
  • 830 Refused By Payee 被收款人拒绝

ERC01字段的可能取值还包括:

  • 003 Duplicate Billing重复计费
  • 007 Missing Data 缺少数据
  • 008 Out of Range超出范围
  • 009 Invalid Date 无效日期
  • 010 Total Out of Balance结余总额
  • 011 Not Matching 不匹配
  • 013 Duplicate ASN重复ASN
  • 802 Invalid Debit or Credit Flag Code 无效的借记或贷记标志代码
  • 848 Incorrect Data 数据不正确
  • CUR Invalid Currency Code 无效的货币代码
  • INC Incomplete Transaction 未完成的交易
  • IQT Invalid Quantity 无效数量
  • P Missing or Invalid Item Quantity 缺少或无效的项目数量
  • POI Purchase Order Number Invalid 采购订单编号无效
  • Q Missing or Invalid Item Identification 缺少或无效的物品标识
  • QTY Quantity 数量
  • UNP Invalid Unit Price 无效单价
注意事项

1.APERAK 遵循EDIFACT国际标准,而在X12标准中,扮演类似角色的是 EDI 824报文。 2.APERAK有时会和 CONTRL相互混淆,CONTRL 报文会告知发送方其文件的语法是否正确,而 APERAK 则告知发送方消息是否已被内部应用程序或 ERP 系统正确处理。

解决方案

作为发送方,可以将已有的Excel、CSV格式转换为APERAK报文,如图所示,是一个生成APERAK报文的工作流:

以Excel方案为例,用户可以填写好Excel格式的报文信息,直接将其作为附件发送至指定邮箱,知行之桥EDI系统将会抓取该邮箱下的附件,进入EDI系统后,将数据解析为XML格式,并进一步转换成符合EDIFACT国际标准的APERAK报文,通过AS2或者SFTP等方式上传至交易伙伴的EDI系统中。

作为接收方,知行之桥EDI系统可以将接收到的APERAK报文转换为可读性更强的文件格式,或者是直接将数据传输至企业的业务系统中。如图所示,是一个解析APERAK报文进入中间数据库的工作流:

我们以通过AS2接收文件为例,首先需要通过AS2与交易伙伴搭建好EDI传输通道。接下来通过EDIFACT 端口将接收到的APERAK报文解析为XML,通过XMLMap端口转换至数据库XML,最后通过数据库端口即可将数据插入至数据库,供后端系统使用。

如果大家有关于EDI的任何疑问或者希望了解更多的EDI相关信息,欢迎联系知行软件。

更多EDI信息,请参阅: EDI电子数据交换全解指南

0 人点赞