可以通过两种不同的原因触发接收端口

时间:2014-02-04 15:06:34

标签: biztalk

我使用适用于oracle的WCF-Adapter使用轮询查询的正常接收端口。现在问题是接收端口不仅需要在轮询查询命中时运行,而且每天一次,不管轮询语句如何。

有没有办法在不重新创建整个过程的情况下实现这一目标?

2 个答案:

答案 0 :(得分:2)

最干净的方法是使用额外的接收位置。因此,您将得到一个包含两个接收位置的接收端口,每个接收位置一个。

过去,我在轮询SQL Server时使用WCF适配器完成了此操作。不幸的是,使用两个位置确实需要复制模式以考虑不同的名称空间。您可能还需要两个不同(并且基本相同)的模式。

WCF-SQL polling个位置需要不同的 InboundId 值,而WCF Oracle polling(正如您在评论中所述)需要为每个接收位置使用不同的 PollingId

ESB工具包包括remove and add namespaces的管道组件,如果您需要额外的下游应用程序,只对来自这两个位置的消息使用单个模式和/或不想复制BizTalk映射。

答案 1 :(得分:0)

更改您的轮询语句,使其具有OR CURRENT_TIME()BETWEEN .... 这样它就会在你想要的时候触发。