我正在使用dtexec从外部调度程序(Control-M)运行SSIS包。我想根据程序包的哪个部分失败向调度程序提供不同的错误代码。有没有办法在包失败时设置dtexec的返回码?
如果没有,是否有人知道另一种将状态传达给调度程序的方法?
由于
答案 0 :(得分:4)
看来DTEXEC有一个特定的退出代码列表,不能在程序包内以编程方式设置。此信息来自http://msdn.microsoft.com/en-us/library/ms162810.aspx
从dtexec返回的退出代码 实用工具
当包运行时,dtexec可以返回 退出代码。退出代码用于 填充ERRORLEVEL变量, 然后可以测试其中的值 条件陈述或分支 批处理文件中的逻辑。该 下表列出了那些值 dtexec实用程序可以设置何时 离开。
价值说明
0包成功执行。
1包装失败。
3包裹已被用户取消 4该实用程序无法找到所请求的包。无法找到包裹。
5该实用程序无法加载请求的包。无法装入包裹 6该实用程序在命令行中遇到语法或语义错误的内部错误。
我建议您在程序包上使用多种类型的SSIS错误日志记录之一,然后使用其他进程检查日志,以防无法确定程序包中的故障位置。