Power Apps画布应用:批量访客信息邮件展示格式问题求助
问题解决思路
错误原因
你用ForAll(VisitorGroup, $"{Name} {Surname}")生成的varNames是Table类型,而邮件内容要求传入纯文本/HTML文本,直接插入表格类型就会触发类型不匹配错误。
解决方案
直接用Concat函数把访客集合转换成符合要求的换行文本(邮件支持HTML格式,用<br>实现换行),不需要提前设置varNames变量。
修改后的提交按钮代码
Office365Outlook.SendEmailV2( choiceHost_1.Selected.Mail, If(varContractor = true, "Facility Entrypoint: Returning contractors have arrived on site!", "Facility Entrypoint: A group is here to visit again!"), $"{choiceHost_1.Selected.GivenName}, You have multiple visitors. Please make sure they keep the safety guidelines in mind.<br/><br/>Visitors:<br>{Concat(VisitorGroup, $"{Name} {Surname}<br>")}" );
代码说明
Concat(VisitorGroup, $"{Name} {Surname}<br>"):遍历VisitorGroup集合,把每个访客的姓名拼接成名 姓<br>的格式,最终生成一段连续的HTML文本,每个姓名占一行。- 邮件内容里的
<br>是HTML换行标签,发送后会在邮件中显示为换行效果,正好符合你要的格式。
如果一定要提前生成变量,也可以在提交按钮前或OnStart中修改:
Set(varNames, Concat(VisitorGroup, $"{Name} {Surname}<br>"));
然后邮件内容里直接用{varNames}即可。
内容的提问来源于stack exchange,提问作者heiavieh
相关产品推荐
相关产品推荐

