65.9K
CodeProject 正在变化。 阅读更多。
Home

为制造业构建 Teams Power App 3:创建制造商 UI

starIconstarIconstarIconstarIconstarIcon

5.00/5 (2投票s)

2021年6月11日

CPOL

5分钟阅读

viewsIcon

3717

在本系列最后一篇文章中,我们将创建一个供制造商员工查看订单并将其发送到处理部门的查看屏幕。

这是关于在 Teams 中进行 Power Apps 开发的三部分系列文章中的第三篇。

引言

本系列的前两篇文章使用 Teams 内的 Dataverse 创建了我们的服务器数据控制中心。我们又在 Teams 中使用了一个内置审批系统的客户用户界面 (UI)。我们的应用甚至会在 Teams 频道中发布消息,通知制造商有订单已准备好进行处理。我们的提醒看起来很棒!

我们的制造团队需要一个 UI,以便他们可以转发订单进行处理。我们将保持简单,但您可以随意尝试。

创建制造商 UI

我们已经将此制造商 UI 屏幕限制给了制造团队的成员。我们不希望任何人查看这些订单。完成后,它看起来会像这样

“查看订单”屏幕应具有与应用其他部分相同的标题。将其从您其他屏幕中的一个复制并进行调整。

订单面板

我们从左侧的订单库开始。

我们需要

  • 一个文本属性设置为“Orders”的标签
  • 一个矩形,为我们的库提供背景
  • 一个库
名称 galProcessingOrders
布局 标题
数据源 HVAC_Orders
字段 ThisItem.OrderID
Items Filter(HVAC_Orders, OrderStatus = 'OrderStatus (HVAC_Orders)'.'Ready for Processing')
Template Fill If(ThisItem.IsSelected, RGBA(224,224,237,1))

小细节可以极大地改善您的应用程序。诸如 Template Fill 和选择时突出显示库项等功能可以轻松地提高用户体验。添加此项以我们提供的 RGB 颜色突出显示选定的订单。

订单详细信息面板

一旦制造商选择了一个订单进行审查,中间面板将提供额外的订单详细信息。

然后,制造商可以将订单发送给处理团队,并在订单消息中添加备注。

我们已经演示了如何将消息发布到 Teams 频道。现在,让我们看看如何向我们的处理部门发送电子邮件。

为此,我们使用我们在本系列第一部分中添加的 Office 365 Outlook 连接器。

让我们详细看看此 OnSelect 函数的电子邮件部分

  ```
  Office365Outlook.SendEmailV2(
      "Example_Processing_Email@Example_HVAC_Company.com",
	  "Ready for Processing: Order " & galProcessingOrders.Selected.OrderID,
	  Order_Header.Text & ": " & Concat(
    	  galOrderDetailsforProcessing.AllItems,
    	  ProductName & ", Quantity: " & Quantity,
    	  ", "
	  ) & ". Additional Notes: " & txtNotes.Value
  );
  ```

在这里,Concat 函数将我们库中的信息转换为文本以填充电子邮件正文。我们还添加了一个文本输入框 txtNotes,其标签的 Text 属性设置为“Notes:”。

我们将此注释框附加到我们的电子邮件中,以便我们的制造商可以为处理人员添加自定义消息。我们通过添加 & txtNotes.Value 来实现此目的。

尽管我们硬编码了处理部门的电子邮件地址,但这可以轻松地从表中、从 SharePoint 或从 Office365Users 等其他连接器进行查找。有许多可能性。

一旦我们单击 Send for Processing,该应用程序就会从与当前用户关联的电子邮件帐户发送电子邮件。

我们需要

  • 一个大的矩形,为中间部分提供背景,并带有边框
  • 一个较小的矩形,带有一个标签,其 Text 属性设置为 "Order Details for " & galProcessingOrders.Selected.CustomerName
  • 一个库
名称 galOrderDetailsforProcessing
布局 标题和副标题
数据源 HVAC_Ordered_Items
字段 ProductName and Quantity
Items Filter(HVAC_Ordered_Items, OrderID=galProcessingOrders.Selected.OrderID)
  • 一个标签,其 Text 属性设置为 Notes
  • 一个文本输入框
名称 txtNotes
工具提示 "在此处为处理团队写下附加备注" 
  • 一个用于发送处理的按钮
文本 "Send For Processing"
OnSelect
Patch(
    HVAC_Orders,
    galProcessingOrders.Selected,
    {OrderStatus: 'OrderStatus (HVAC_Orders)'.Processing}
);
Office365Outlook.SendEmailV2(
    "Example_Processing_Email@Example_HVAC_Company.com",
    "Ready for Processing: Order " & galProcessingOrders.Selected.OrderID,
    Order_Header.Text & ": " & Concat(
        galOrderDetailsforProcessing.AllItems,
        ProductName & ", Quantity: " & Quantity,
        ", "
	) & ". Additional Notes: " & txtNotes.Value
);
Reset(txtNotes);
Notify(
    "Order sent for processing",
    Success,
	1000
)

此按钮将我们 Dataverse 表中的订单标记为 Processing,向处理团队发送电子邮件,并向用户发送成功的通知一秒钟。

您现在应该将中间部分组合在一起,并将 Visible 设置为 !IsBlank(galProcessingOrders)

我们的应用程序已准备好发布!单击屏幕右上角的 Publish to Teams

应用运行

让我们看一些我们的应用程序运行的屏幕截图。

从仪表板或主屏幕,我们可以导航到 Create New Order

在我们添加订单项目并将其发送以供批准后,应用程序会返回主屏幕,并显示包含我们订单号的消息。

在每个阶段,我们的 Dataverse 表都会正确更新

管理团队成员可以查看订单,然后将它们分批到右侧的面板,准备提交给制造商。或者他们可以拒绝订单。

收到其 Teams 频道中的通知后,制造商现在可以打开应用程序,查看订单,添加评论,然后将订单发送给处理团队。

后续步骤

总之,我们想提请您注意一些出色的功能和最终技巧,这些技巧可以使您在 Teams 中的 Power Apps 体验非常出色。

首先,有示例应用程序,例如 Employee Ideas,它们非常适合探索、了解可能性以及仔细查看通用应用程序设计。

此外,您还可以使用应用程序检查器,它会突出显示应用程序中的任何问题。

在编写大量逻辑或代码时,我们建议在顶部的公式栏中完成代码并单击格式文本:它会为您格式化所有内容。选择一个对象,它会在应用程序和公式栏中对其进行颜色编码。

Microsoft 提供 Teams、Dataverse 和 Power Apps 支持。在各种平台上都有全面的在线资料,我们专门的开发者社区渴望在在线论坛中帮助任何需要帮助的人。

希望您在 Teams 中首次使用 Power Apps 体验愉快。您可以像创建 PowerPoint 一样轻松地快速创建功能强大的应用程序。组织可以轻松地将功能添加到 Teams 中,以帮助他们处理日常工作流程。

我们构建的 HVAC 制造商订单应用程序应该为您提供一个跳板,供您进行实验。扩展此教程的可能性非常多。您可以创建供客户查看和修改其订单的“查看订单”屏幕,或为处理团队创建“供应商”屏幕上的订单以补充其用品。

可能性是无限的——而且所有这些都可以在 Power Apps 中轻松快速地实现,而无需离开 Teams。要开始创建您独特的 Teams Power App,请探索Power Apps 和 Microsoft Teams 集成

查看我们的低代码应用开发 7 步指南,即可立即开始使用 Power Apps。

© . All rights reserved.