【问题标题】:Biztalk EDIFACT processingBiztalk EDIFACT 处理
【发布时间】:2012-08-07 16:06:41
【问题描述】:

我正在尝试使用 Biztalk 处理一个 edifact 文件。我设置了一个非常简单的映射,用于发送端口。但是,Biztalk 抱怨该消息。我尝试搜索网络,但没有任何结果。可以看到edi文件here。我已经使用 EDIFACT 协议设置了各方和协议,但我不确定我做得有多正确。每当我尝试向 biztalk 提供该消息时,我都会在事件日志中看到以下消息:

适配器“FILE”在接收位置“Receive”接收到一条消息 Location1" 的 URI "C:\Temp*.edi" 被挂起。错误详细信息:An 接收管道中组件“未知”的输出消息 “Microsoft.BizTalk.Edi.DefaultPipelines.EdiReceive, Microsoft.BizTalk.Edi.EdiPipelines,版本=3.0.1.0,文化=中性, PublicKeyToken=31bf3856ad364e35" 由于以下原因被暂停 错误: 错误:1(字段级错误) SegmentID:UNB TS 中的位置:1 数据元素 ID:UNB5 段中的位置:5 数据值:37: 在数据元素中发现无效字符。序号 挂起的消息是 1. MessageId: {DDE54B67-8907-49A2-BDE9-4763495B9B87} 实例 ID: {892EC28B-AC4C-4EA4-8DCC-C49D5FC2869C}

我不确定这意味着什么。任何帮助,指示将不胜感激。

谢谢。

【问题讨论】:

    标签: biztalk esb edi edifact


    【解决方案1】:

    您提供的消息看起来像是语法版本 1 的格式正确的 EDIFACT 消息(语法版本 4 是最新的)。我不知道 Biztalk,但您可能必须设置一些东西以确保它期望语法版本 1。与较新的语法版本(它期望的位置)相比,语法版本 1(它期望 5 个分隔符)的 UNA 段是不同的6 个分隔符),因此如果 Biztalk 期望更高语法版本的 UNA 段,那么它将无法正确处理该消息。

    【讨论】:

      【解决方案2】:

      您的 UNA 规范行中缺少 UNA5(重复分隔符)。

      如果没有这个,BizTalk EDI 反汇编管道将无法正确解析您的 EDI 文件的内容。

      您很可能需要与您的贸易伙伴协调,以确保 UNA 行(文件的第一行)如下所示:

      UNA:+,?*'
      

      【讨论】:

      • 我试过了,但是我得到了 149 个错误而不是一个 :)。其中一些是无效字符,其中一些是无效值。我认为我在 biztalk 派对配置中正确指定了十进制分隔符和其他属性。我被困住了。也许文档的格式根本不正确?
      • EDI作为语法版本1有效。您所指的UNA用于更高的语法版本。 Biztalk 应配置为处理这种情况下的语法版本 1。
      猜你喜欢
      • 2014-08-25
      • 2017-01-31
      • 2019-07-12
      • 2018-09-28
      • 2018-03-26
      • 1970-01-01
      • 2014-11-09
      • 1970-01-01
      • 2013-11-27
      相关资源
      最近更新 更多