Sql server SSIS-捕获“;ExecutionResult";/&引用;“数据代码”;可变的?
SSIS似乎在SSISDB/目录的internal.executable\u statistics下有一些名为execution\u result的未公开变量 但在某些地方它也被称为数据代码,但它本质上是针对每个可执行文件(任务或包级别等) 0=成功,1=失败,2=完成,3=取消 我正在滚动一些自定义日志记录,作为SSIS中ETL任务的简化/可理解视图,以便与SQL Server中SSIS目录“内部”模式中更多的“厨房水槽”日志记录配合使用 没有任何系统变量可以模拟/捕获任何特定可执行文件的ExecutionResult。是否有任何方法可以捕获它并将其写入表或保存在变量中 我见过一些人试图在脚本任务中使用它,而脚本任务必须引用.dtsx文件路径等等——看起来很复杂,但有人知道一种优雅的方法吗 基本上,我需要一个日志级别(自定义编写),它基本上是:包XYZ,诸如此类,诸如此类,诸如此类,executionResult:1 我再次意识到这是在可执行的统计数据中,但不是我喜欢的,我目前只有SQL Server 2012,所以也不能自定义太多 本质上,我想知道一个包最终是“成功”还是“失败”。错误在正确的轨道上,但不同。因为包(或容器)可能会出现错误,并且最终仍然会成功Sql server SSIS-捕获“;ExecutionResult";/&引用;“数据代码”;可变的?,sql-server,variables,logging,ssis,Sql Server,Variables,Logging,Ssis,SSIS似乎在SSISDB/目录的internal.executable\u statistics下有一些名为execution\u result的未公开变量 但在某些地方它也被称为数据代码,但它本质上是针对每个可执行文件(任务或包级别等) 0=成功,1=失败,2=完成,3=取消 我正在滚动一些自定义日志记录,作为SSIS中ETL任务的简化/可理解视图,以便与SQL Server中SSIS目录“内部”模式中更多的“厨房水槽”日志记录配合使用 没有任何系统变量可以模拟/捕获任何特定可执行文件的Ex
我想我可以根据包/容器是“成功”还是“失败”来装配两个单独的执行SQL任务,然后从那里开始。嗯。使用事件处理程序时,ExecutionResult可用(在OnExecStatusChanged事件处理程序上):
OnExecStatusChanged
事件处理程序,@[System::ExecutionResult]
变量将可用
如果您不熟悉事件处理程序,可以参考以下文章:
更新1 您还可以从每个任务的
ExecValueVariable
属性中获益: