SSIS使用变量发送电子邮件任务

时间:2017-08-21 07:19:34

标签: email variables ssis task send

我被要求向我的员工发送一封电子邮件,其中包含以下信息:

Excel文件(EmployeeInfo):

EmpID   EmpName Rank    PromoGift
1       Peter       5       1
2       Armand      4       2
3       Tommy       5       5
4       Sarah       2       4
5       Maria       3       3

CSV文件(PromoCode):

PromoID Validation
1       1
2       0
3       1
4       1
5       0

文本文件(PromoInfo)

PromoID Gift
1       100$ Apple GC
2       80$ Apple GC
3       60$ Apple GC      
4       40$ Apple GC    
5       20$ Apple GC

要求:

1. Only employees that has Validation = 1 will receive a gift.
2. The gift is based on the PromoID (PromoGift)
3. "Data Flow Task, Execute Sql Task, ForEach Loop & Send Mail" Task can only be used to execute the task above.
4. In the email, I need to replace the [...] accordingly.
5. Employee's email are neglect in this exercise. 

我将通过以下消息向他们发送电子邮件:

亲爱的[EmpName],

这[CurrentYear],在我们的[EventName]期间,您已被选为获得下一级别Rank [Rank]的赢家。您将收到[礼物]!

经理[经理]的礼物!

恭喜!

我该怎么办(我是SSIS的新手)?

创建3个数据流任务并将每个文件加载到SQL Server表中。然后使用SQL任务进行加入,这样我就可以获得谁将收到礼物的列表,然后下一步是什么?我应该用什么来将这些变量插入我的电子邮件模板?我相信我也需要创建变量。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

检查这个。

1.首先将每个文件加载到SQL Server表中    $sql="INSERT INTO result (category_id,cat_name,cat_type,t_rate) SELECT category_id,cat_name,cat_type,AVG(rate) FROM review WHERE category_id='$category_id'"; EmployeeInfoPromoCode

2.打开SQL Server,您需要使用可以访问的“配置数据库邮件向导”创建配置文件和帐户   从管理节点中的数据库邮件节点的配置数据库邮件上下文菜单。   此向导用于管理帐户,配置文件和数据库邮件全局设置

  1. 查询发送邮件

    PromoInfo
  2. 4

        USE msdb
        GO
        EXEC sp_send_dbmail @profile_name='yourprofilename',
        @recipients='test@Example.com',
        @subject='Test message',
        @body='This is the body of the test message.
        Congrates Database Mail Received By you Successfully.'
    

    您可以使用这些示例并为其创建SP。并在您的SSIS包中调用此SP。