NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

PropertyLoader with parallel execution

Hi all,

 

I'm using PropertyLoader feature to import property values from excel file to my sequence at runtime.

My sequence can be used in parallel by mutiple slots.

I saw that if a slot executes a property loader step, the sequence file is modified for all other slots.

It's a big problem for my application.

Is it the normal? is it possible to import properties without modifying the sequence for all other slots?

 

Thanks in advance for your help.

0 Kudos
Message 1 of 11
(1,345 Views)

Hi,

 

It should work for locals and file globals on thread/socket basis.

For fileglobals you neee to go to Edit menu --> Sequence file properties --> Seperate file globals for execution. Ensure this is selected.

 

I have a sequence with 1 file global and 1 locals.

Property loader step will update this two values.

 

RaviShrigiri_1-1650856788786.png

 

 

I have run propertly loader for only one socket.

Check the variables that got updated for the sockets from propertly loader :

 

RaviShrigiri_2-1650856848670.png

 

As you can see only the socket which ran the property loader got updated with the new value.

 

Hope this helps.

 

Ravi

0 Kudos
Message 2 of 11
(1,302 Views)

Thanks for your response.

I confirm, it's work for loacals variables. But I'm using property loader to modify sequence properties, like Step Mode.

If you modify Step mode from Normal to Skip with property loader, all others executions (in other Sockets) will have this modification.

 

Normally, typical usage of property loader is to modify tests limits in runtime. I'm sure that tests limits will be modified in all current executions.

 

Thanks

 

0 Kudos
Message 3 of 11
(1,294 Views)

Hi,

 

As you can see below the limits are not modified when property loader step is only executed for thread 0 and skipped for thread 1/

The step.limts values are only loaded for thread 0.

 

 

RaviShrigiri_1-1650871670075.png

 

You can also use in pre expression step.variable= locals.x and download locals.x through property loader.

 

Ravi

 

 

 

0 Kudos
Message 4 of 11
(1,290 Views)

you are right. test limits are just modified in the current execution which execute the porperty loader.

But it's not the case for "Step Mode" property.

Does it means that all properties are not managed by the same way?

I need to change also step mode property

 

Thanks

 

 

0 Kudos
Message 5 of 11
(1,286 Views)

Hi,

 

Yes you are correct the TS properties seems to be shared :

RaviShrigiri_0-1650876806620.png

 

You can play around with the preconditions for each step :

Locals.tempnum==0

where locals.tempnum  gets updated from property loader in the first step.

 

Regards,

 

Ravi

 

 

 

 

 

 

0 Kudos
Message 6 of 11
(1,278 Views)

What is the rule? which properties are modified in the local execution? Which properties are modified in global?

I need to know in order to be sure that the propertes are modified onlmy localy.

 

Thanks

0 Kudos
Message 7 of 11
(1,273 Views)

Maybe all sub properties of "TS" don't support live modification by property loader.

I need a confirmation, thanks

 

0 Kudos
Message 8 of 11
(1,270 Views)

Hi,

Check this link :

https://zone.ni.com/reference/en-XX/help/370052AA-01/tsapiref/reftopics/propertyflags/

 

RaviShrigiri_0-1650909904827.png

 

Right click on TS variable and choose edit flags.

You can see the property its shared using runtime.

If you refer my previous response it shows as shared.

 

Regards,

 

Ravi

0 Kudos
Message 9 of 11
(1,259 Views)

I would like to modify Arguments of a sequence call by property loader (without sharing with other executions)

I see that "TS" property container is shared, but "SData" sub property not and ActualArgs" not, and all arg sub properties not.

 

Which properties do I have to change flag?

 

Thanks again for your helpful support

 

0 Kudos
Message 10 of 11
(1,251 Views)