Мне нужно удаленно выполнить пакет SSIS, расположенный в хранилище пакетов SSIS, из приложения C# .net.Какой метод следует использовать для удаленного запуска пакета SSIS из приложения .net?
Приложение расположено на отдельном сервере, сервисы интеграции не могут быть установлены на сервере приложений.
У меня есть функциональность, работающая на моей машине dev, только используя метод файловой системы, потому что я установил службы интеграции, чтобы запустить ее. Теперь мне нужно перевернуть его, чтобы вызвать пакет удаленно.
Прямо сейчас я использую следующее:
pkg = app.LoadFromDtsServer("\loadfile", "DBServer", Nothing)
Но я получаю следующее сообщение об ошибке:
«Подключение к службе Integration Services на компьютере„DbServer“не удалось из-за ошибки : «Доступ запрещен». По умолчанию только администраторы имеют доступ к службе Integration Services. В Windows Vista и более поздних версиях процесс должен выполняться с правами администратора, чтобы подключиться к службе Integration Services. См. Раздел справки для получения информации о том, как настроить доступ к службе ».
Конечно, пользователь, запускающий это приложение в производстве, не получит таких прав на сервере базы данных. Как я могу сделать этот запуск в качестве пользователя sql? Правильно ли это? Есть другие варианты, я знаю. Пакет не обязательно должен храниться в хранилище пакетов, но я считаю, что это лучшая практика.
Следует также упомянуть, что приложение передает имя файла через переменную пакета, поэтому любое решение также нуждается в возможности сделать это. Я не уверен, как это сделать, если я создам задание для запуска пакета.
Я имел успех при этом создавая задание, которое вызывает пакет, и запуск задания с помощью команды sql из .net. –
Не могли бы вы поделиться, если бы вы передавали переменную с помощью этого метода? Если да, то как вы это делали? –
Конечно. Я создал таблицу JobHistory, содержащую столбец для каждой переменной, которая должна быть передана в пакет. Приложение .net будет запускать команду sql, которая вставила бы строку в эту таблицу, а затем она начнет работу. Первым шагом пакета было чтение переменных из последней строки таблицы. Последний шаг состоял в том, чтобы обновить таблицу и установить столбец «JobResult» для «успеха» или другого сообщения. –