Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

JSOn array flow designer, for each donsen't work

Melker
Kilo Expert

Hi

I try to get my JSON array output to work in the flow designer for each step.

But it just count 0 of 0

The output is from a Powershell script and run thru the JSON parser in the action step

The JSON Object array output:

{
    "root": {
        "root_array": [
            {
                "ID": "1",
                "IDA": {
                    "CollectionID": "SMS00001",
                    "CollectionMemberCount": "270",
                    "CollectionName": "All Systems",
                    "CollectionType": "2"
                },
            {
                "ID": "12",
                "IDA": {
                    "CollectionID": "CHQ00016",
                    "CollectionMemberCount": "1",
                    "CollectionName": "TestU",
                    "CollectionType": "1"
                }
            }
}
}
}

How can i make the for each item loop to work?

 

( I'm new to ServiceNow so bare with me 🙂 )

1 ACCEPTED SOLUTION

If you click on your action in the flow execution details. Does it return the correct values like this under "runtime values"?

find_real_file.png

View solution in original post

11 REPLIES 11

Goran WitchDoc
ServiceNow Employee
ServiceNow Employee

Hi Melker,

Just a quick question. The output in your example is missing a ] to close the array. Is that typo on your community post or perhaps the issue that breaks your code.

//Göran
Feel free to connect:
LinkedIn
Subscribe to my YouTube Channel
or look at my Book: The Witch Doctor's Guide To ServiceNow

To add, there where some other inconsistence as well. I think your JSON should look like this:

{
    "root": 
    {

    "root_array": [
        {
            "ID": "1",
            "IDA": {
                "CollectionID": "SMS00001",
                "CollectionMemberCount": "270",
                "CollectionName": "All Systems",
                "CollectionType": "2"
            }},
        {
            "ID": "12",
            "IDA": {
                "CollectionID": "CHQ00016",
                "CollectionMemberCount": "1",
                "CollectionName": "TestU",
                "CollectionType": "1"
            }
        }
    
]
    }
}

 

if I build what I think you are looking for, my action output would look like this:

find_real_file.png and then in the flow, I would use the root_array in the forEach like this

find_real_file.png

This is my output from the Json parser step standalone action and in the flow:

{
    "root": {
        "root_array": [
            {
                "ID": "1",
                "IDA": {
                    "CollectionID": "SMS00001",
                    "CollectionMemberCount": "270",
                    "CollectionName": "All Systems",
                    "CollectionType": "2"
                }
            },
            {
                "ID": "11",
                "IDA": {
                    "CollectionID": "CHQ00015",
                    "CollectionMemberCount": "2",
                    "CollectionName": "Test",
                    "CollectionType": "2"
                }
            },
            {
                "ID": "10",
                "IDA": {
                    "CollectionID": "CHQ00014",
                    "CollectionMemberCount": "0",
                    "CollectionName": "OSD - Deploy Master Windows 8 Image",
                    "CollectionType": "2"
                }
            }
        ]
    }
}

find_real_file.png

 

and the input look lite this in for each
find_real_file.png

 

find_real_file.png

Where have I done made a mistake?

 

Seems to be in the output of the step I have the issue.

Looking at Episode 25 - Complex Objects in ServiceNow Flow Designer

but don't get to to be correct