练习 - 使用 Dataverse 连接器创建云端流
在本练习中,您将使用 Dataverse 连接器创建一个云端流,用于监视与 Contoso 创新质询相关的项目状态。 如果预算状态或日程履行情况发生变化,您的流就会触发。 此外,该流将完成一系列评估,然后根据结果采取行动。
将触发器定义为仅在修改任一已命名列时才起作用后,您将生成所采取操作的条件:
如果项目进展顺利,请完成此操作(更改状态字段)。
如果项目未步入正轨,请继续评估,确定下一个操作。
除更新状态字段之外,您还要将系统设置为根据需要添加任务。 然后,您将创建一个动态 HTML 表,将其包含在您的电子邮件通知中。
先决条件 - 包含示例应用的环境
您将需要使用已安装示例应用的环境。 创建环境时会发生这种情况。 您可以从 Power Platform 管理中心执行以下步骤(如果您已有示例应用,则可以跳到“要求”)。
选择环境>新建。
在屏幕右侧显示的新建环境面板中,(至少)输入名称,然后将添加 Dataverse 数据存储? 切换到是。 选择下一步。
在显示的添加 Dataverse 面板中,通过单击 + 选择按钮来选择安全组,然后选择其中一个组(可以是公开访问/无,但必须选择一个)。 在编辑安全组面板中选择完成以继续。
在添加 Dataverse 面板中选择保存以完成流程。
Power Apps 执行其余工作,使用 Dataverse 创建新环境和示例模型驱动应用。
要求
您的项目需要满足以下要求:
仅当预算状态和/或日程履行情况列中包含值时,才应触发流。 如果两列都为空,则不应触发流。
如果预算状态为符合预算或低于预算,而且日程履行情况为按时或提前,请将项目状态设置为绿色。
如果预算状态超过预算,或日程履行情况为滞后,请将项目状态设置为红色,然后创建一个任务并将其与触发流的项目关联起来。
或者,将项目状态设置为黄色,然后创建一个任务并将其与触发流的项目关联起来。
找到触发该流的项目的项目负责人,然后获取他们负责的所有项目。 发送一封电子邮件,在其中列出他们负责的所有项目,包括项目名称和项目状态(绿色、黄色、红色)。 在本练习中,您可以改用用户的电子邮件。
准备环境
您的第一项任务是按照以下步骤准备环境:
选择正确的环境,然后选择应用。
依次选择创新质询应用程序和播放。
此时应启动创新质询应用程序。 选择团队项目,然后打开车队自动化项目。
所需的列位于窗体的状态部分。
Project Status 是流应更新的列。
预算状态和日程履行情况应触发流。
找到项目负责人列。 此应用程序使用所有者用户作为项目负责人。 该流会将电子邮件发送给此用户。 您可以使用用户的电子邮件。 对于此示例应用程序,登录用户、所有者和项目负责人为同一人。
关闭应用程序浏览器窗口或选项卡。
返回到 Power Apps Maker Portal,选择解决方案,然后打开默认解决方案。
搜索团队项目,展开团队项目表,然后选择列。
找到并打开预算状态列。
找到选项,它们是流检查的选项值。 请留心这些值及相应标签,因为需要依靠这些内容来查找选项集值。
展开高级选项并找到 Logical name 列,您可以在其中查找列的逻辑名称。 在本例中,名称为“sample_budgetstatus”。
关闭列编辑器面板(或选择取消按钮)。
找到并打开日程履行情况列。
找到选项,展开高级选项,记下日程履行情况列的逻辑名称。
这两列的详细信息如下。 不添加逗号。
预算状态逻辑名称 sample_budgetstatus
超出预算 - 727000000
符合预算 - 727000001
低于预算 - 727000002
日程履行情况逻辑名称 sample_scheduleperformance
按时 - 727000000
提前 - 727000001
滞后 - 727000002
记下逻辑名称和值,然后继续本练习的下一部分。
创建流
按照以下步骤创建流:
选择正确的环境,然后选择我的流。
选择 + 新建流,然后选择自动化云端流。
输入项目状态监视作为流名称。 搜索并选择添加新行、修改或删除 Microsoft Dataverse 时,然后选创建。
如果连接出现错误,请按照提示解决。 选择触发器,然后将名称更改为项目预算状态或日程履行情况发生变化时。
针对更改类型选择已修改,针对表名选择团队项目,针对范围选择组织,然后选择高级参数旁边的全部显示。
您只需要获取“预算状态”和“日程履行情况”列。 在选择列字段中,粘贴以下预算状态和日程履行情况逻辑名称,以逗号分隔:
sample_budgetstatus,sample_scheduleperformance
如果预算状态和日程履行情况列为空,则尽量不要触发流。 因此,在筛选行字段中,粘贴以下测试。 请注意,您要再次使用列的逻辑名称。
sample_budgetstatus ne null or sample_scheduleperformance ne null
触发器现在应如下图所示。 选择 + 插入新步骤,然后选择添加操作。
搜索初始化,然后选择初始化变量。
将操作重命名为正常初始化,针对名称输入 OnTrack,针对类型选择布尔,然后针对初始值选择 true。
在正常初始化步骤下,选择 + 插入新步骤,然后选择添加操作。
搜索控制,然后选择条件。
选择已添加的条件,然后将其重命名为检查项目状态。
将光标放置在选择值字段中,然后选择插入动态内容选项(“闪电”),您也可以键入“/”以显示选项选择。
从动态内容面板中,搜索并选择 Budget status。
在比较右侧的第二个选择值字段中输入 727000001。 本条目是该列的符合预算选项设置值。
在检查项目状态下拉菜单中选择 + 新建项目,然后选择 + 添加行。
在选择值字段中输入斜杠 (/),然后选择插入动态内容。
在动态内容窗格中,搜索并选择 Budget status。
在第二个选择值字段中输入 727000002。 本条目是该列的低于预算选项设置值。
选中两个复选框,然后选择 ...更多命令菜单,然后选择创建组。
将组条件更改为 OR。
选择组外的 + 新建项目选项,然后选择 + 添加行。
在左侧选择值字段中选择或输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中,搜索并选择 Schedule performance。
在第二个选择值字段中输入 727000000。 本条目是该列的按时选项设置值。
选择 + 新建项目,然后选择 + 添加行。
在左侧选择值字段中输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中,搜索并选择 Schedule performance。
在第二个选择值字段中输入 727000001。 本条目是该列的提前选项设置值。
选中已添加的两个条件对应的复选框,选择 ...更多命令菜单,然后选择创建组.
将组条件更改为 OR。
完成后的条件现在应如下图所示。
将项目状态更新为绿色
您的下一个任务是按照以下步骤将项目状态更改为绿色:
选择 True 分支的插入新步骤按钮,然后选择添加操作。
从 Microsoft Dataverse 连接器搜索并选择更新行。
选择您添加的更新行操作。
将步骤重命名为更新为绿色,为表名选择团队项目,在行 ID 字段中输入斜杠 (/),然后选择插入动态内容。
在动态内容窗格中,选择 Team Project。
选择显示全部。
向下滚动并从项目状态下拉菜单中选择绿色。
选择保存按钮,然后等待流保存。
请勿导航离开本页面。
检查超出预算和滞后情况
请按照以下步骤检查超出预算和滞后情况:
选择 False 分支的插入新步骤按钮,然后选择添加操作。
搜索控制,然后选择条件。
选择您添加的条件。
将条件重命名为检查是否超出预算和滞后。
在左侧选择值字段中输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中选择 Budget status,然后在右侧选择值字段中输入 727000000。
选择 + 新建项目下拉菜单,然后选择 + 添加行。
在左侧选择值字段中输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中选择 Schedule performance,然后在右侧选择值字段中输入 727000002。
将项目状态更新为红色
您的下一个任务是按照以下步骤将项目状态更新为红色:
条件现在应如下图所示。 从检查是否超出预算和滞后条件的 True 分支中选择插入新步骤按钮,然后选择添加操作。
从 Microsoft Dataverse 连接器搜索并选择更新行。
选择您添加的更新行操作。
将步骤重命名为更新为红色,为表名选择团队项目,在行 ID 字段中输入斜杠 (/),然后选择插入动态内容。
在动态内容窗格中,选择 Team Project。
选择显示全部。
向下滚动并从项目状态下拉菜单中选择红色。
将项目状态更新为黄色
请按照以下步骤将项目状态更新为黄色:
从检查是否超出预算和滞后条件的 False 分支中选择插入新步骤按钮,然后选择添加操作。
从 Microsoft Dataverse 连接器搜索并选择更新行。
选择您添加的更新行操作。
将步骤重命名为更新为黄色,为表名选择团队项目,在行 ID 字段中输入斜杠 (/),然后选择插入动态内容。
在动态内容窗格中,选择 Team Project。
选择显示全部。
向下滚动并从项目状态下拉菜单中选择黄色。
选择保存,然后等待流保存。
请勿导航离开本页面。
更新并检查变量
现在,您可以按照以下步骤更新和检查变量:
从检查是否超出预算和滞后条件下选择插入新步骤按钮,然后选择添加操作。
搜索并选择设置变量。
将步骤重命名为设为正常,选择 OnTrack 作为名称,然后为值选择 false。
选择位于检查项目状态条件外部的插入新步骤按钮,然后选择添加操作。
搜索控制,然后选择条件。
将条件重命名为检查是否正常。
在左侧选择值字段中输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中选择 OnTrack 变量。
在右侧选择值字段中输入斜杠 (/),然后选择插入表达式。
针对表达式输入 false,然后选择添加。
创建任务
要创建任务,请按照以下步骤进行操作:
从检查是否正常条件的 True 分支中选择插入新步骤按钮,然后选择添加操作。
从 Microsoft Dataverse 连接器搜索并选择添加新行。
将步骤重命名为创建任务,为表名选择任务,然后为主题输入项目状态查看。
向下滚动找到关于(团队项目) 字段。
在关于(团队项目) 字段中输入 sample_teamprojects()。
在括号中输入斜杠 (/),然后选择插入动态内容。
从项目预算状态或日程履行情况发生变化时触发器选择 Team Project。
选择保存,然后等待流保存。
请勿导航离开本页面。
获取团队项目列表并发送报告
在下一个任务中,您将获取用户的团队项目列表,然后发送状态报告。
从检查是否正常条件下选择插入新步骤按钮,然后选择添加操作。
从 Microsoft Dataverse 连接器搜索并选择列表行。
将步骤重命名为列出用户项目,为表名选择团队项目,然后选择显示全部。
在选择列字段中输入 sample_name, sample_projectstatus。
在筛选行字段中输入 _owninguser_value eq。
在 eq 后输入一个空格,然后选择插入动态内容。
在触发器步骤的动态内容窗格中,选择 Owner (Value)。
选择位于列出用户项目步骤下方的插入新步骤按钮,然后选择添加操作。
搜索 HTML 表,然后选择创建 HTML 表。
将步骤重命名为创建项目表。
在发件人字段中输入斜杠 (/),然后选择插入动态内容。
从动态内容窗格中选择 body/value(项目列表),然后选择全部显示。
针对列选择自定义。
在标头下输入名称然后在插入动态内容的一侧选择值。
从列出用户项目步骤中选择名称。
在标头下的第二行中输入状态,在第二行的值字段中输入斜杠 (/),然后选择插入表达式。
粘贴以下表达式,然后选择添加。
item()?['sample_projectstatus@OData.Community.Display.V1.FormattedValue']
选择位于创建项目步骤下方的插入新步骤按钮,然后选择添加操作。
搜索发送电子邮件,然后为 Microsoft Office 365 Outlook 选择发送电子邮件 (V2)。
如有提示,请登录。
将步骤重命名为发送报告。
在收件人字段中提供用户的电子邮件地址。
针对主题输入状态报表。
输入项目状态,然后将其设置为粗体格式。
在此行下方(仍在正文中),输入斜杠 (/),然后选择插入动态内容。 添加 HTML 输出表。
选择保存,然后等待流保存。
测试流
本练习中的最后一个任务是按照以下步骤测试您的流:
确保您处于正确的环境,然后选择应用。
依次选择创新质询应用程序和播放。
选择团队项目,然后打开车队自动化项目。
对预算状态选择超出预算,对日程履行情况选择滞后,然后选择保存。
刷新窗体。 项目状态应更改为红色,项目状态查看任务应显示出来。
转到 Outlook。 您应该会收到一封状态报告电子邮件。
您可以测试流的红色和黄色状态。