You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Data Factory的两个复制活动间传递动态文件名?

在Azure Data Factory中复用动态生成的文件名

有两种可靠的方法可以避免重复生成文件名导致的不一致问题,具体如下:

方法1:用管道变量提前存储文件名(推荐)

这种方式最可控,全程复用同一个预先生成的文件名:

  • 打开管道的「变量」面板,新建一个字符串类型的变量,命名为DynamicFileName
  • 在第一个Copy活动之前,添加一个「Set Variable」活动,将文件名表达式赋值给变量:

    值:@concat('parking_', formatDateTime(utcnow(), 'yyyy-MM-ddTHH:mm'), '.json')

  • 修改第一个Copy活动的接收器文件名,改为引用变量:@variables('DynamicFileName')
  • 第二个Copy活动的源数据集,同样用@variables('DynamicFileName')指定要读取的文件名

方法2:读取第一个Copy活动的输出属性

如果不想额外添加Set Variable活动,可以直接读取第一个Copy活动执行后返回的实际写入文件名:

  • 保持第一个Copy活动的原有文件名表达式不变
  • 第二个Copy活动的源数据集文件名,使用表达式引用第一个活动的输出:

    若为单文件写入,用:@activity('你的第一个Copy活动名称').output.writeFiles[0].name
    部分场景下也可以用:@activity('你的第一个Copy活动名称').output.firstRow.fileName
    注:可先测试运行一次管道,查看第一个Copy活动的「输出」面板,确认具体的属性路径

两种方法的优势

不管用哪种方式,都能确保两个活动使用完全相同的文件名,彻底避免因两次调用utcnow()的时间差(哪怕是1分钟)导致的文件找不到问题。

内容的提问来源于stack exchange,提问作者tsorn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:23:11