【问题标题】:SSIS Foreach LoopContainer - Send results via Email TaskSSIS Foreach LoopContainer - 通过电子邮件任务发送结果
【发布时间】:2018-03-21 13:14:41
【问题描述】:

我有关于在嵌套了另一个 Foreach LoopContainer 的 Foreach LoopContainer 中发送邮件的问题

一切正常 (1. Select areas SQLTask) 从数据库中选择不同的区域 - 它工作正常。 Startdate, enddate 用作选择中的时间段 - 工作正常。 Collection 中的1.st Foreach Loop Container 具有 ADO 对象源变量区,枚举模式 Rows 在第一个表中。在变量映射中是我的变量区域 传递给执行 SQL 任务。

执行 SQL 任务 - 作为我定义的 SQL 查询:

 `select * from my table, where Date between start date and end date and area = ?`

然后它转到嵌套的 Foreach 循环容器,其中是脚本任务 - 它工作正常,它检索数据 which are sent via mail Task

我的问题是

出于测试目的,我有两个区域 - 第一个循环仅发送第一个区域的行,这没关系,但对于第二个区域,SSIS 为我提供了第一个和第二个区域的记录。哪里可能出错?我为两个区域检索了两封邮件,这意味着从第一个 sql 任务到第一个 foreach 循环容器的参数看起来不错,但是第一个邮件有第一个区域的数据,第二个有第一个和第二个区域的记录。

提前致谢

【问题讨论】:

  • 听起来您并没有清理循环中的某些内容,但如果没有看到更多细节,则无法猜测它是什么。
  • 我想脚本任务是用来构建邮件正文还是什么?它是否存储在变量中?邮件任务的表达方式是什么?无论如何,如果你使用一个变量,你将不得不在每次迭代中转储它 - 否则只要你的循环正在运行,它就会一遍又一遍地扩展。
  • 先生们,感谢您的帮助。我已经解决了!邮件正文是在脚本任务中创建的,根据@Tyron78,我已经转储了变量(邮件的标题和正文),现在它可以工作了,谢谢。泰伦,你能把你的评论作为答案吗?我会接受的。
  • 很高兴我能帮上忙。感谢您的接受。

标签: sql sql-server ssis


【解决方案1】:

我想脚本任务是用来构建邮件正文还是什么?它是否存储在变量中?您的邮件任务的表达方式是什么?无论如何,如果您使用变量,则必须在每次迭代中转储它 - 否则只要您的循环正在运行,它就会一遍又一遍地扩展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-10
    相关资源
    最近更新 更多