1 of 1 people found this helpful
You can pass more than one list as a list of values, but only if you have some kind of delimiting value so that you can tell where one list starts and the other ends:
List ( List ( "Value1" ; "Value2" ; "Value3"....) ; "xxxxxDelimitterxxxxxx" ; List ( "Valuea" ; "valueb" ; ... ) )
Your then parse your list of values back into two lists by using either a looping script or a recursive custom function that searches for that delimitter text in order to know where to stop parsing values for the first list and start parsing values for the second.
There is also a different way to pass multiple values as a script parameter or result:
"Let ( [ $List1 = " & substitute ( List ( "value1" ; "value2" ; ....) ; ¶ ; "; " ) & " ; " &
"$List2 = " & substitute ( List ( "valuea" ; "valueb" ; ....) ; ¶ ; "; " ) & "] ; 1 ) "
Inside your script, you get your lists with a script step like this:
Set Variable [$Dummy ; value: Evaluate ( Get ( ScriptParameter ) ) ]
When this step is performed, two script variables, $List1 and $List2 are created and a list of values are assigned to them. This second option is a lot more complex and takes a lot more time to work with, but can be a better option in some cases when the values needed to be passed might be null in some cases, for example.
[...] if you have some kind of delimiting value so that you can tell where one list starts and the other ends:
List ( List ( "Value1" ; "Value2" ; "Value3"....) ; "xxxxxDelimitterxxxxxx" ; List ( "Valuea" ; "valueb" ; ... ) ).
Where it is a good idea to think of a delimiter string that will not appear "in the wild", then create a Custom Function to define it as a constant.
Awesome! I love the way so many brilliant minds come together to help with solutions on this platform.
I will put the second of your suggestions into effect as this is definitely in keeping with the way I like to process information.
Thanks again. Alan