根据BizTalk中的xml内容按顺序传递消息

时间:2018-10-02 15:13:12

标签: biztalk

我在通过网站从第三方接收文件时遇到问题。这些文件来自第三方,位于文件夹中。由于安全限制,我无法直接通过SMB轮询目录,而是必须每隔1分钟使用SFTP提取文件。这造成了一个问题,因为按顺序传送给我的文件现在都放在我的接收位置的文件夹中。我需要按它们到达我的发送端口的顺序传送这些文件。

我已经考虑过创建一个单独的程序,该程序将打开文件,然后按顺序将它们复制(基于XML中称为SequenceId的段)到BizTalk服务器中的一个文件夹,该文件夹由接收位置监控,以确保文件按顺序交付。我不希望不引入另一个故障点(程序),但是我不确定如何使用纯BizTalk做到这一点。

1 个答案:

答案 0 :(得分:0)

您可以使用纯BizTalk(搜索BizTalk重新排序)来完成此操作,但是最终会得到一个复杂的解决方案,包括单例Orchestrations,并且通常更容易使用数据库表。

  1. 第一个接口将其拾取,然后将数据插入表中。如果您的消息结构是平面的,则可以作为平面表;或者,一个字段具有XML数据,而另一个字段则包含从有效负载中提取的序列号。
  2. 您的第二个接口轮询一个存储过程,该存储过程查看是否可以处理下一个序列。

如果序列中的特定消息永不到达,是否发出警报或在预设的延迟后处理已收到的消息,您将需要考虑如何做。