我在使用 ADF 以表格格式发送电子邮件的 Web 活动方面遇到问题, 我在 sql 中有表,我可以使用查找活动检索它,并且数据可以在 adf 中显示 这是查找的输出
这是电子邮件的结果,不显示数据,仅显示 ADF Web JSON 的表达式
这是 Expression 网络活动
{
"ITEmailTO": "@{variables('emailsummary')}",
"dataFactoryName": "@{pipeline().DataFactory}",
"pipelineName": "@{pipeline().Pipeline}",
"subject": "Summary Error Report from Table",
"ErrorMessage": "@concat(
'<html><body><h3>Contact Info</h3><table border=\"1\">',
'<tr><th>FileName</th><th>Target</th><th>ErrorDetails</th></tr>',
join(
activities('Lookup').output.value,
'<tr><td>',
item().FileName,
'</td><td>',
item().Target,
'</td><td>',
item().ErrorDetails,
'</td></tr>'
),
'</table></body></html>'
)"
}
任何想法,如何仅使用 ADF 显示格式表中的数据。
还没有,有什么见解吗?怎么做?
如果您想将所有查找数据作为表格发送到邮件,您可以尝试使用逻辑应用中的创建表格 HTML 对其进行格式化。
首先将查找活动输出数组从 Web 活动主体传递到逻辑应用程序,如下所示。
{
"ITEmailTO": "mymail",
"dataFactoryName": "@{pipeline().DataFactory}",
"pipelineName": "@{pipeline().Pipeline}",
"subject": "Summary Error Report from Table",
"ErrorMessage":@{activity('Lookup1').output.value}
}
现在,在逻辑应用中,在“收到 HTTP 请求”步骤之后,添加创建 HTML 表步骤并传递来自上一步主体的查找活动输出数组。打开表达式并输入表达式 triggerBody()?['ErrorMessage']
,然后单击
ok。
现在,将此步骤的输出作为动态内容中的 Outlook 操作的正文传递。
您可以使用
triggerBody()?['ITEmailTO']
和 triggerBody()?['subject']
等表达式从
HTTP步骤传递您的邮件 ID 和主题。邮件中的表格:
如果要为每一行发送邮件,则需要从 ADF 循环触发逻辑应用或在逻辑应用中创建循环并在该循环中使用这些步骤。您需要根据循环更改表达式。