You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在错误处理程序中获取FireError方法的SubComponent参数

SSIS FireError方法SubComponent参数获取说明
  • Dts.Events.FireError 方法的第二个参数SubComponent支持在错误处理程序中直接获取,无需额外自定义变量透传。
  • 访问方式:在错误对应的OnError事件处理上下文里,读取系统变量 System::SourceName 即可拿到传入的SubComponent参数值。

参数映射关系验证

你可以通过简单测试确认参数和系统变量的对应关系,在脚本任务中写入如下测试代码触发自定义错误:

bool fireAgain = true;
Dts.Events.FireError(
    errorCode: 1001,
    subComponent: "订单数据校验模块",
    description: "订单金额字段存在负值非法数据",
    helpFile: string.Empty,
    helpContext: 0,
    fireAgain: ref fireAgain
);

给该脚本任务绑定OnError事件处理程序,在事件处理流程中读取系统变量,对应关系如下:

  • System::ErrorCode:匹配传入的第一个参数errorCode,本例返回值为1001
  • System::SourceName:匹配传入的第二个参数subComponent,本例返回值为订单数据校验模块
  • System::ErrorDescription:匹配传入的第三个参数description,本例返回值为订单金额字段存在负值非法数据

注意事项:该变量值仅在当前错误对应的OnError事件处理上下文中有效,普通控制流、数据流节点无法读取某次错误触发时传入的SubComponent值;如果未主动调用FireError自定义触发错误,而是由脚本任务抛出原生运行时异常,System::SourceName会默认返回当前脚本任务的名称。

内容的提问来源于stack exchange,提问作者zernager

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 11:54:22