强制 For 循环任务失败
Forcing a For Loop Task to fail
我是 SSIS 的新手,所以这可能是微不足道的,但到目前为止,我还没有通过 google 或之前的问题找到任何有用的信息。
首先,我有一个包,其中包含来自 SSRS 订阅的 excel sheet 并将其发送给感兴趣的各方。问题是有时数据还不可用,因此 spreadsheet 除了命名列外完全是空的。我试图在包中包含逻辑,在 For 循环中,它将检查报告是否为空。如果是,请通知相关方会有延迟,并且包裹将 运行 每隔 30 分钟再发送 2 次。如果在第 3 次尝试后报告仍然为空,那么它会发送一封电子邮件说没有可用的数据,它会在明天重试。
我的问题是,如果循环计数达到某个数字,我不知道如何强制 for 循环任务失败。
这样的事情应该可行...将脚本组件添加到控制流并将您的循环计数器包含在 ReadOnly 变量列表中,下面的脚本将在 LoopCount = 0 时成功,但一旦 LoopCount = 1 就会失败。
导入系统
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
Public Class ScriptMain
Public Sub Main()
If CInt(Dts.Variables("LoopCount").Value.ToString) = 0 Then
Dts.TaskResult = Dts.Results.Success
Else
Dts.TaskResult = Dts.Results.Failure
End If
End Sub
End Class
我是 SSIS 的新手,所以这可能是微不足道的,但到目前为止,我还没有通过 google 或之前的问题找到任何有用的信息。
首先,我有一个包,其中包含来自 SSRS 订阅的 excel sheet 并将其发送给感兴趣的各方。问题是有时数据还不可用,因此 spreadsheet 除了命名列外完全是空的。我试图在包中包含逻辑,在 For 循环中,它将检查报告是否为空。如果是,请通知相关方会有延迟,并且包裹将 运行 每隔 30 分钟再发送 2 次。如果在第 3 次尝试后报告仍然为空,那么它会发送一封电子邮件说没有可用的数据,它会在明天重试。
我的问题是,如果循环计数达到某个数字,我不知道如何强制 for 循环任务失败。
这样的事情应该可行...将脚本组件添加到控制流并将您的循环计数器包含在 ReadOnly 变量列表中,下面的脚本将在 LoopCount = 0 时成功,但一旦 LoopCount = 1 就会失败。
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
Public Class ScriptMain
Public Sub Main()
If CInt(Dts.Variables("LoopCount").Value.ToString) = 0 Then
Dts.TaskResult = Dts.Results.Success
Else
Dts.TaskResult = Dts.Results.Failure
End If
End Sub
End Class