与BizTalk管理控制台“已完成的实例”等效的SQL查询是什么?
我想获得已完成实例的各种摘要,例如按服务名称分组,但“已完成的实例”选项卡没有“分组依据”选项
我可以直接查询SQL表吗?
如果是这样,我应该关注哪些表格?
答案 0 :(得分:3)
是的,你可以。需要的BizTalk DDBB是[BizTalkDTADb],所有执行的表都是[dta_ServiceInstances]。获得服务'名称和制作有用的报告表[dta_Services]也是必需的。我将此查询用于您要求的相同目的,但获取所有正确和错误的实例:
SELECT [nServiceId] OrchID, [strServiceName] OrchName,
CASE WHEN HRESULT = 0 THEN 'OK' ELSE 'ERROR' END AS [Status],
COUNT([nServiceInstanceId]) NumberOfInstances
FROM [BizTalkDTADb].[dbo].[dta_ServiceInstances] SI WITH (NOLOCK)
INNER JOIN [BizTalkDTADb].[dbo].[dta_Services] S
ON SI.[uidServiceId] = S.[uidServiceId]
WHERE S.[strServiceType] = 'Orchestration' AND SI.[dtStartTime] > '20161101'
GROUP BY [strServiceName],[nServiceId],
CASE WHEN HRESULT = 0 THEN 'OK' ELSE 'ERROR' END
ORDER BY 2, 3 DESC
如果您只想要成功的那些,您应该添加'其中'第&#34条; HRESULT = 0"并删除'选择'中的CASE句子和' group by'。而且我也在where子句中有一个约会,通常我只需要看看最后几天。
编辑:查询在BizTalk 2013中运行,我现在还没有安装2010,但我猜它是一样的。