首页 > 解决方案 > Azure 数据工厂将管道处理的文件作为邮件附件传递给逻辑应用

问题描述

我有一个 ADF 管道将文件移动到 blob 存储。我正在尝试将处理后的文件作为我的网络活动的参数传递,以便我可以将其用作电子邮件附件。我成功传递了以下参数:

{
 "Title":"Error File Received From MOE",
 "Message": "This is a test message.",
 "DataFactoryName":"@{pipeline().DataFactory}",
 "PipelineName":"@{pipeline().Pipeline}",
 "PipelineRunId":"@{pipeline().RunId}",
 "Time":"@{utcnow()}",
 "File":???????????????????????????? 
}

但是,我应该如何指定我刚刚在同一管道中处理的文件的路径?

任何帮助将不胜感激,

谢谢

埃里克

标签: azure-data-factory

解决方案


我正在将数据复制到output容器中。我目前的假设是一天上传一个文件,然后使用两个GetMetadata活动获取文件的lastModified属性,过滤掉最近上传的文件名。

  1. 在 Get Metadata1 活动中获取子项。
    在此处输入图像描述

  2. 然后在 Foreach 活动中,通过动态内容获取子项@activity('Get Metadata1').output.childItems 在此处输入图像描述

  3. 在 Foreach 活动中,在 Get Metadata2 活动中,将json4数据集指定给output容器。
    在此处输入图像描述 输入动态内容@item().name以获取文件名列表。 在此处输入图像描述

  4. 在 If 条件活动中,@equals(dayOfMonth(activity('Get Metadata2').output.lastModified),dayOfMonth(utcnow()))用于确定文件上传的日期是否为今天。
    在此处输入图像描述

  5. 在真实活动中,添加动态内容@concat('https://{account}.blob.core.windows.net/{Path}/',item().name)以将值分配给变量。 在此处输入图像描述

  6. 输出如下:
    在此处输入图像描述


推荐阅读