Power Apps - 使用 Flow 从集合向用户列表发送电子邮件



我有一个名为requiredCol_1的集合,如下所示,

Name      ID      ToAddress                                                        Status
Abc       123     asdfg@example.com,koldef@example.com,asdasdasfda@example.com        A        
Def       234     nanasd@example.com,asdfg@example.com                                A
Ghi       567     asdfg@example.com,asdasfg1@example.com                              A

我希望向每个用户发送电子邮件,每个用户只能收到一封电子邮件。

为此,

我创建了一个requiredCol_2作为另一个集合

ToAddressUnique
asdfg@example.com
koldef@example.com
asdasdasfda@example.com
nanasd@example.com
asdasfg1@example.com

我现在设法缩小了我的问题范围。 上述集合(requiredCol_2)中的每个用户都将收到一封电子邮件。我的电子邮件正文将连接名称和 ID,并以与该特定电子邮件 ID 相关的列表形式。

例如,发送给 asdfg@example.com 的电子邮件如下所示:

至 :- asdfg@example.com

主题 :- 请看

身体:-

点击这里并请查看以下内容,

  1. ABC - 123
  2. 定义 - 234
  3. 吉 - 567

单击此处是一个超链接,我想通过一个变量传递它。

我是Powerapps和flow的新手。因此,请向我解释使其工作的步骤。

这是我到目前为止在 Power Apps - 发送电子邮件按钮中的代码

//Create a Collection
ClearCollect(requiredCol_1 , Filter(Table1, User().Email in Lower(Allocators), Status = "A"));
//Unique List of Approvers
ClearCollect(requiredCol_2,Distinct(
Split(
Concat(requiredCol_1 , ToAddress, ","),
","),
Result));
//Hyperlink Creation
set (hyperlinkvalue, "WWW.Google.Com");

如果要发送电子邮件,可以使用其中一个连接器,例如 Outlook.com 或Office 365(等)。如果您希望电子邮件具有超链接,则需要发送 HTML 电子邮件,并且需要在应用程序中撰写 HTML。例如,下面的代码片段显示了使用 Outlook.com 连接器发送电子邮件(Office 365 的语法相同或非常相似):

//Create a Collection
ClearCollect(
requiredCol_1,
Filter(Table1, User().Email in Lower(Allocators), Status = "A"));
//Unique List of Approvers
ClearCollect(requiredCol_2,Distinct(
Split(
Concat(requiredCol_1 , ToAddress, ","),
","),
Result));
//Hyperlink Creation
Set(hyperlinkvalue, "WWW.Google.Com");
// E-mail body
Set(
mailBody,
Concatenate(
"<p><a href=""",
hyperlinkvalue,
""">Click here</a> and kindly review the following:</p>",
"<ol>",
Concat(
requiredCol_1,
"<li>" & Name & " - " & ID & "</li>"
),
"</ol>"
));
// Send e-mail
'Outlook.com'.SendEmail(
Concat(requiredCol_2, Result, ","),
"Please look at",
mailBody,
{
IsHtml: true
})

如果需要,要在电子邮件中仅发送包含该电子邮件的项目,则需要在创建每封单独的电子邮件时过滤原始表,如下例所示:

Set(hyperlinkValue, "www.google.com");
ClearCollect(
distinctUsers,
Distinct(Split(Concat(requiredCol_1, ToAddress, ","), ","), Result));
ClearCollect(
distinctUsersWithEmail,
AddColumns(
distinctUsers,
"mailBodyForUser",
Concatenate(
"<p><a href=""",
hyperlinkValue,
""">Click here</a> and kindly review the following:</p>",
"<ol>",
Concat(
Filter(requiredCol_1, Result in ToAddress),
"<li>" & Name & " - " & ID & "</li>"
),
"</ol>"
)));
ForAll(
distinctUsersWithEmail,
'Outlook.com'.SendEmail(
Result,
"Please look at",
mailBodyForUser,
{
IsHtml: true
}))

相关内容

  • 没有找到相关文章

最新更新