Как проверить статус задания из потока управления служб SSIS? - PullRequest
3 голосов
/ 02 сентября 2008

Вот мой сценарий - у меня есть задание SSIS, которое зависит от другого предыдущего задания SSIS для запуска. Мне нужно иметь возможность проверить статус первой работы перед тем, как приступить ко второй. Невозможно добавить 2-е задание в рабочий процесс первого, поскольку оно уже слишком сложное. Я хочу иметь возможность проверить состояние первого задания («Не выполнено», «Успешно», «В настоящее время выполняется») »у второго и использовать его в качестве условия, чтобы решить, должно ли выполняться второе, или дождаться повторной попытки. Я знаю, что это можно сделать, запросив базу данных MSDB на SQL Server, на котором выполняется задание. Мне интересно, есть ли более простой способ, такой как, возможно, использование задачи чтения данных WMI? У кого-нибудь был такой опыт?

Ответы [ 2 ]

4 голосов
/ 02 сентября 2008

Возможно, вы захотите создать третий пакет, который запускает packageA, а затем packageB. Третий пакет будет содержать только две задачи выполнения пакета.

http://msdn.microsoft.com/en-us/library/ms137609.aspx

@ Craig Таблица состояния является опцией, но вам придется следить за ней.

Вот статья о событиях в SSIS для вашего оригинального вопроса.
http://www.databasejournal.com/features/mssql/article.php/3558006

0 голосов
/ 02 сентября 2008

Почему бы не использовать стол? Просто попросите первую работу обновить таблицу, указав ее статус. Второе задание может использовать таблицу для проверки статуса. Это должно сработать, если я правильно читаю вопрос. Таблица будет (должна) иметь только одну строку, поэтому она не будет снижать производительность и не должна вызывать взаимоблокировку (конечно, теперь, когда я ее напишу, это произойдет):)

@ Джейсон: Да, вы можете следить за ним или у вас может быть триггер, запускающий второе задание, когда будет получен конечный статус. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...