none
Biztalk如何接收多个相通架构的消息并合并为一个 RRS feed

  • 问题

  • biztalk需要去一个文件夹里读取很多xml文件,这些xml文件是相同架构的,当读入这些文件后,bitalk对这些文件进行合并,形成一个大的xml文件,如下:
    当前A文件夹里有两个xml文件,分别为:
    第一个:

    <RouteInfoList>
           <RouteInfo>
                <RoutedOrder>aaa</RoutedOrder>
                <UnitUser>aaa</UnitUser>
           </RouteInfo>

    <RouteInfoList>
    第二个:

    <RouteInfoList>
           <RouteInfo>
                <RoutedOrder>bbb</RoutedOrder>
                <UnitUser>bbb</UnitUser>

           </RouteInfo>

    <RouteInfoList>
    合并后如下:

    <RouteInfoList>
           <RouteInfo>
                <RoutedOrder>aaa</RoutedOrder>
                <UnitUser>aaa</UnitUser>

           </RouteInfo>

           <RouteInfo>
                <RoutedOrder>bbb</RoutedOrder>
                <UnitUser>bbb</UnitUser>

           </RouteInfo>

    <RouteInfoList>
    现在遇到的问题是:
    当我用biztalk去这个文件夹读取文件的时候,biztalk会每个文件读入不同的实例,这些文件不能进入一个orchestration,请问我该怎么做呢?

    2009年5月7日 8:24

全部回复

  •    业务逻辑上还不是很清楚, 多个文件要合并成一个处理,但多个有没有数量的限制,而且文件是否有先后到达的情况. 先后到达是否需要等待还是不处理?

    2009年5月8日 3:23
  • 合并的处理已经能够解决了,但是现在的问题就是无法把这些文件读入一个orchestration。我需要在orchestration对这些xml消息进行合并。文件的数量不定而且没有限制,现在最大的问题就是我不知道如何将所有的xml文件读入一个orchestration,谢谢您

    2009年5月11日 3:41
  • 还是觉得业务逻辑上怪怪的. 如果非要在技术上解决的话,你在处理的时候还是要限定要合并的消息的数量.比如10个文件组成一个消息或者1分钟内接收到的文件组成一个消息. 
     
     在Orchestration里使用相关集去约束BizTalk只使用同一个Orchestration实例去处理接收到的相同相关集的数据.这样BizTalk就会把所有接收到相同相关集的数据发往同一个Orchestration实例去处理.在Orchestration中组合消息.达到一定数量之后再对这个合并的消息进行处理.
      

    2009年5月11日 4:37
  • 能在不使用相关集的情况下将这些文件读入同一个orchestration吗?

    2009年5月11日 4:38
  • 你可以试一下Orchestration里的接收端口的按序送达.看能不能满足你的要求.

    2009年5月11日 4:42
  • 好的,非常感谢您,我试一下

    2009年5月11日 4:43
  • Biztalk中有个Convoys概念,用在当您需要把一组具有你设定的同类属性的消息交给同一个orchestration实例进行处理时的场景。当具有这样的属性的第一个消息到达biztalk后,biztalk激活一个orchestration实例处理此消息,处理完这个消息后,orchestration实例并不退出而是继续等待后续具有相同属性的消息,这个之后具有跟第一个消息同样属性的消息都被路由到这个orchestration实例,直到在orchestration内根据一定的条件由流程自行结束这个orchestration实例。

    请参考:http://www.cnblogs.com/chnking/archive/2008/09/03/1283053.html

    专注于biztalk。 chnking.cnblogs.com
    2009年7月5日 2:44