03-25-2013 11:12 AM
Hi all,
I have a problem with the function in the subject. I am able to call the NewExecutiion() function from TS, but the parameters in the sequenceArgsParam will not be passed.
Can anybody tell me, what I do wrong?
The Action in the NewCall sequence should call the "Set Power Supply" sequence, which has one parameter, an array of strings.
Solved! Go to Solution.
03-25-2013 03:02 PM
You need to put the array in a container in your Locals:
From the TestStand Help:
sequenceArgsParam As Variant
[In] [Optional] Pass a PropertyObject object that contains the arguments to the sequence you want to execute. Each subproperty of the PropertyObject object represents a parameter to the sequence. The subproperties must appear in the same order as the sequence parameters.
03-25-2013 03:03 PM - edited 03-25-2013 03:03 PM
03-25-2013 03:49 PM
Forgot the attachment last time.
03-26-2013 12:44 AM
Thanks jiggawax.
For my understanding a single local variable is also a property object, but it seems not to be the case. But now it is working.
mitulatbati
03-26-2013 08:03 AM
Everthing in TestStand (well almost everything) is a property object. It's called inheritance. Basically almost everything inherits from the Property Object class. A sequence file is a property object, a sequence is a property object, a step is a property object, etc...
The point is for that method you needed to pass a property object where each subproperty represents 1 parameter in the parameter list. They also have to be ordered correctly. So if you have a sequence with 2 strings and a number then you would have to pass it a propety object with 2 strings and a number as the subproperties.
Hope that helps,
10-27-2015 01:57 PM - edited 10-27-2015 01:58 PM
Hi jiggawax~ ,
I like your posts here... (but I have another question if you are still subscribed to this post....)
What if the New Execution is made in LabVIEW, and I would like to send some data... say a Number to the Execution... how can I create a property object out of the data in LabVIEW ?
Amitai.
10-27-2015 02:14 PM
Amitai,
Are you talking about the sequenceArgsParam? You can just pass a Variant in LabVIEW?
If you need to convert to a PO then you can use the Variant to Data function and wire an Automation Refnum that points to the PropertyObject class into the top of it.
10-27-2015 04:03 PM
10-27-2015 04:10 PM
If you already have an engine then you can use Temporary Globals. Read the TestStand help on how to use them and what they are.
The other thing you can do is use a Queue. If the name of your Queue begins with an * then anything in TestStand can access it. It basically becomes a global queue.
I would not change the prototype of MainSequence (i.e. add parameters). Because the process model calls it as well. If it won't ever be used by the process model then use a different name for the sequence and in that case you can add parameters.