Azure数据工厂v2-遍历表中的服务器列表时遇到麻烦

时间:2019-03-04 19:55:43

标签: azure azure-data-factory-2

我有一个管道,其中包括一个简单的复制任务,该任务从SFTP源读取数据并写入服务器中的表。我已经成功地对管道进行了参数化,以提示要在运行时使用哪个服务器和表,但是我想在一个表中指定服务器/表对的列表,该表可以由查找任务访问以用作参数,而无需手动每次输入服务器/表。目前,只有服务器和表的三种组合,但是该数目应该可以根据需要进行调整。

我遇到的问题是,当我尝试在For Each循环中的查找任务中将数组变量指定为我的参数时,管道无法告诉我需要在值数组中指定一个整数。我知道这是在告诉我什么,但是对我而言,每次必须指定“ 0”,“ 1”,“ 2”等等似乎并不合逻辑。

我如何让它遍历服务器和表对,直到没有更多要处理的东西?我不确定确切的语法,但是必须有一种方法告诉它使用此服务器和表运行管道,再次使用其他服务器和表运行管道,然后一次又一次,直到在表中找不到更多对

不确定是否重要,但我正在数据流预览中并使用ADFv2

1 个答案:

答案 0 :(得分:0)

https://docs.microsoft.com/en-us/azure/data-factory/control-flow-for-each-activity#iteration-expression-language

我猜您想访问迭代项,即adf表达式语言中的@Override public List<MyCollection> findBuyByCriteria(Request request) { Query search = new Query(); search.addCriteria(Criteria.where("ItmId").in(request.getItmIds())); return mongoTemplate.find(search, MyCollection.class); }

如果您在查找活动之后附加foreach活动,并将查找活动的输出放在foreach活动的item()字段中,则items表示查找输出中的迭代项。