gpt4 book ai didi

SSIS 数据流脚本任务错误处理

转载 作者:行者123 更新时间:2023-12-01 22:34:47 25 4
gpt4 key购买 nike

我有一个脚本任务在 SSIS 数据流中间执行转换。如果脚本失败(假设它尝试将字母转换为数字),我需要它以“失败”状态停止并返回主包,然后利用数据流任务事件处理程序 OnError 正常退出.

目前,我发现数据流中的脚本任务返回一个 .net 错误弹出窗口,然后我必须清除该窗口。我已经在代码周围尝试了 Try Catch,这似乎阻止了调试窗口的出现,但我似乎无法让它以“失败状态”退出脚本,这将导致包失败。 Dts.TaskResult = Dts.Results.Failure 在数据流任务中似乎无效。目前我正在尝试这样做:

    Catch e As System.Exception
Me.ComponentMetaData.FireError(-1, "", "Error: ", e.Message, 1, True)
While Not e.InnerException Is Nothing
e = e.InnerException
Me.ComponentMetaData.FireError(-1, "", "InnerException: ", e.Message, 1, True)
End While
Exit Sub
End Try

...但这只是跳过坏行。数据流继续。问题是让它以“失败”退出,从而触发包中的 onError 错误处理程序事件。

非常感谢您提出的任何建议。格伦

最佳答案

脚本转换不具有返回成功或失败的相同功能。您可以使用以下代码强制发生错误:

    If Row.TestColumn = "Value I Want To Error On" Then
Error (1)
End If

基本上,Error 对象(函数?方法?无论如何!)将允许您模拟错误。意思是,您可以使用此代码使包出错。

关于SSIS 数据流脚本任务错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1490454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com