SSIS包在命令行中找不到参数

时间:2017-05-31 16:30:23

标签: visual-studio ssis

我有一个需要参数化查询的DTSX文件。查询发生在这里的“DataFlowTask”中:

enter image description here

这里调用数据流任务:

enter image description here

以下是参数:enter image description here

和查询:

enter image description here

项目构建 - 如果我删除参数,它运行正常。但是,我在设置参数时遇到问题。我已经尝试过一百种组合,包括:

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 个答案:

答案 0 :(得分:3)

由于屏幕截图显示OrderDate参数包,而不是变量。因此,要通过dtexec传递它,您需要以这种方式调用它

dtexec /f "D:\[location]\ExportOrdersWithParameter.dtsx" /Parameter 
"$Package::OrderDate(DateTime)";2008-12-22

系统如何解析DateTime值可能存在问题;也许,最好将日期指定为YYYYMMDD或YYYY-DD-MM。