Power Apps存储培训签核数据并通过邮件发送配置咨询
Power Apps 培训签核表单邮件字段取值配置方法
你已经掌握按钮触发邮件的基础配置,核心是正确引用文本输入框、复选框控件的属性值,拼接为邮件正文即可,具体配置步骤如下:
1. 提取文本框录入的员工姓名
员工姓名录入用的是Text Input控件,直接引用控件的.Text属性即可获取输入内容。
- 点击选中对应的文本框,在右侧属性面板顶部可查看控件的实际名称(默认一般为
TextInput1格式,建议重命名为方便识别的名称比如TextInput_UserName) - 取值写法示例:
TextInput_UserName.Text
2. 提取复选框选中的内容
根据复选框的使用场景分三种情况适配写法:
- 单个独立复选框(比如单选项「确认已完成全部培训要求」)
直接引用控件的.Value属性,该属性返回布尔值(选中为true,未选中为false),可以搭配If函数转成可读文本,示例:If(Checkbox_Confirm.Value, "已确认知晓全部培训内容", "未完成培训确认") - 手动拖拽多个独立复选框做的多选组(比如多个培训模块供参训人勾选已完成项)
用Concat+Filter函数拼接所有选中项的文本,示例代码:
把代码里的控件名、选项文本替换成你自己表单里的实际内容即可,这段逻辑会自动把所有打勾的选项用顿号拼接成一段文本。Concat( Filter( [ {OptionName: "安全生产规范培训", Box: Checkbox_Module1}, {OptionName: "岗位操作流程培训", Box: Checkbox_Module2}, {OptionName: "信息安全合规培训", Box: Checkbox_Module3} ], Box.Value = true ), OptionName, "、" ) - 现代控件自带的多选复选框列表
直接取控件的选中项集合拼接即可,写法更简单:Concat(CheckboxList_Modules.SelectedItems, Value, "、")
3. 拼接进邮件发送逻辑
如果你用的是Office 365 Outlook连接器的发送邮件能力,直接把上面取到的值填入SendEmailV2方法的参数即可,按钮的OnSelect属性完整参考代码:
// 先拼接完整邮件内容存为变量,方便调试 Set( VarMailBody, $"培训完成签核凭证: 参训员工姓名:{TextInput_UserName.Text} 已完成/确认项:{Concat(Filter([{OptionName: "安全生产规范培训", Box: Checkbox_Module1},{OptionName: "岗位操作流程培训", Box: Checkbox_Module2},{OptionName: "信息安全合规培训", Box: Checkbox_Module3}],Box.Value = true),OptionName,"、")} 提交时间:{Now()}" ); // 发送邮件给培训师 Office365Outlook.SendEmailV2( "trainer@your-company.com", // 替换为培训师的实际邮箱,也可引用人员选择控件的选中邮箱 $"【培训签核】{TextInput_UserName.Text} 培训完成确认", VarMailBody ); // 后续接你原有的表单数据存储逻辑(比如提交到Dataverse、SharePoint列表)即可
调试技巧:可以在屏幕上临时加一个Label控件,把Label的Text属性绑定为
VarMailBody,点按钮预览拼接的邮件内容,确认内容、格式都正确后再放开邮件发送逻辑,避免发出测试垃圾邮件。

内容的提问来源于stack exchange,提问作者PasskyyCode
相关产品推荐
相关产品推荐

