【问题标题】:SSIS: Stop SSIS package execution if any files missingSSIS:如果缺少任何文件,则停止 SSIS 包执行
【发布时间】:2016-06-23 15:43:36
【问题描述】:

我有一个 SSIS 包,它在预定义的位置查找 8 个文件。使用脚本任务我正在检查是否缺少任何文件?如果有任何文件丢失,我会发送一封电子邮件,说明文件丢失。现在,如果在发送电子邮件任务后丢失任何文件,我想停止当前包。

来自微软链接:

我可以看到我可以通过停止 ssis 服务(从运行 SSIS 服务的 SQL Server)来停止 ssis 包,这是我不想做的,因为我不确定它是否会再次自动启动 ssis 服务。此外,我无权查看和运行 ssis 服务器中的包并以这种方式进行测试。

我也不确定如何停止使用 DTEXEC 工具。我将不胜感激。

【问题讨论】:

  • 您可以例如计算文件并将其保存到变量中。然后使用带有表达式的工作流约束,并且仅在有八个文件时才继续:blogs.msdn.microsoft.com/mattm/2006/11/01/…
  • 谢谢@Nick.McDermaid 我已按照链接中的教程进行操作,并且成功了。
  • 如果您想在答案中记录您的解决方案,您应该能够接受它。
  • 对不起,我试过了,它不接受我的回答。谢谢

标签: sql-server ssis ssis-2012 dtexec


【解决方案1】:

只需通过添加代码“dts.TaskResult=ScriptResults.Failure”使容器失效。

之后,您可以添加一个“失败”容器(只需添加一个容器并将绿色箭头更改为红色)即可发送电子邮件。 完成此操作后,您必须在电子邮件容器上强制“失败”并转到容器的属性(您只需右键单击并选择“属性”)。查找“FailPackageOnFailure”并将其更改为“True”。希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多