您是否曾在SSIS 2008中遇到奇怪的行为,即DelayValidation 在Flatfile连接管理器上随机不起作用?
以下是我在SSIS 2008(Non R2)上讨论的情景:
我的软件包涵盖了将30个不同的* .CSV平面文件导入数据库
每天将CSV文件传送到动态创建的文件夹
(d:\ DataDelivery \ DeliveryID_< GeneratedDeliveryID&GT)
(例如“D:\ DataDelivery \ DeliveryID_73 \”,“D:\ DataDelivery \ DeliveryID_74 \”,..)
==>从此处CSV文件通过SSIS
当前导入的传递ID将由存储过程确定 在SSIS包的开头(存储到SSIS变量“iDeliveryID”)
根据确定的交货ID,我们构建完整的导入路径
使用带有表达式(EvaluateAsExpression = True)的名为“sImportPath”的变量:
“D:\ DataDelivery \ DeliveryID _”+(DT_WSTR,1252)@ [User :: iDeliveryID] +“\”
...
然后在表达式中使用生成的导入路径 每个Flatfile连接管理器的连接属性,例如:
每个Connection Manager的DelayValidation属性设置为true !!!
因此,对于交付ID 73,Flatfile连接管理器的连接属性
应该在运行时解决:
d:\ DataDelivery \ DeliveryID_73 \ fileA.csv
d:\ DataDelivery \ DeliveryID_73 \ fileB.csv
d:\ DataDelivery \ DeliveryID_73 \ fileC.csv
但这就是现实中发生的事情:
==>在所有情况下,生成的路径(变量sImportPath)都能正确解析
(我正在记录这个)
==>但似乎DelayValidation是随机工作的一些
连接管理器虽然不能为其他人工作
==>我还尝试为整个包以及所有包设置DelayValidation = true
单个任务和容器..仍然是相同的行为
你有没有经历过这样的行为?如果是,那么你是如何处理的呢?
非常感谢任何建议 延