如果连接到 Office 365 Outlook,除了其他任务外,还可以显示、发送、删除和答复电子邮件。
可以添加控件以在应用中执行这些函数。 例如,可以添加 文本输入 控件来请求收件人、主题和电子邮件正文,并添加 按钮 控件以发送电子邮件。
本文介绍如何将 Office 365 Outlook 添加为连接,将 Office 365 Outlook 添加为应用的数据源,并在不同的控件中使用此数据。
重要
在撰写本文时,日历作不支持定期事件。
先决条件
- 对 Power Apps 的访问权限
- 添加 连接
- 从模板、数据或从头开始创建应用
连接到 Office 365 Outlook
添加数据连接 并选择 Office 365 Outlook:
选择 “连接”,如果系统提示登录,请输入工作帐户。
Office 365 Outlook 连接已创建并添加到你的应用。 现在,它已准备好使用。
显示消息
在 “插入 ”菜单上,选择 “库”,然后选择 空白垂直 控件。
将其 Items 属性设置为以下公式:
Office365Outlook.GetEmails({fetchOnlyUnread:false})更改设置后,将 布局 更改为 标题、副标题、正文。
库控件会自动填充一些电子邮件。
在库中,将第一个标签的 Text 属性设置为
ThisItem.From。 将第二个标签设置为ThisItem.Subject。 将第三个标签设置为ThisItem.BodyPreview。 还可以调整标签的大小。库控件会自动填充新属性。
此函数有多个可选参数可用。 将库的 Items 属性设置为以下公式之一:
Office365Outlook.GetEmails({fetchOnlyUnread:false})
Office365Outlook.GetEmails({fetchOnlyUnread:false, top:2})
Office365Outlook.GetEmails({folderPath:"Sent Items", fetchOnlyUnread:false, top:2})
Office365Outlook.GetEmails({folderPath:"Sent Items", fetchOnlyUnread:false, top:2, searchQuery:"powerapps"})
Office365Outlook.GetEmails({folderPath:"Deleted Items", fetchOnlyUnread:false, top:2, skip:3})
发送消息
在 “插入 ”菜单上,选择“ 文本”,然后选择“ 文本输入”。
再重复上一步骤 2 次,以便有三个框,然后在列中排列它们:
将控件重命名为:
- inputTo
- inputSubject
- inputBody
在 “插入 ”菜单上,选择“ 控件”,然后选择“ 按钮”。 将其 OnSelect 属性设置为以下公式:
Office365Outlook.SendEmail(inputTo.Text, inputSubject.Text, inputBody.Text)移动按钮,使其显示在所有其他控件下,并将其 Text 属性设置为“发送电子邮件”。
按 F5,或选择“
在 inputTo 中键入有效的电子邮件地址,并在其他两个 文本输入 控件中键入所需的任何内容。选择 “发送电子邮件 ”以发送邮件。 按 Esc 返回默认工作区。
发送带有附件的邮件
例如,可以创建一个应用,用户使用设备的相机拍摄照片,然后将其作为附件发送。 用户还可以将许多其他类型的文件附加到电子邮件应用。
若要向邮件添加附件,请按照上一部分中的步骤作,但添加参数以指定附件(设置按钮的 OnSelect 属性时)。 此参数的结构是一个表,在其中为每个附件指定最多三个属性:
- Name
- ContentBytes
- @odata.type
注释
只能为一个附件指定 @odata.type 属性,并且可以将其设置为空字符串。
在此示例中,照片将作为 file1.jpg发送:
Office365Outlook.SendEmail(inputTo.Text, inputSubject.Text, inputBody.Text, {Attachments:Table({Name:"file1.jpg", ContentBytes:Camera1.Photo, '@odata.type':""})})
在此示例中,除了照片之外,还将发送音频文件:
Office365Outlook.SendEmail(inputTo.Text, inputSubject.Text, inputBody.Text, {Attachments:Table({Name:"file1.jpg", ContentBytes:Camera1.Photo, '@odata.type':""}, {Name:"AudioFile", ContentBytes:microphone1.audio })})
删除邮件
在 “插入 ”菜单上,选择 “库”,然后选择 “文本库 ”控件。
将其 Items 属性设置为以下公式:
Office365Outlook.GetEmails({fetchOnlyUnread:false})库控件会自动填充一些电子邮件。
在库中,将第一个标签的 Text 属性设置为
ThisItem.Id。 将第二个标签设置为ThisItem.Subject。 将第三个标签设置为ThisItem.Body。选择库中的第一个标签,并将其重命名为 EmailID:
选择库中的第三个标签,然后添加 按钮 (插入 菜单)。 将按钮的 OnSelect 属性设置为以下公式:
Office365Outlook.DeleteEmail(EmailID.Text)按 F5,或选择“
选择库中的其中一封电子邮件,然后选择按钮。注释
这会从收件箱中删除所选电子邮件。 因此,明智地选择。
按 Esc 返回默认工作区。
将邮件标记为已读
本部分使用与 删除消息相同的控件。
将按钮的 OnSelect 属性设置为以下公式:
Office365Outlook.MarkAsRead(EmailID.Text)按 F5,或选择“
选择其中一封未读的电子邮件,然后选择该按钮。按 Esc 返回默认工作区。
另请参阅
- 有关所有函数及其参数的列表,请参阅 Office 365 Outlook 参考。
- 查看所有 可用的连接。
- 了解如何 管理连接。