【问题标题】:How to set the file name based on a parameter in the sink?如何根据接收器中的参数设置文件名?
【发布时间】:2020-04-15 16:55:21
【问题描述】:

是否可以根据映射数据流接收器中的参数设置文件名? 表达式生成器认为这很好,并且该参数在界面中是可拖放的,但是当在管道中运行数据流时(将管道参数传递给数据流参数 $OutFileName),它会失败并显示“表达式中不支持的语法。详细信息:在 Sink"

我已经尝试了表达式的不同变体,例如“{$OutFileName}”和 toString() 函数等等...

【问题讨论】:

    标签: azure-data-factory azure-data-factory-2


    【解决方案1】:

    $OutFileName 是 String 类型的数据流参数吗?如果是这样,你应该从管道中做的就是在活动的参数设置中像这样设置它:(选择“数据流表达式”)'myfile.txt'

    【讨论】:

    • 是的,但我想根据包含管道参数的表达式为管道中的数据流活动设置参数。我想我必须在图片的 UI 中选择“管道表达式”才能使用它。但是,当它运行数据流时,我得到了不受支持的语法错误
    • 是的,使用“管道表达式”。你介意把你的表情贴在这里吗?
    • 例如@replace(item().name, '.ORC', '.PARQUET')。该项目来自获取元数据活动。对于同一个 foreach 容器中的复制数据活动,我有完全相同的表达式,它可以正常工作。我猜不支持的语法来自数据流的接收器组件。
    【解决方案2】:

    接收器文件名的表达式必须包含单引号,这意味着您必须将它们包含在您传递的管道表达式/参数中 - 或者您必须在参数选项卡中取消选中“表达式”框管道中的数据流活动,因为它将添加引号。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-01
      • 2022-11-11
      • 1970-01-01
      相关资源
      最近更新 更多