我有一个包含5个软件包的SSIS项目。SSIS拒绝运行一些软件包
+MyAwesomeProject
-Package
-CoolPackage
-AwesomePackage
-HyperPackage
-FinalPackage
启动包是“包”和一个仅仅是一个持有人,将调用包按顺序先冷静,然后真棒等等。
如果我从Visual Studio运行该项目,它可以完美地工作,并完成我想做的所有事情......完美无缺。没有错误,没有问题,一切正常。
当我部署脚本时,使用正确的用户运行作业并使用与Visual Studio作业完全相同的参数设置SQL作业,它将毫无错误地运行,但跳过CoolPackage,AwesomePackage和HyperPackage包。它将执行Package中的代码,然后按照Package中定义的顺序执行所有四个程序包,而不是直接执行FinalPackage。
由于在Visual Studio中一切都很完美,我甚至不知道从哪里开始寻找。
从SSIS错误日志开始。最可能的原因是SQL代理的权限。 –
我发现了原因,但它产生了另一个问题。它运行所有软件包,但Cool,Awesome和Hyper软件包中的第一件事是连接到FTP服务器,下载文件,然后遍历这些文件。我没有连接到存储文件的地方,只使用\\ server \ folder \子文件夹指定存储ftp文件的位置并进行迭代。 SQL作业没有从那里读取的权限,因此它失败了,但它产生了没有错误。它只是说“将所有文件从ftp传输到本地磁盘”(即\\ server e.tc磁盘),然后“迭代为空” –
作业是否有权连接,但不能查看这些文件?如果是这样,那么我认为这不会是一个错误。您可能必须编写一些自定义代码,以便在找不到预期文件时引发错误。 –