Skip to main content
October 19, 2023
Solved

Help Required Please Help with Expression Rule to iterate.

  • October 19, 2023
  • 1 reply
  • 0 views

i am creating record type (Source as web service )

Also Created one expression rule as written in code snipet

a!localVariables(
  local!result: rule!JTV_intCustomFieldsGET(),
  local!rows: if(
    condition: index(local!result, "success", false),
    valueIfTrue: local!result.result.body.values,
    valueIfFalse: {}
  ),
  a!forEach(
    local!rows,
    a!map(
      projectId: index(fv!item, "projectIds", {}),
      customFieldName: index(fv!item, "name", {}),
      customFieldId:index(fv!item, "numericId", {})
    )
  )
)


But it returns output like this



by doing like this project id will be blank in record type or i have to to join array to make it comma separated in record type ..... But out put required is like 


Map
projectId 18800(Number (Integer))
customFieldName"2nd Outreach"(Text)
customFieldId28306(Number (Integer))
Map
projectId 12405(Number (Integer))
customFieldName"2nd Outreach"(Text)
customFieldId28306(Number (Integer))

Map
projectId 11000(Number (Integer))
customFieldName"30 Day Call Due Date"(Text)
customFieldId26401(Number (Integer))

Map
projectId 12403(Number (Integer))
customFieldName"30 Day Call Due Date"(Text)
customFieldId26401(Number (Integer))

Map
projectId 13300(Number (Integer))
customFieldName"30 Day Call Due Date"(Text)
customFieldId26401(Number (Integer))

Map
projectId 19100(Number (Integer))
customFieldName"30 Day Call Due Date"(Text)
customFieldId26401(Number (Integer))

Best answer by harmanjots9955

a!flatten(
    a!forEach(
      local!rows,
      a!forEach(
        items: fv!item,
        expression: a!localVariables(
          local!id: index(fv!item, "numericId", {}),
          a!forEach(
            items: fv!item.projectIds,
            expression: a!map(
              projectId: fv!item,
              customFieldId: local!id,
              Id: concat(local!id & fv!item),
            )
          )
        )
      )
    )
  )

1 reply

October 19, 2023

a!flatten(
    a!forEach(
      local!rows,
      a!forEach(
        items: fv!item,
        expression: a!localVariables(
          local!id: index(fv!item, "numericId", {}),
          a!forEach(
            items: fv!item.projectIds,
            expression: a!map(
              projectId: fv!item,
              customFieldId: local!id,
              Id: concat(local!id & fv!item),
            )
          )
        )
      )
    )
  )