Here’s a macro that adds an array of sObject names to the extract workflow.
Example
Macro
{
"name" : "concatArrayFieldName",
"description" : "Concatenates field names from an sobject array node",
"parameters" :
[
"variable"
],
"returns": "${array:concat(Rules.CurrentNode, array:forEach(p.variable,'{\"name\":\"${var.fieldName}\"}'))}"
},
{
"name" : "addToExtractCaseWorkflow",
"description" : "Adds array fields to Extract Case node",
"parameters" :
[
"variable"
],
"actions": [
{
"action": "set",
"description": "put selected values for sfdcDigest in dataflow",
"path": "$.workflowDefinition.Extract_Case.parameters.fields",
"value" : "${macros:concatArrayFieldName(p.variable)}"
}
]
}
Example
Rule Calling the Macro
{
"action": "eval",
"description": "put selected values for sfdcDigest in dataflow",
"value": "${macros:addToExtractCaseWorkflow(Variables.CaseMoreDims)}"
}