设为首页 收藏本站
查看: 836|回复: 0

[经验分享] BizTalk Server 如何发送 EDI 消息(5)

[复制链接]

尚未签到

发表于 2018-10-21 07:58:55 | 显示全部楼层 |阅读模式
替代 EDI 标头
  [除非特别注明,本主题中的内容适用于BizTalk Server 2013 和 2013 R2。]
  发送 EDI 编码的交换时,应用到消息的 EDI 信封通常基于接收协议的 EDI 属性,或基于后备协议属性。但是,基于运行时所生成的值来设置 EDI 信封属性通常很有用。
  在 BizTalk Server 中,你可以使用EdiOverride 上下文属性来指定用于在出站文档上生成 EDI 信封的值。
使用 EdiOverride 上下文属性
  EdiOverride 上下文属性提供一种方法来重写全部或部分用于生成 EDI 信封的值。EDI 发送管道将使用包含一个有效值的EdiOverride 上下文属性来构造信封。如果未填充某个属性,则管道将使用协议属性中所指定的值;而如果还未定义协议,则将使用后备协议属性中所指定的值。如果某个属性包含无效值,则管道将挂起消息并报告一个验证错误。
  http://blog.51cto.com/e/u261/themes/default/images/spacer.gif便笺
  仅在将EdiOverride.OverrideEdiHeader属性写入到消息的上下文,且包含一个“True”值时,才使用在  EdiOverride 集合中指定的值。
  未设置默认值。
X12 信封值的EdiOverride 属性
  下表显示了 EdiOverride 上下文属性以及相应的 X12 信封标头:

  标头
  属性
  交换控制标头 (ISA)
  ISA01、ISA02、ISA03、ISA04、ISA05、ISA06、ISA07、ISA08、ISA09、ISA10、ISA11、ISA12、ISA13、ISA14、ISA15、ISA16
  功能组标头 (GS)
  GS01、GS02、GS03、GS04、GS05、GS06、GS07、GS08
  事务集标头
  ST02
EDIFACT 信封值的EdiOverride 属性
  下表显示了 EdiOverride 上下文属性以及相应的EDIFACT 信封段:

  
  属性
  服务字符串建议 (UNA)
  UNA1、UNA2、UNA3、UNA4、  UNA5、UNA6、UNA6Suffix
  交换控制标头 (UNB)
  UNB1_1、UNB1_2、UNB2_1、UNB2_2、UNB2_3、UNB3_1、UNB3_2、UNB3_3、UNB4_1、UNB4_2、UNB5、UNB6_1、UNB7、UNB8、UNB9、UNB10、UNB11
  功能组标头 (UNG)
  UNG1、UNG2_1、UNG2_2、UNG3_1、UNG3_2、UNG4_1、UNG4_2、UNG5、UNG6、UNG7_1、UNG7_2、UNG7_3、UNG8
  消息标头 (UNH)
  UNH1
  由于 UNA 和 UNGEDIFACT 段是可选的,因此,不管“应用 UNA 段”协议设置如何,都可使用GenerateUNA 和 GenerateUNG 属性来确定是否生成这些标头。下表显示了导致生成这些段的值:

  GenerateUNA  上下文属性
  应用UNA  段协议设置
  引擎行为
  TRUE
  CHECKED
  生成 UNA
  TRUE
  UNCHECKED
  生成 UNA
  FALSE
  CHECKED
  不生成 UNA
  FALSE
  UNCHECKED
  不生成 UNA
  不显示(OverrideEDIHeader 为  false)
  CHECKED
  生成 UNA
  不显示(OverrideEDIHeader 为  false)
  UNCHECKED
  不生成 UNA

  GenerateUNG  上下文属性
  应用UNG  段协议设置
  引擎行为
  TRUE
  CHECKED
  生成 UNG
  TRUE
  UNCHECKED
  生成 UNG
  FALSE
  CHECKED
  不生成 UNG
  FALSE
  UNCHECKED
  不生成 UNG
  不显示(OverrideEDIHeader 为  false)
  CHECKED
  生成 UNG
  不显示(OverrideEDIHeader 为  false)
  UNCHECKED
  不生成 UNG
组信封
  由于交换可显示多个组,因此,组信封带来了一个特殊的难题。为了解决这个难题,EDI 发送管道可将信封应用到交换中的所有组,或仅将信封应用到交换中的一个组。
  对于单一事务,可重写所有 GS 或 UNG 字段,而对于成批交换,仅可重写以下字段:

  •   GS04
  •   GS05
  •   UNG4_1
  •   UNG4_2
批处理
  批处理消息的事务集控制编号的重写将由批处理业务流程来处理。可通过将以下属性写入到将进行批处理的任何消息的上下文来重写事务集控制编号:

  •   ST02(适用于 X12 消息)
  •   UNH1(适用于 EDIFACT 消息)
  http://blog.51cto.com/e/u261/themes/default/images/spacer.gif便笺
  如果相同组中的多个传入消息包含相同的控制编号,则具有重复编号的消息将被挂起。
  http://blog.51cto.com/e/u261/themes/default/images/spacer.gif便笺
  对于将进行批处理的消息,不要升级 EdiOverride 上下文属性 ISA、UNA、GS 或 UNG。如果你需要重写这些属性,则应首先在批处理业务流程的输出消息上升级这些属性,然后再将它们发送到 EDI  发送管道。
分隔符冲突
  对于每个字段,分隔符(例如,UNA 标头)必须包含一个唯一值。重写分隔符(例如,UNA 标头)值时,必须确保每个分隔符的值不仅在你所重写的值中是唯一的,还应在协议或后备协议设置中所使用的任何分隔符中是唯一的。
  例如,如果你重写协议属性中的 UNA1、UNA2、UNA4、UNA3、UNA5、UNA6 和UNA6Suffix,则每个属性必须包含与其他值不同的唯一值。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-624273-1-1.html 上篇帖子: BizTalk Server 如何发送 EDI 消息(2) 下篇帖子: BizTalk Server 如何发送 EDI 消息(4)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表