Sql server SSI防止警告传播
我在包的控制流中的Foreach循环容器中运行了一个脚本 在脚本中,我抛出一个警告,然后成功退出Sql server SSI防止警告传播,sql-server,ssis,warnings,stoppropagation,propagation,Sql Server,Ssis,Warnings,Stoppropagation,Propagation,我在包的控制流中的Foreach循环容器中运行了一个脚本 在脚本中,我抛出一个警告,然后成功退出 Dts.Events.FireWarning(-1, "", "warning message here", "", 0); Dts.TaskResult = (int)ScriptResults.Success; 我已经将系统变量全部设置为false 还尝试将包属性DisableEventHandlers设置为True 但是,仍将按以下顺序引发重复的警告消息: 剧本 Foreach循环容器
Dts.Events.FireWarning(-1, "", "warning message here", "", 0);
Dts.TaskResult = (int)ScriptResults.Success;
我已经将系统变量全部设置为false
还尝试将包属性DisableEventHandlers设置为True
但是,仍将按以下顺序引发重复的警告消息:
我可以把每一个事件记录为信息而不是警告。。。但我不想记录所有信息。记录所有警告要现实得多。为脚本任务创建OnWarning事件处理程序。事件处理程序不需要自己的任何任务,但需要将其系统变量“传播”设置为False。为脚本任务创建OnWarning事件处理程序。事件处理程序本身不需要任何任务,但它需要将其系统变量Propagate设置为False。做到了,谢谢!似乎我必须检查包中的每个任务并修改它的事件处理程序属性。有什么办法可以实现全球变革吗?我尝试设置程序包的OnWarning事件处理程序,但如果不单独更改每个任务,则不会产生任何影响。我不认为有全局方法来设置它,但我经常使用序列容器来实现这一点,因此序列容器内的任何任务中的任何错误都不会传播到它之外。这样做了,谢谢!似乎我必须检查包中的每个任务并修改它的事件处理程序属性。有什么办法可以实现全球变革吗?我尝试设置包的OnWarning事件处理程序,但如果不单独更改每个任务,则不会产生任何影响。我不认为有全局方法来设置它,但我经常使用序列容器来实现这一点,因此序列容器内任何任务中的任何错误都不会传播到它之外。