Пакет служб SSIS не может найти параметр в командной строке
У меня есть файл DTSX, который должен иметь параметризованный запрос. Запрос происходит в "DataFlowTask" здесь:
Который вызывает задачу потока данных здесь:
и запрос:
Сборка проекта - если я удаляю параметр, он работает нормально. Однако у меня возникают проблемы с настройкой параметра. Я пробовал, вероятно, сотню комбинаций, в том числе:
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package.Variables[OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package.Variables[OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package.Variables[User::OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package.Variables[$Package::OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package\DataFlowTask.Variables[$Package::OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package\DataFlowTask.Variables[User::OrderDate].Value";"1/1/2000"
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /set "\Package.Variables[OrderDate].Value;1/1/2000"
И всякие другие комбинации. Есть ошибки: "Конфигурация процесса не смогла установить пункт назначения по пути пакета..." или "Путь к пакету ссылается на объект, который не может быть найден"
Я полностью потерян - что мне не хватает?
1 ответ
Как показывает ваш скриншот, OrderDate
это параметр пакета, а не переменная. Итак, чтобы передать его с помощью dtexec, вам нужно назвать его так
dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /Parameter
"$Package::OrderDate(DateTime)";2008-12-22
Могут возникнуть проблемы с тем, как ваша система анализирует значения DateTime; возможно, вам лучше указать дату в формате ГГГГММДД или ГГГГ-ДД-ММ.