当行被定向到输出错误时的 SSIS 电子邮件消息

SSIS E-mail Msg when rows get directed to OutputError

我进行了验证,如果失败,它会被定向到“OutputError”列。最终将这些行存储在最后的 table 中 reviewed/dealt with.

计划是这不会在每次程序包运行时发生。

所以我想在一行发送到“OutputError”时给自己发送一封电子邮件。所有行一封电子邮件。

或者它可能在最后一步触发,将记录插入错误 sql table,这是一个 OLE DB 目标数据流任务。如果使用该 OLE DEB 目标插入 1 行或多行,则发送电子邮件。

在实际将错误行写入 table.

的 OLE DB 目标之前,将脚本组件添加到您的数据流任务中,充当转换(默认)

该组件将始终“点亮”,因此您需要在其中实现一个简单的行计数或设置一个布尔标志“是的,我们至少看到了一行”。这将通过声明您在 PreExecute 步骤中初始化的 class level/member 变量来完成。

在 ... 我不记得名字了,但 OnPipelineRowSent 之类的东西增加了计数器或将标志设置为 true。实际计数并不重要,是的,您可以检查该值是否已经为真,但这是一个微不足道的操作,所以我不会担心浪费的周期。

然后在 PostExecute 方法中,您将检查总行数 > 0 或“至少一行”标志是否为真。然后发送你的电子邮件 activity.