2016-11-25 12 views
2

Что такое SQL-запрос, эквивалентный консоли администратора BizTalk «Завершенные экземпляры»?Что такое SQL-запрос, эквивалентный консоли администратора BizTalk «Завершенные экземпляры»?

Я хочу получить различные сводки завершенных экземпляров, например. сгруппированы по имени службы, но вкладка «Завершенные экземпляры» не имеет опции «Группировать по»

Можно ли напрямую запросить таблицы SQL?

И если да, то на каких таблицах я должен смотреть?

ответ

2

Да, вы можете. Для 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 

Если вы хотите только удачные, вы должны добавить в «где» п «HRESULT = 0» и удалите предложение CASE в 'select' и 'group by'. И у меня есть дата в разделе where where, обычно мне нужно только видеть последние дни.

EDIT: запрос работает в BizTalk 2013, у меня нет установленного 2010 года, но я думаю, что это то же самое.