无法锁定变量.找不到变量

Bau*_*aub 4 ssis

在SSIS中,我尝试使用文件系统任务将文件移动到存档目录.这就是我的任务 - http://imgur.com/raPZIzL

当我运行程序包时,我在此任务上失败:错误:文件系统上的0xC0014054任务:无法锁定变量"\ xxx\yyyy\Eligibility\SOURCE_ELIGIBILITY_IMPORT_0482014.CSV"以进行读访问,错误为0xC0010001"无法找到变量.当在程序包执行期间尝试从容器上的Variables集合中检索变量时,会发生这种情况,并且变量不存在.变量名称可能已更改或未创建变量."

我觉得有趣的是它说找不到变量,因为变量的初始值是'temp'(参见屏幕截图)然后我在此任务运行之前的几个步骤中设置了脚本任务中变量的值.所以我知道变量存在并且它具有正确的值(我可以在变量路径中打开文件).我只是不知道为什么或如何解决这个问题.我在互联网上发现了其他人发布的相同消息,但没有一个解决方案适合我.我也看不出这可能是一个竞争条件,设置变量值的脚本任务在此任务运行之前完成了大约一秒钟.

我尝试删除文件系统任务并重新创建它,仍然得到错误.我也重新启动了计算机思维可能会有所帮助,但事实并非如此.

编辑:更多信息...如果我将DelayValidation从True设置为False,我甚至在运行之前得到相同的错误,虽然这次它在有机会在代码中设置之前抱怨变量的初始值.

以下是具体错误:

错误:文件系统上的0xC0014054任务:无法锁定变量"\ XXX\YYYY\Eligibility\SOURCE_ELIGIBILITY_IMPORT_0482014.CSV"以进行读取访问,错误为0xC0010001"无法找到变量.当尝试从中检索变量时会发生这种情况在执行包期间容器上的变量集合,并且变量不存在.变量名称可能已更改或未创建变量."

错误:0xC002F304在文件系统任务,文件系统任务:出现以下错误消息时出错:"无法锁定变量"\ XXX\YYYY\Eligibility\SOURCE_ELIGIBILITY_IMPORT_0482014.CSV"用于读取访问,错误0xC0010001"无法找到变量.当在程序包执行期间尝试从容器上的Variables集合中检索变量时,会发生这种情况,并且变量不存在.变量名称可能已更改或未创建变量.".".

错误:文件系统上的0xC0014054任务:无法锁定变量"\ XXX\YYYY\Eligibility\Archive"以进行读访问,错误为0xC0010001"无法找到变量.当尝试从Variables集合中检索变量时会发生这种情况在执行包期间在容器上,并且变量不存在.变量名可能已更改或未创建变量."

错误:0xC002F304在文件系统任务,文件系统任务:出现以下错误消息时出错:"无法锁定变量"\ XXX\YYYY\Eligibility\Archive"用于读取访问,错误0xC0010001"无法找到该变量.当在程序包执行期间尝试从容器上的Variables集合中检索变量时,会发生这种情况,并且变量不存在.变量名称可能已更改或未创建变量."

Bau*_*aub 11

经过大量测试后,我发现表达式存在问题.似乎每次我进入表达式区域并将两个变量连接在一起时,就是问题开始时.

我只是在一个基本目录并添加"归档"到最后,在表达式构建器区域,它将正确评估,但包将失败.但是,如果我打开文件任务以进入编辑器并使用DestinationVariable属性的下拉列表并从该列表中选择一个变量,那么一切正常.

所以我最终创建了一些变量(我将要移动的每个文件一个),然后将该值设置为基本目录+"Archive",然后我从DestinationVariable属性的下拉列表中选择了该变量.跑,没有错误.