【问题标题】:Pool Multiple Messages with BizTalk 2006 SQL Adapter使用 BizTalk 2006 SQL 适配器汇集多条消息
【发布时间】:2012-10-12 14:02:01
【问题描述】:

我有一个 StoredProcedure,它返回一个包含多条记录的简单表:

DECLARE @STEPS_TABLE AS TABLE (OrchestrationID uniqueidentifier, [Message] nvarchar(1000));

-- 在此处加载值

SELECT * FROM @STEPS_TABLE 作为 XML AUTO、XMLDATA、ELEMENTS 的步骤

我使用 SQL 传输架构生成向导来创建我的架构并且可以正确配置端口。如果我在编排中使用此架构,它会完美运行。每次@STEPS_TABLE 有超过 1 条记录时,BizTalk 都会启动一个编排实例。

阅读微软技术文档,他们建议在一次调用中获取多条消息,然后使用 XML 管道将多行 BizTalk 消息分解为单行 BizTalk 消息。

我之前没有使用过 XML 管道,所以我尝试了提供的步骤,但无法让它工作。

谁能给我一个“如何做”的链接(经过几个小时的搜索,直到现在才找到任何东西)或者给我一些成功的提示。

提前致谢。

【问题讨论】:

    标签: biztalk biztalk2006r2


    【解决方案1】:

    ...几个小时后,我自己就能弄清楚了。因此,如果有人遇到与我相同的问题,这里有一些指导方针可以让它在你的环境中工作。

    最后,我遵循了与 Microsoft 不同的演练,完全避免了管道推荐。我找到的文档称为“使用 SQL 适配器反汇编结果集”,并且完全符合我的要求。您可以按照 Microsoft 的整个演练,但避免创建发送端口并对接收端口进行一些小调整。

    遵循技术文档后,您最终会得到两个模式,为了这个练习,我将它们称为消息和信封(包含几条消息)。在您的业务流程中,您可以创建一个映射到消息的接收端口,然后当您将其配置为 SQL 端口并将其链接到您的存储过程(或选择语句)时,您只需将文档根元素名称更改为信封根名称; XML 接收管道(在 BizTalk 2006 中默认提供)将分解包含在信封中的消息并为每条消息实例化一个编排。

    Microsoft“使用 SQL 适配器反汇编结果集”演练可在以下位置找到:

    http://msdn.microsoft.com/en-us/library/aa562098(v=bts.20).aspx

    任务完成:)

    【讨论】:

    • 谢谢...必须等待 3 小时... ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多