BizTalk SQL Adapter复合操作,链接存储过程调用

时间:2016-02-01 16:10:32

标签: biztalk

我们需要在同一个数据库上调用三个存储过程,考虑使用复合操作将它们包装在同一事务的同一个调用中。

问题是,我们需要将第一个存储过程的结果用作第二和第三个过程的输入,这是否可行?

由于

3 个答案:

答案 0 :(得分:1)

不,不幸的是没有。该映射将运行并创建SQL适配器之后将用于执行的XML。

你可以看看制作一个只运行第一个存储过程的双向发送端口;和另一个发送端口,它订阅第一个发送端口的响应并运行第二个和第三个过程。

答案 1 :(得分:1)

这是不可能的,我害怕。

复合操作的输入是一个XML实例,其中每个输入参数都是事先提供的。

如果确实需要执行这些特定的存储过程,您可以尝试将它们包装到一个自定义存储过程中,您可以随意使用它。

还可以尝试将这3个存储过程中的逻辑合并为一个新逻辑。尝试考虑标量函数,表类型,表值函数等。 SQL服务器可以让你做你想做的事情。

答案 2 :(得分:0)

是的,你绝对可以,但你不会使用复合操作。

您可以使用Orchestration按顺序执行调用,使用Response of one来使用Map创建下一个请求。

这实际上是一种非常常见的模式。