在业务流程

时间:2017-04-25 13:53:39

标签: biztalk biztalk-2013

我不是BizTalk的新手,但这种情况有点新鲜。我在BizTalk Orchestration中有以下情况,

  1. 我从其他来源获得平面文件的路径。
  2. 我想在业务流程中加载此文件,并通过执行管道来反汇编它。
  3. 我搜索了很多,但几乎每个人都在谈论在业务流程中的管道中提供XML文档。

    我也得到了以下链接,但到目前为止我无法获得有效的解决方案,

    Calling FlatFile pipeline inside orchestration

    4 Different ways to process an XLANGMessage

    当我实现上面链接给出的解决方案时,我收到错误“ No Disassemble stage组件可以识别数据。

    由于性能限制,我也不想创建动态接收位置。

    以下是我的代码,

    1. 在流中加载文件内容

    2. 按照第二部分的建议创建一个CustomBTXMessage实例。

    3. 加载流如下

      customBTXMessage = new CustomBTXMessage(“MyMessageName”,

      Service.RootService.XlangStore.OwningContext);                     customBTXMessage.AddPart(string.Empty,“Body”);

      customBTXMessage [0] .LoadFrom(MS);

      返回customBTXMessage.GetMessageWrapperForUserCode();

    4. 我认为这种情况在BizTalk世界中并不新鲜。任何这样做的人都必须能够快速帮助我。

1 个答案:

答案 0 :(得分:1)

这是我要做的......或者至少先尝试一下。

  1. 为您获得的每种平面文件类型创建接收端口和接收位置。
  2. 获取文件列表。
  3. 在业务流程中,将文件移动到相应的接收位置。
  4. 平面文件像正常一样反汇编端口管道中的文件。
  5. 使用从步骤1绑定到接收端口的有序传送端口将文件接收到业务流程中。
  6. 循环接收文件,检查BTS.LastInterchagneMessage。
  7. 当为True时,退出该循环并返回步骤3.