在数据工厂中使用JSON为每个循环馈送 [英] Use JSON to Feed For Each Loop in Data Factory

查看:0
本文介绍了在数据工厂中使用JSON为每个循环馈送的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Data Factory新手,我遇到了以下问题:

我有一个调用API并返回以下JSON的Web活动:

{
"ResponseCode": 200,
"ResponseText": "OK",
"Data": {
    "ramco_purchaseordershipment": "ramco_purchaseordershipment",
    "ramco_ramco_paymentschedule_cobalt_duesoption": "ramco_ramco_paymentschedule_cobalt_duesoption",
    "cobalt_accountingintegrationbatch": "cobalt_accountingintegrationbatch",
    "opportunitycompetitors": "OpportunityCompetitors"}

}

表示来自Dynamics 365数据库的实体名称。

我将For-Each活动设置项添加到:

@array(activity('Web1').output.Data)

这最终为我提供了一个不是我想要的项目数组。

我尝试完成的是使用迭代通过Ramco_PurchasorderShipping、ramco_ramco_paymentschedule_cobalt_duesoption,等,然后使用每个值作为参数触发另一个管道。

我知道这是件愚蠢的事情,但我整个下午都在盯着它,但没有运气。

谢谢!

Michael

推荐答案

我创建了一个简单的测试来实现这一点。在这里,我使用查找活动返回与您的相同的json文件。
我的想法是:

  • 将此json对象转换为字符串。
  • },{添加到字符串中。
  • 使用逗号将其拆分为字符串数组。
  • 最终遍历此数组。
  • 将字符串转换为json对象并将其传递给下一个管道的参数。
  1. 声明数组类型变量。

  2. 使用表达式@split(replace(string(activity('Lookup1').output.value[0].Data),',','},{'),',')获取字符串数组。此处您需要将activity('Lookup1').output.value[0].Data替换为activity('Web1').output.Data

  3. Foreach字符串数组。

  4. 添加动态内容@json(item()),它会将字符串解析为json

  5. 执行管道1的输入如下:

    "parameters": {
        "Para1": {
            "ramco_purchaseordershipment": "ramco_purchaseordershipment"
        } 


    "parameters": {
        "Para1": {
            "ramco_ramco_paymentschedule_cobalt_duesoption": 
         "ramco_ramco_paymentschedule_cobalt_duesoption"
        }

    "parameters": {
        "Para1": {
            "cobalt_accountingintegrationbatch": "cobalt_accountingintegrationbatch"
        }

    "parameters": {
        "Para1": {
            "opportunitycompetitors": "OpportunityCompetitors"
        }
    }

这篇关于在数据工厂中使用JSON为每个循环馈送的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆