在工作流中发送电子邮件

在工作流中发送电子邮件

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗?请在此处查看本文的英文版本以便参考。

你可能希望你的工作流发送一封电子邮件, 以用于多种目的。例如, 你可能希望工作流在每次开始运行时向你发送通知。

触发工作流发送电子邮件的新项目

1. 将新项目添加到列表或库中, 然后启动工作流。

2. 工作流向你发送一封电子邮件, 告知你它已启动。

本文介绍如何设置工作流以发送电子邮件。它还介绍了如何使用工作流查找来处理邮件并在邮件正文中包含动态内容, 包括如何插入或构建超链接。最后, 本文介绍如何设置邮件内容的格式, 并提供有关使用工作流生成的电子邮件的其他信息。

想进行什么操作?

从工作流发送基本电子邮件

动态选择要接收邮件的用户或组

包含有关当前项目的信息

包含静态超链接

包括指向当前项目的超链接

包含图像

设置邮件内容的格式

发送您自己的自定义任务通知

标识不受支持的选项

从工作流发送基本电子邮件

通过使用工作流设计器中的 "发送电子邮件" 操作, 你可以设置自定义工作流以向你或任何其他指定的用户或组发送电子邮件。电子邮件的可用字段是 "收件人"、 "抄送"、"主题" 和 "正文"。这些字段可以包含静态文本和从工作流查找动态生成的文本。

你可以使用 "发送电子邮件" 操作来生成许多类型的邮件, 包括当工作流达到指定阶段或执行指定操作 (包括工作流的整体开始和停止) 和提醒时的通知其截止日期未完成的任务。

注意: 必须先在服务器上配置传出电子邮件设置, 然后你的工作流才可以发送电子邮件。如果不确定服务器的当前电子邮件设置, 请与服务器管理员联系。在 "另请参阅" 部分中可找到有关传出电子邮件设置的详细信息的链接。

在此示例中, 你将设置你的工作流, 以便在每次开始在新项目上运行时向你发送电子邮件通知。使用与你的SharePoint Server版本相匹配的SharePoint Designer版本。例如, 对于SharePoint Server 2010 , 请使用SharePoint Designer 2010。而且, 对于SharePoint Server 2010之后的所有版本 (包括SharePoint Server 2016和SharePoint Online), 请使用SharePoint Designer 2013。你可以从Microsoft 下载中心下载SharePoint Designer 2013 , 并在 "另请参阅" 部分中找到有关其的详细信息。

打开 sharepoint Designer 2013 并连接到 sharepoint 网站

将 SharePoint Designer 2013 作为 Office 2013 应用程序进行安装。若要打开 sharepoint Designer 2013 并连接到 sharepoint 网站, 请按照下列步骤操作:

  1. 在 "开始" 菜单上选择 "打开 SharePoint Designer 2013"。单击 "开始" 图标, 单击 "所有程序", 单击 " Microsoft Office 2013", 然后单击 " SharePoint Designer 2013"。

  2. 在 SharePoint Designer 2013 起始页上单击 "打开网站"。

  3. 输入要连接到的 SharePoint 网站。例如, http://www.contoso.com/sites/a-sharepoint-site。

  4. 单击 "打开" 以打开 "网站"。

  5. 如果出现提示, 请输入你的凭据。(如果安全性未与您登录的计算机集成, 系统会提示您输入您的凭据。)请确保使用具有对 SharePoint 网站的访问权限的凭据。

基于 SharePoint 工作流平台创建列表工作流

  1. 单击导航窗格中的 "工作流" 节点

  2. 在功能区的新部分中单击 "列表工作流" 下拉列表, 如图所示。

  3. <remove/align>

  4. 选择要与新工作流关联的列表

  5. 在 "创建列表工作流" 对话框中, 输入工作流的名称说明, 然后确保将平台类型设置为SharePoint 2013 工作流, 如图所示。

音符

如果您没有看到 "SharePoint 工作流" 作为可用的平台类型, 则工作流管理器未配置为使用 SharePoint 场。请参阅配置工作流管理器以使用 SharePoint Server 2013 场

7. 单击 "确定" 以创建工作流。

创建工作流后, 你可以添加操作、条件、阶段、步骤和循环来构建你的工作流。这些工作流组件在 SharePoint Designer 2013 的功能区中可用, 如图所示。

音符

上一过程用于创建列表工作流。可以使用与以下修改相同的过程创建可重用工作流或网站工作流。创建工作流时, 不选择功能区中的 "列表工作流" 按钮, 而是选择 "可重用工作流或网站工作流" 按钮。

在 "另请参阅" 部分中可找到有关工作流操作的可用列表的详细信息。

定义操作以创建 "发送电子邮件" 条件

  1. 单击 "操作", 然后单击 "发送电子邮件"。

  2. 在 "操作" 中, 单击 "这些用户"。

  3. 在 "定义电子邮件" 对话框中, 从现有用户和组中选择 "用户", 或在 "收件人" 框中输入您自己的电子邮件地址。

    注意: 

    • 以便将电子邮件发送到外部电子邮件地址。必须能够从各自的电子邮件服务器中检索信息。

    • 消息的 "收件人" 地址可以是特定的静态地址 (例如, NORTHWINDTRADERS\junminjunmin@northwindtraders.com) 或工作流查找 (对于变量信息)。若要了解有关使用工作流查找动态处理从工作流发送的电子邮件的详细信息, 而不是使用静态地址, 请参阅下一节动态选择要接收消息的用户或组

    • 所呈现的消息的发件人地址始终是服务器管理员的电子邮件地址, 除非服务器管理员更改当前 Web 应用程序或所有 web 应用程序的发件人地址。若要了解详细信息, 请阅读配置特定 web 应用的传出电子邮件

  4. 在 "主题" 框中, 键入邮件的主题, 或单击 "显示数据绑定 按钮图像 " 以将工作流查找定义到此处所需的文本。

    注意: 必须在 "主题" 框中输入一些内容, 才能使工作流正确编译。

  5. 在 "主题" 框下方的 "大" 框中, 键入或粘贴邮件的正文文本。

    提示: 此框中没有快捷菜单可用。若要复制文本, 请按 CTRL + C。若要粘贴复制的文本, 请按 CTRL + V。复制和粘贴的文本不能包含任何工作流查找。

此时, 您可以单击"确定"以完成邮件。

6. 返回到 "工作流创建" 页面, 单击 "操作", 然后单击 "转到某一阶段"。

7. 单击 "阶段", 然后选择 "工作流结束"。

8. 单击 "发布" 并发布工作流。

另一方面, 包含已启动工作流的新项目的标题, 或者甚至是包含指向该新项目的链接, 这可能会很有用。以下各节将介绍如何执行这些操作, 以及如何设置消息文本外观的格式。但首先, 你将了解如何使用工作流查找动态地处理消息。

返回页首

动态选择要接收邮件的用户或组

如果您在邮件的 "收件人" 和"抄送" 字段中提供静态地址, 那么每当您需要更改收件人时, 都必须在工作流设计器中打开工作流并手动进行更改。如果地址会经常更改, 最好在 "收件人" 和"抄送" 字段中使用工作流查找。查找可以从当前项目中的字段、其他列表或库中的项目或工作流变量中引用地址。

使用自定义列表存储收件人地址

如果收件人定期进行更改, 但通常不足以确保每次启动工作流时必须在启动窗体上指定, 则可以创建自定义收件人列表, 其中包含引用它的每个工作流的一个列表项, 然后创建列, 您可以在其中存储每个工作流中的每封电子邮件要发送到的地址。当任何工作流消息的收件人发生更改时, 您只需更改该工作流的收件人列表项的相应字段中的地址。

重要: 用于为工作流电子邮件存储地址的列可以是单行文本、多行文本或 "人员" 或 "组" 类型的列。如果你使用人员或组列, 则工作流为电子邮件地址引用的每个字段中只能进行一个输入。创建列时, 请确保在 "允许多重选择" 下选择 ""。如果要使用此类型的列指定多个收件人, 您可以创建一个 SharePoint 组, 其中包含您希望工作流将电子邮件寻址到的人员, 然后在该字段中指定组。当创建栏时, 请确保在 "允许选择" 下选择 "人员和组"。在 "另请参阅" 部分中, 可以找到有关创建列表和添加列的详细信息的链接。

注意: 创建 SharePoint 组时, 请确保每个组至少具有网站的 "读取" 权限, 并在 "新建组" 页面的 "组设置" 区域中的 "用户可以查看组的成员身份" 下选择 "每个人"。

若要使用自定义收件人列表的工作流查找, 请执行以下操作:

  1. 在浏览器中, 使用以下三列创建名为 "收件人" 的自定义列表:

    • 将 "默认标题" 列的名称更改为 "工作流名称"。保留其他所有选项。查找有关在列表或库中更改列的详细信息的链接另请参阅部分。

    • 添加名为 "收件人" 的人员或组列。在此列中, 允许选择 "人员" 和 "组", 但不允许多项选择。保留其他所有选项。查找有关在列表或库中创建列的详细信息的链接另请参阅部分。

    • 添加一行名为Cc的文本列。保留其他所有选项。

  2. 在收件人列表中, 创建一个新项目, 然后执行以下操作:

    • 在 "工作流名称" 字段中, 键入 "文档审阅", 这是此处使用的示例工作流的名称。

    • 在 "收件人" 字段中, 单击 "通讯簿" 按钮图像 , 然后在 "选择人员和组" 对话框中, 选择要向其发送邮件地址的单个用户或组

    • 在 "抄送" 字段中, 键入要向其发送副本地址的收件人的电子邮件地址, 用分号分隔多个地址。

  3. 遵循 "创建基于 SharePoint 工作流平台 <add link>" 部分的列表工作流, 并创建新的工作流。(或者, 你也可以修改以前创建的现有工作流)

  4. 单击 "操作", 然后单击 "发送电子邮件"。

  5. 在 "操作" 中, 单击 "这些用户"。

  6. 在 "定义电子邮件" 对话框中, 在 "收件人" 框的末尾, 单击 "通讯簿" 按钮图像

  7. 在 "选择用户" 对话框中的 "或从现有用户和组中选择" 列表中, 单击 "用户的工作流查找", 然后单击 "添加"。

  8. 在 "查找人员或组" 对话框中, 选择以下选项:

    • "数据源:收件人" 或自定义列表的名称。

    • 中的字段: "收件人" 或 "收件人" 行中包含所需地址的字段。

    • 域返回为: 登录名, 这将决定电子邮件中的 "收件人" 字段格式

    • 字段:收件人: 工作流名称

    • : 键入文档审阅或当前工作流的名称。

      此查找显示 "来自收件人列表", 选择工作流名称等于 "文档审阅" 的 "收件人" 字段的值。

      对话框的上半部分指定列表和列;对话框的下半部分指定行。

  9. 在 "查找人员或组" 对话框中, 单击"确定"

  10. 在有关确保唯一查找的消息中, 单击"确定"

  11. 再次单击"确定"以关闭 "选择用户" 对话框。

  12. 在 "定义电子邮件" 对话框中, 在"抄送" 框的末尾, 单击 "通讯簿" 按钮图像

  13. 在 "选择用户" 对话框中的 "或从现有用户和组中选择" 列表中, 单击 "用户的工作流查找", 然后单击 "添加"。

  14. 在 "定义工作流查找" 对话框中, 选择以下选项:

    • "数据源:收件人" 或自定义列表的名称。

    • 字段 "源": "抄送" 或在 "抄送" 行中包含所需地址的域。

    • 域返回为: 登录名, 这将决定电子邮件中的 "收件人" 字段格式

    • 字段:收件人: 工作流名称

    • : 键入文档审阅或当前工作流的名称。

      此查找显示 "从收件人列表中, 选择工作流名称等于文档审阅" 的 "抄送" 字段的值。

  15. 单击"确定", 在警告消息中再次单击"确定", 然后再次单击"确定"以关闭 "选择用户" 对话框。

现在, 当工作流发送此电子邮件时, 它会将其发送到自定义收件人列表中的文档审阅项目的 "收件人" 和 "抄送" 字段中列出的地址。若要更改收件人, 只需在列表项中进行所需的更改。

单个工作流可能会发送多封电子邮件, 邮件可能不会发送给相同的收件人。若要为此工作流发送的其他邮件存储其他地址, 您可以将列添加到该列表以存储其他地址。在这种情况下, 你可能需要将 "第一条消息" 的列命名为 "第一条消息"、"第二条消息" 等。

或者, 您可以设计列表, 以便为工作流发送的每封邮件创建一个项目, 而不是每个工作流对应一项。在这种情况下, 请确保用于标识每条消息的名称是唯一的, 以便检索地址的查找会返回所需的唯一值。

使用工作流启动窗体指定收件人

如果您希望每次手动启动工作流时都指定收件人, 您可以自定义工作流启动窗体以从启动工作流的人员处收集地址。然后, 工作流只需直接使用输入的地址, 或将其复制到当前项目中的域中, 这样在工作流完成其当前实例之后它们仍可供参考。如果将工作流设置为自动启动, 则可以在启动窗体中为每次发生自动启动指定默认地址。

返回页首

包含有关当前项目的信息

到目前为止, 示例消息中的正文文本是静态的: 每次工作流创建邮件的一个实例时, 文本将完全相同。

但是, 它可能会很有用, 包括与当前正在运行工作流的项目相关的更改文本。例如, 在邮件正文中包含需要审阅的文档标题可能会很有用。若要包含此类动态信息, 您可以使用工作流查找。查找检索来自不同数据源的数据, 例如列表、库和工作流数据。

若要将文档的标题添加到消息文本, 请执行以下操作:

  1. 键入或粘贴要在其中显示查找信息的静态文本。

  2. 将插入点放在要查找的位置。

    提示: 插入查找后, 不能将其拖动到新位置。(但是, 您可以通过拖动其他文本来 "重定位" 查找。)同样, 不能剪切、复制或粘贴包含查找的任何文本, 也不能将其剪切、复制或粘贴。

  3. 单击 "添加" 或 "更改查阅"。

  4. 在 "查找字符串" 对话框中, 在 "数据源" 框中选择 "当前项", 然后在 "源" 框中选择 "字段名称"。

  5. 单击“确定”。

  6. 插入的查找显示在邮件正文中。

  7. 单击 "发布" 以发布工作流。

运行工作流且生成邮件时, 会将查找替换为文档的标题。

插入标题5

包括文档标题非常有用, 但将直接带到文档本身的超链接包括在内也可能更有用。若要执行此操作, 请在超链接中包含查找。

返回页首

包含静态超链接

您可以通过使用 "格式" 工具面板右上角的 "编辑超链接" 按钮, 在工作流电子邮件的正文中包含静态超链接 (始终链接到相同地址或位置), 方法是在 "定义电子邮件"对话框。

    
    
  1. 键入或粘贴要在其中显示链接的静态文本。

  2. 选择文本, 然后单击 "编辑超链接"。

  3. 在 "编辑超链接" 对话框中, 键入网站的地址。

  4. 单击"确定"

  5. 插入的超链接将显示在邮件正文中。

注意: 某些基于文本的电子邮件程序不能呈现 HTML 编码, 因此不会呈现超链接。

若要了解如何使用工作流查找创建基于当前正在运行工作流的项目的不同地址的动态超链接, 请参阅下一节 "将超链接添加到当前项目"。

返回页首

包括指向当前项目的超链接

在上一节中,包含静态超链接, 示例超链接中的地址不包含任何变量信息: 每次工作流发送电子邮件时, 超链接指向相同的页面。

但是, 通过使用工作流查找, 你可以创建使用当前项的信息来确定指向哪个 URL 的动态链接。

如果当前项是文档库中的文档

在工作流启动通知示例中, 你可能希望提供指向新文档本身的链接:

  1. 键入或粘贴要在其中显示链接的静态文本。

  2. 选择文本, 然后单击 "编辑超链接"。

  3. 在 "编辑超链接" 对话框中, 单击 "函数 (fx)"。

提示: 插入查找后, 不能将其拖动到新位置。(但是, 您可以通过拖动其他文本来 "重定位" 查找。)同样, 不能剪切、复制或粘贴包含查找的任何文本, 也不能将其剪切、复制或粘贴。

<This 应为 point 4>

  1. 在 "查找字符串" 对话框中, 选择 "数据" 框中的 "当前项目"。

  2. 在 "源中的字段" 框中, 选择 "编码的绝对 URL", 然后单击"确定"

    当前项目的插入超链接1 当前项目2的插入超链接 当前项目3的插入超链接

当邮件的收件人单击该链接时, 将打开文档进行查看或编辑。

如果当前项是列表项

当你创建指向列表项 (例如, 公告或日历事件) 的链接时, 你可以选择让该链接打开列表项的显示窗体 (dispform.aspx 页) 或编辑表单 (editform.aspx)。

若要创建用于打开列表项的链接, 请执行以下操作:

为列表项2插入超链接

  1. 在浏览器中, 导航到要在其中创建此工作流的列表。

  2. 如果您希望链接打开 "显示" 窗体或 "编辑项目" (如果希望链接打开 "编辑" 窗体), 请使用 "查看项目", 打开库中任何现有文档的列表项。

  3. 从开始的 http: 或 https: 到第一个等号 (=) 复制地址栏中的地址, 如下图所示。

    插入列表项1的超链接

  4. 为列表项2插入超链接

  5. ?ID = text 是一个查询字符串参数, 指示页面显示当前列表或库中的任何项目的窗体, 其列表 id 遵循等号 (=), 此示例将是当前项目的列表 id由工作流查找标识。

    注意: 如果当前项目是由三个工作流任务操作之一创建的任务, 并且您希望该链接打开自定义任务表单 (而不是 "任务" 列表的默认显示或编辑表单), 请参阅后续章节 (如果当前项目是自定义任务表单)c0 >。对于不是由工作流任务操作创建的任务, 以及对于通过其中一个工作流任务操作创建的那些任务的显示形式, 当前过程就是所需的。

  6. 在 "定义电子邮件" 对话框中, 键入或粘贴要在其中显示链接的静态文本 (例如, 若要查看列表项, 请单击此处)。

  7. 选择文本, 然后单击 "编辑超链接"

  8. 在 "编辑超链接" 对话框中, 单击 " <Don't"将 "用于 bold>地址" 字段中的 "字符串生成器"。

  9. 在 "字符串生成器" 对话框中, 粘贴地址。

  10. 将插入点直接放置在等号 (=) 后, 然后单击 "添加" 或 "更改查阅"。

  11. 在 "查找字符串" 对话框中, 在 "" 框中选择 "当前项", 然后在 "" 框中选择 "字段ID "。

    插入列表项3的超链接

  12. 单击“确定”。

    插入的查找将如下所示。 为列表项插入超链接4

    重要: 虽然当前项 ID 查找对于生成指向当前列表项的链接很有用, 但以下查找可能会在呈现的路径中显示错误, 因此不建议包含在电子邮件链接中: 路径、服务器相对 URL、源 URL 和 URL 路径。

  13. 单击"确定"两次返回以定义电子邮件消息框。

  14. 下图显示了显示窗体和编辑窗体在电子邮件中显示的链接文本。

    为列表项插入超链接5

如果你计划多次使用链接, 请参阅稍后部分将列表项地址存储为工作流变量

如果当前项目是自定义任务表单

在我们提供有关如何创建自定义任务表单以及如何生成主/辅助工作流的更多说明之前, <This 节对用户没有什么混淆。如果我们将此文档面向100级别的知识用户, 此信息可能会在300级别的知识 bucket> 中进行土地

如果你的工作流使用三种任务操作之一创建任务, 则在编译工作流时会自动生成自定义任务表单。如果你希望辅助工作流发送由工作流任务操作创建的任务的任务提醒, 你可能会发现在提醒中包含此自定义任务表单的链接很有用。

"任务" 列表的默认窗体 (如 dispform.aspx 页和 editform.aspx) 驻留在该任务列表的文件夹中。但自定义任务表单驻留在与之关联的工作流的文件夹中。每个工作流任务都有其自己的内容类型, 并且它是工作流任务的内容类型, 用于标识内容类型使用的自定义任务表单。因为自定义任务表单驻留在其他位置, 所以生成此表单的 url 不同于为项目的典型显示窗体或编辑窗体生成 url。

自定义任务表单的 URL 如下所示。

自定义任务的编辑表单 URL

可变信息的占位符以粗体键入并括在括号中。

Source属性指定与当前工作流相关联的任务列表。当您单击自定义任务表单上的 "完成任务" 或 "取消" 时, 该表单将使用属性中的地址来了解要返回的列表。若要创建自定义任务表单的链接, 您可以通过ID = [item_ID]字符从 URL 的开头复制和粘贴, 并忽略其余部分 (在示例中突出显示的部分)。

获取自定义任务表单的 URL 的最简单方法是运行工作流一次, 以便创建任务。当在浏览器中打开该任务的自定义任务表单时, 可以复制所需的 URL 部分, 将其粘贴到工作流设计器中的电子邮件正文中, 然后添加提供任务项 ID 的工作流查找。

要在消息文本中包含查找, 请执行以下操作:

  1. 在工作流设计器中, 在 "定义电子邮件" 对话框中, 键入或粘贴链接的所有文本 (除了查找项目 ID 外), 并将其粘贴到电子邮件正文中。

  2. 将插入点放置在等号 (=) 后, 删除当前项 ID 的编号, 然后单击 "添加查找到正文"。

  3. 在 "定义工作流查找" 对话框中, 在 "" 框中选择 "当前项", 在字段列表中单击 " ID ", 然后单击"确定"

    已插入 ID 查找的自定义任务表单链接

    请记住, 此示例使用 "任务" 列表上运行的辅助工作流, 因此当前项目是任务。从实际创建任务项的主工作流中链接到自定义任务表单不同。若要了解如何设置使用从用户操作收集数据以将自定义通知发送给为其分配任务的人员的工作流, 请参阅稍后发送你自己的自定义任务通知一节。

    若要了解如何设置此地址, 以便你可以在同一工作流的其他位置使用它, 请参阅下一节将列表项地址存储为工作流变量

将列表项地址存储为工作流变量

您可以在工作流变量中存储列表项的显示窗体或编辑窗体的 URL, 以便您可以在同一工作流中的多个位置使用它。

  1. 在 "工作流设计器" 窗口中, 单击 "操作", 然后单击 "从字符串索引提取子字符串"。

    变量1

  2. 在舞台中, 单击 "字符串", 然后单击省略号按钮 [...]。

  3. 在 "字符串生成器" 对话框中, 粘贴 URL 的静态文本部分 (但不粘贴当前项 ID 的查找)。

    变量2

  4. 将插入点放在等号 (=) 后, 然后单击 "添加" 或 "更改查阅"。

  5. 在 "查找字符串" 对话框中, 在 "数据" 框中选择 "当前项", 然后在 "源" 框中选择 "字段ID "。

    变量3

  6. 单击“确定”。

    查找将添加到对话框中的文本。

    变量4

  7. 单击"确定"以关闭 "字符串生成器" 对话框。

  8. 单击 "0 起始于 0", 并将其替换为1。注意 <on next line>: 必须将起始值更改为 1, 否则你将以空字符串结尾。如果你使用大于1的值, 则最终字符串将在开头缺少字符。

  9. 在 "输出到变量: 子字符串" 中单击 "变量: 子字符串"。注意 <on next line>: 如果你已有从以前的操作创建的变量, 你可能会看到变量: substring1。

  10. 在列表中, 单击 "创建新变量", 然后在 "编辑变量" 对话框中, 键入新变量的名称。

  11. 请确保 "类型" 设置为 "字符串", 然后单击"确定"

  12. 插入的操作显示如下。 变量5

  13. 在刚创建的操作下面单击, 并将 "发送电子邮件" 操作添加到操作, 然后在操作中单击 "这些用户"。 变量6

  14. 若要在 "定义电子邮件" 对话框中使用新变量, 请键入或粘贴要在邮件正文中显示链接的文本。选择文本, 然后单击 "格式" 菜单中的 "编辑超链接"。单击 "[fx]" 按钮或单击省略号按钮 [...], 然后单击 "添加" 或 "更改查阅"。

  15. 在 "查找字符串" 对话框中的 "数据" 框列表中, 选择 "工作流变量和参数"。

  16. 在 " 中的字段" 列表中, 选择变量: 变量的名称, 然后单击下一个框中的"确定" 和"确定"

    变量7 插入变量后定义电子邮件屏幕

现在, 你可以将此变量插入当前工作流中所需的任意位置。

返回页首

包含图像

不能在由您的工作流发送的电子邮件的正文中嵌入图像或图形文件。但是, 你可以通过创建一个变量并使用 HTML image 标记 (<img/>) 链接到存储为 JPEG (.jpg) 文件的图像并将其上载到网站中的图片库, 从而在您的消息中包含图形。

  1. 在 "工作流设计器" 窗口中, 单击 "操作", 然后单击 "设置工作流变量"。

  2. 单击 "工作流变量", 然后选择 "创建新变量..."

  3. 在 "编辑变量" 对话框中, 为新变量键入名称并确保 "类型" 设置为 "字符串", 然后单击"确定"

  4. 单击 "", 然后单击 "省略号按钮 [...]", 然后在 "字符串生成器" 窗口中, 在 HTML 标记格式中添加键入或粘贴 JPEG 图像文件的 URL-<img src = "URL"/> 图像的字符串生成器

  5. 单击“确定”。

  6. 插入的操作显示如下。 设置用于插入图像的变量

  7. 在刚创建的操作下面单击, 并将 "发送电子邮件" 操作添加到该操作, 然后在操作中单击 "这些用户"。 插入 "发送电子邮件" 操作

  8. 在 "定义电子邮件" 对话框中, 单击 "添加" 或 "更改查阅"。

  9. 在 "查找字符串" 对话框中的 "数据源" 列表中, 选择 "工作流变量和参数"。

  10. 在 "源中的字段" 列表中, 选择变量: 变量的名称, 然后单击"确定"图像工作流中的电子邮件字符串 包含图像的工作流电子邮件消息正文

  11. 再次单击"确定"以关闭 "定义电子邮件" 窗口并发布工作流。

发送邮件时, 将显示 JPEG 文件中的图像, 而不是链接标记。

返回页首

设置邮件内容的格式

<This 节在 SP 2013 中不相关, 因为我们将所有这些功能提供为 "定义电子邮件" 窗口中的格式栏。 >

在前面的部分中, HTML 定位标记 (<a> 和 </a>) 用于创建超链接。您可以使用其他 HTML 标记来指定邮件中文本的字体、颜色、样式和其他属性。

由于工作流设计器仅支持用于设置邮件格式的内联样式, 而不支持外部或嵌入级联样式表 (CSS) 格式, 因此您必须使用具有 HTML 标记的style属性来执行所需的格式设置。你可以通过在工作流设计器中直接在 "定义电子邮件" 对话框中键入 HTML 标记, 或者通过在 "代码" 视图和 "设计" 视图中创建消息的正文, 然后将其粘贴到 "定义电子邮件" 对话框来执行此操作。对话框.

  1. 通过单击 "完成" 保存工作流。

  2. 创建新的 HTML 页。

  3. 切换到 "拆分" 视图, 然后单击 "设计" 视图区域中的任意位置。

  4. 当插入点仍在 "设计" 视图区域中时, 双击状态栏上的 "样式应用程序"。

    此时将显示 "样式应用程序" 工具栏。

  5. 在 "样式应用程序" 工具栏上, 确保将 "样式应用程序" 设置为 "手动", 并将目标规则设置为 " (新建嵌入式样式)", 如下所示。

    显示了正确设置的“样式应用程序”工具栏

    如果在 "代码" 视图和 "设计" 视图中设置消息文本的格式, 则必须将Style 应用程序设置为 "手动", 以便Office SharePoint Designer 2007不会添加 CSS 类, 而服务器不能在工作流邮件中呈现。此外, 你必须在 "代码" 视图中使用嵌套在已设置格式的文本中的任何文本 (要指定不同的格式), 并将其放在 "范围标记" 中。当范围标记就绪后, 你可以在 "设计" 视图中使用所需的格式来应用。

  6. 使用 "设计" 视图中的 "WYSIWYG 工具" 对文本进行常规格式设置:

    • 如果要为标记内的文本设置格式 (例如, <para> 或 <li>), 请在 "代码" 视图中定位插入点, 然后在 "工具箱" 中双击所需的标记。

    • 或者, 你可以键入标记, 然后使用 IntelliSense 插入所需的样式属性和任何属性/值对。请确保用分号分隔属性/值对。

一些最佳做法:

  • 使用段落标记 (<p> 和 </p>) 定义单独的段落, 并为不同于邮件整体的默认格式的段落指定任何默认格式。

  • 在段落中, 使用其他范围标记指定与段落和邮件整体的默认格式不同的任何本地格式。

  • 工作流设计器将任何手动换行符呈现为消息中的其他换行符。由于段落标记已经在段落之间添加了适当的空间, 因此必须从设计器中的邮件的最终版本中删除所有手动换行符, 以避免段落之间的间距过大。

    为了清楚起见, 可以更轻松地创建带换行符的带格式文本, 然后在工作流设计器中完成消息之前删除所有多余空格和换行符。

    此最佳做法仅适用于在文本单元格内自动添加垂直间距的段落标记或其他标记。

下图显示了使用 HTML 标记设置格式的文本的示例。请注意, 不存在任何手动换行符。

使用 HTML 标记设置格式后的文本

在工作流发送的邮件中, 将相应地呈现带格式的内容。

HTML 格式文本的最终版本

当你熟悉邮件文本的格式设置后, 你可以创建多种邮件样式。有关使用邮件文本格式的一种方式的详细信息, 请参阅本文的下一部分,发送您自己的自定义任务通知

返回页首

发送您自己的自定义任务通知

<This 似乎是300级别的主题/配置。我们应将此内容作为单独的文章来执行。客户对 end> 的关注不是很困难。

默认情况下, 当工作流使用三个自定义任务操作之一创建和分配任务时, "任务" 列表会自动向分配了新任务的人员发送电子邮件通知。如果你想要设计自己的自定义任务通知消息, 则可以设置在任务列表上运行的辅助工作流以发送它们。

若要避免发送重复的通知, 您可以关闭 "任务" 列表的自动通知:

  • 在 "任务" 列表的 "高级设置" 页面上的 "电子邮件通知" 区域中, 单击 "当分配所有权时发送电子邮件" 下方的 ""。

    注意: 

    • 关闭自动通知将关闭网站的所有自动任务通知, 包括由Microsoft Office SharePoint Server 2007中提供的预定义工作流生成的通知。

    • 只有在将服务器场升级到11月累积更新后, 才在 "分配所有权" 选项可用时发送电子邮件。<Add 年11月 2014 CU> 的链接

关闭自动通知后, 您可以使用单个辅助工作流为所有任务发送相同的通知, 也可以使用具有多个分支操作的条件或多个辅助工作流来发送各种类型的与各种情况匹配的通知。

你可以使用相同的辅助工作流来发送电子邮件提醒, 以了解在其截止日期接近时尚未完成的任务。有关辅助工作流的详细信息, 请参阅文章Office 2007 支持结束

您可以按所需方式设置自定义通知的格式。开始操作的一种方法是自定义默认自动通知的 HTML 内容, 可直接从以下代码示例复制。

<table style="border-collapse:collapse" width="100%" cellspacing="0" dir="ltr">
<tr style="background-color:#F8F8F9;border:1px;border:1px #E8EAEC solid;padding:12pt 10px 20px 10px"><td style="font-family:Verdana;font-size:16pt;background-color:#F8F8F9;border:1px;border:1px #E8EAEC solid;padding:12pt 10px 20px 10px">Task assigned by [Lookup to Workflow Name] on [Lookup to Task Creation Date].<br></td></tr>
<tr style="border-top:1px solid #E8EAEC;border-bottom:1px solid #E8EAEC; padding:12pt 10px 24pt 10px"><td style="font-size:8pt;font-family:Tahoma;border-top:1px solid #E8EAEC;border-bottom:1px solid #E8EAEC; padding:12pt 10px 24pt 10px">Please approve [Lookup to Document Name]</td></tr>
<tr style="border-top:1px solid #E8EAEC;border-bottom:1px solid #9CA3AD;padding:4pt 10px 4pt 10px"><td style="font-size:8pt;font-family:Tahoma;border-top:1px solid #E8EAEC;border-bottom:1px solid #9CA3AD;padding:4pt 10px 4pt 10px">To complete this task:<br><ol><li>Review <a style="color:#003399;text-decoration:none" href="[Lookup to Document URL]">[Lookup to Document Name]</a>.</li><li>Perform the specific activities required for this task.</li><li>Fill out <a style="color:#003399;text-decoration:none" href="[Lookup to Custom Task Form]">this task form</a>, and then click the <b>Complete Task</b> button to mark the task as completed. (If you cannot update this task, you might not have access to it. Click <a style="color:#003399;text-decoration:none" href="[Lookup to Display Form for Document Item]">here</a> to request access.)</li></ol></td></tr></table>

上面的 HTML 代码示例中包含7个用于查找的占位符。占位符显示在方括号 ([]) 中。在工作流设计器中将 HTML 内容粘贴到电子邮件的正文中后, 必须将占位符 (包括包含它们的方括号) 替换为实际查找。在以下六个子部分中, 你将找到有关创建这些查阅的说明。(用于文档名称的占位符之一是使用两次。)

工作流名称查找

使用此查找。

针对创建了当前任务的工作流的名称的查找

任务创建日期查找

使用此查找。

针对当前任务的创建日期的查找

文档名称查找 (使用两次)

使用此查找。

针对文档名称的查找

文档 URL 查找

使用此查找。

针对文档 URL 的查找

自定义任务表单查找

此查找作为当前工作流创建的自定义任务表单的 URL 的一部分插入, 如前面部分中所述,如果当前项目是自定义任务表单

查找本身如下所示。

针对当前项目的 ID 的查找

完整的地址如下所示:

已插入 ID 查找的自定义任务表单的地址

文档项目查找的显示窗体

此查找作为任务项的显示形式的 URL 的一部分插入, 如前面部分中所述 (如果当前项是列表项)。

查找本身如下所示。

针对当前项目的 ID 的查找

完整的地址如下所示:

已插入 ID 查找的文档项目显示表单的地址

当所有查找都就绪时, 呈现的自定义任务通知就会显示此结果。

自定义电子邮件的最终版本

您可以通过添加其他说明或其他信息来自定义此消息, 或通过设置文本格式来调整消息的外观。在本文中了解到的工具后, 您就可以设置工作流, 以便完全发送要发送的邮件。

返回页首

标识不受支持的选项

"发送电子邮件" 操作的当前版本不支持以下选项:

  • 指定 "发件人" 行上的地址。(工作流发送的电子邮件始终在 "发件人" 行中显示服务器管理员指定的电子邮件地址。只有服务器管理员可以更改此操作, 并且只能更改当前 Web 应用程序中的所有通知, 而不能针对每个工作流进行更改。

  • 包括指向 "工作流状态" 页面的超链接。(在查询字符串中, 无法使用工作流查找提供 WorkflowInstanceID 变量的值。)< 这看起来好像可能 now>

  • 使用嵌入式级联样式表 (CSS) 设置邮件内容的格式。(文本可以使用style属性进行格式设置, 但不支持 <style> 标记和 CSS 类。)

  • 在 "收件人" 或"抄送" 框中使用的工作流查找, 其中引用了包含多个值的 "人员" 或 "组" 类型的列。

  • 为邮件指定密件抄送 (密件抄送) 收件人。(开发人员可以修改。服务器上的操作文件以包含 Bcc 字段, 但不能在工作流设计器中完成此操作。)

  • 包含另一个文件, 其中包含作为附件的邮件。

  • 在邮件中嵌入图像或图形文件。(你可以链接到图像, 请参阅前面部分包含图像。)

返回页首

另请参阅

SharePoint 2013 分步步骤: 设置传出电子邮件设置

SharePoint Designer 简介

配置特定 web 应用的传出电子邮件

将工作流管理器配置为与 SharePoint Server 2013 场协同工作

工作流操作快速参考

在 SharePoint​​ 中创建​​列表

在 SharePoint 列表或库中创建列

更改列表或库中的列

在 sharepoint Online、sharepoint 2016 和 sharepoint 2013 中创建通知或订阅 RSS 源

在 SharePoint 2010 中创建通知或订阅 RSS 源

基本故障排除提示

以下问题列表可能有助于确定创建工作流时遇到问题的原因:

  1. 是否可以在同一列表上创建其他任何类型的工作流?例如, 尝试创建 "审批"工作流

  2. 你是否能够创建相同的工作流:

    • 在同一网站上的不同列表中?

    • 在同一网站集下的其他网站上?

    • 在同一 web 应用程序下的其他网站集上?

    • 在其他 web 应用程序上?

    • 使用不同的帐户登录的?

    • 使用另一台计算机?

高级故障排除提示

如果基本疑难解答提示没有帮助确定工作流问题的原因, 请执行以下步骤:

  1. 确保你在网站和工作流级别上具有所需的权限。转到 "网站设置 > 网站权限" > "检查权限/列表设置" > 此列表的权限, 并验证检查权限结果是否与以下内容匹配:

    1. 设计工作流的最低权限 (保存和发布):

      1. 在SharePoint网站上:设计

      2. 在 " SharePoint " 列表中: "编辑"

    2. 启动工作流的最低权限:

      1. 在SharePoint网站上:仅查看/已读

      2. 在SharePoint列表中:投稿

  2. 确保传出电子邮件设置设置为正确的Exchange服务器。

    1. 以管理员身份打开命令提示符

    2. 运行nslookup <Exchange server address>。例如: nslookup exch.contoso.com

    3. 你应该可以在输出中看到Exchange服务器的已解析 IP 地址。如果不是, 请联系Exchange管理员并请求正确的Exchange完全限定的域名 (FDQN)。

  3. 按照下面的步骤, 使用具有SharePoint管理外壳的SPUtility类的SendEmail函数向同一个人发送电子邮件。

    1. 以管理员身份打开SharePoint Management Shell。(右键单击SharePoint Management Shell > 以管理员身份运行)

    2. 运行以下脚本。如果脚本响应为 True , 并且用户收到来自SharePoint的电子邮件, 则在SharePoint中正确配置了 SMTP。

    $Site = "Your Site Name"
    $Email = "User to whom you are sending an email through the workflow"
    $Subject = "Subject Line with the email"
    $Body = "Test Email Body"
    $web = Get-SPWeb $Site
    [Microsoft.SharePoint.Utilities.SPUtility]::SendEmail($Web ,0,0,$Email,$Subject,$Body)
    
    # Below is the same script with sample data              
    $Site = "http://sp/"
    $Email = "User1@contoso.com"
    $Subject = "Test Email from SharePoint"
    $Body = "This is a Test Email"
    $web = Get-SPWeb $Site
    [Microsoft.SharePoint.Utilities.SPUtility]::SendEmail($Web ,0,0,$Email,$Subject,$Body)
  4. 使用 SMTP 功能从SharePoint服务器向同一用户发送电子邮件。按照使用 Telnet 测试 SMTP 通信中的步骤操作。

注意: 默认情况下, SharePoint不会为传出邮件创建日志条目。SharePoint永远不会直接发送电子邮件。电子邮件通过在管理中心中配置的 SMTP (Exchange) 服务器进行中继。请按照上述步骤对此类型的工作流进行故障排除。

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×