SSIS - 7.发邮件任务

  发邮件任务在SSIS中使用特别多,当包执行失败或者有报错的时候可以用发邮件任务给管理员发邮件通知。

  一、SMTP连接管理器

  SMTP连接管理器是发邮件任务用来连接SMTP(Simple Mail Transfer Protocol)服务器的向外发送邮件的。我们可以在SMTP连接管理器中修改下面的属性值:

 

  二、怎么使用发邮件任务:

  1)打开一个空白的SSIS包,将发邮件任务拖拽到设计面板上->右键任务->选择“编辑...”->打开编辑器,在常规页录入任务名称及描述信息。

  Send Mail Task Editor General Tab

  2)在邮件页,单击在“SMTP连接”右侧的三角下拉->选择新建"SMTP连接管理器"->在连接管理器中录入SMTP服务器地址->打开“消息源类型”下拉列表,选择“变量”

  消息类型中有3个选项可以选择:

      • 直接录入:直接在消息源中录入邮件内容。
      • 文件连接:消息源来源于文件,所以需要创建一个文件的连接管理器。
      • 变量:消息源内容来源于定义的变量值。  

  SMTP Connection Manager Editor

  Message Source From a Variable

  3)在消息源中选择“新建变量”,设置变量名称为“Content”,内容为“This is from a variable.”。填完后单击OK。

  Add a Variable to hold the e-mail content

  4)在优先级下拉选择框中选择“高”,它有3个选项:高,低,正常。默认是选择正常。

  5)单击添加附件文本框右侧的“...”按钮->选择添加一个附件。可以添加多个附件,附件地址以符号“I”分开。注:如果这个包是在服务器上执行的,那么附件的路径指的是服务器上的路径而不是你本机的路径。

  6)在发送邮件任务编辑器中录入邮件发送邮箱,接受邮箱,抄送邮箱地址,填写邮件主题及邮件内容,填完之后单击OK完成配置,执行包就能收到邮件了。

  Send Mail Task Editor Mail Tab Settings

 三、在发送邮件任务中使用表达式

  表达式可以用来代替任务组件中的任何属性值,我们希望包执行报错时错误信息可以存放到一个变量里,下面接着上面开发的包来做。

  7)定义变量“Error”,数据类型为String,值为空。拖拽一个表达式任务到发送邮件任务的上方,如下所示。

  An Expression Task Links to a Send Mail Task

  8)右键表达式任务->选择“编辑...”->在表达式编辑器中录入下面的内容,之后单击OK。

    @[User::Error] = "This is an error message."

  9)右键发送邮件任务->选择“编辑”->在邮件标签页修改消息源类型为“直接输入”,并将附件移除->在表达式标签页上单击“...”按钮打开属性表达式编辑器->在下拉的属性列中选择“消息源”->单击表达式右侧的“...”打开表达式编写为“@[User:Error]”->单击确定。

  SSIS Property Expressions Editor

  10)执行包,包执行完成后收到邮件,邮件内容为“This is an error Message.”

 

posted @ 2018-07-26 14:42  Like_Moon  阅读(687)  评论(0编辑  收藏  举报