在我们使用BizTalk 2009时,我们进行了大量的EDI传输。我们经常有第三方团体VAN,为我们的合作伙伴提供AS2 / EDI服务。因此,我遇到两个合作伙伴使用相同的AS2设置但每个合作伙伴都有不同的EDI设置的情况。
目前在这些情况下,我有三方。一个用于包含EDI信息的每个伙伴,一个用于包含共享AS2信息的VAN。目前我有两个发送端口将合作伙伴EDI文件转储到文件夹。这些发送端口与EDI方相关联。然后,我有一个接收位置,用于侦听该文件夹中的任何文件,以及一个直接链接到接收位置的端口名称的发送端口。此发送端口链接到AS2方,并负责传输部分。
这对我来说似乎不那么理想了。那里有更好的做法吗?如果没有其他我真的想将消息保存到BizTalk消息框,而不是写入本地文件系统。有没有办法做到这一点?
其他人使用BizTalk来解决这个问题的架构是什么?
答案 0 :(得分:1)
您可以选择使用EDI和EdiInt上下文属性,而不是使用单独的发送端口并将它们与一方关联。使用上下文属性允许通过单个发送端口管理所有EDI事务。 (或者每个VAN至少有一个发送端口)
您感兴趣的属性是EDI方的EDI.DestinationPartyName和AS2方的EdiIntAS.AS2From。在业务流程或自定义管道组件中设置这些属性,管道将使用它们来解析方并应用正确的包络,就像它们对相关的发送端口一样。
我发现这是一个更清洁的解决方案,特别是当你有很多贸易伙伴时。
传出EDI消息的分辨率和模式确定 - http://msdn.microsoft.com/en-us/library/bb259945%28v=bts.10%29.aspx
传出AS2消息的派对解决方案 - http://msdn.microsoft.com/en-us/library/bb246112%28v=bts.10%29.aspx