Переопределение сконфигурированных переменных пакета в SSIS 2008 с использованием DTEXEC /SET

У меня возникла проблема при переносе пакета 2005 года в 2008 год. Похоже, что в 2008 году переменные пакета, настроенные для использования фильтра конфигурации (например, заполненные из [Конфигурации служб SSIS]), не будут выполнять команду /SET, предоставленную dtexec.exe для переопределения значение переменной пакета во время выполнения.

Проблема задокументирована здесь http://dougbert.com/blogs/dougbert/archive/2009/04/07/understand-how-ssis-package-configurations-are-applied.aspx

Какое самое простое решение для этого? Мне нужно старое поведение SSIS 2005, когда переменная пакета изначально загружается из [Конфигурации SSIS], но я могу переопределить ее во время выполнения, если явно вызову /SET

У меня есть обходной путь, но я надеюсь на лучшее решение - у меня в основном есть 2 версии переменной, которую я хочу... например, NETWORK_PATH, NETWORK_PATH_CONFIG ... Я поместил выражение в NETWORK_PATH, чтобы использовать NETWORK_PATH_CONFIG (эта переменная будет заполнена из [Конфигурации SSIS]), если значение NETWORK_PATH изначально равно NULL во время выполнения, когда выражение впервые оценивается, в противном случае используйте предоставленное значение (предположительно, dtexec /SET)

1 ответ

Вы можете использовать /Conn, чтобы изменить расположение настроек вашей конфигурации и иметь там другие настройки, или полностью удалить переменную из конфигураций, чтобы ее можно было установить в параметре dtexec /set.

Если вы хотите иметь значение по умолчанию и переопределить, вам нужно будет использовать параметр /conn и изменить расположение настроек.

например

"C: \ Program Files (x86) \ Microsoft SQL Server \ 100 \ DTS \ Binn \ DTExec.exe"
/ Файл "C:\Path\To\My\Package\Import Types.dtsx" /Conn Connection1;"Поставщик =SQLNCLI10; Сервер =MYSERVER; База данных =DB_ONE;Uid= ИМЯ ПОЛЬЗОВАТЕЛЯ; Pwd = ПАРОЛЬ;" /Conn Connection2;"Поставщик =SQLNCLI10; Сервер =MYSERVER; База данных =DB_TWO;Uid= ИМЯ ПОЛЬЗОВАТЕЛЯ; Pwd = ПАРОЛЬ;"

Похоже, кто-то думал, что это лучше, чем метод 2005 года. Я хотел бы знать его обоснование, прежде чем ударить его.

Другие вопросы по тегам