NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Can I run code using TS RTE that has not been built by TS deployment engine?

I have all the code (sequences and LabVIEW vis) residing in one directory. All code for this project resides within this one directory only. When I build the top-level sequences using TestStand deployment tool for this project, I can see the vi hierachy of the vis that get directly called by TS is not changed but all the suvis go into a SupportVIs folder. Is this the only thing that the deployment tool does - putting all subVIs in a Support folder or am I missing something?

 

My real question is 'Can I run this sequence using RTE without building the top-level sequences?' Since all my code resides in a single folder, I am not sure whether I really need to be using the deployment tool. If TS RTE requires the subvis in the SupportVIs folder, I can see the need, but I am not sure why NI would have set it up that way.

 

I could of course test this out also in a bench but before doing that, I was wondering whether anybody can answer this question.

 

Thanks!

 

 

 

 

0 Kudos
Message 1 of 8
(3,489 Views)
Creating a TestStand deployment that contains LabVIEW code modules does more than simply package everything into an installer or image.
When you create a TestStand deployment that contains LabVIEW VIs, the TestStand Deployment Utility uses the LabVIEW Application Builder API to basically create a LabVIEW Source Distribution.

First the TestStand Deployment Utility parses through every Sequence File in your Workspace (and recursively parses through every Sequence in the Sequence File) to locate all the VIs that are called as code modules. These VIs are then automatically added to the deployment’s Source Files. (You can see the code modules that your sequences call in the Distributed Files tab of the Deployment Utility). 

When you actually build the deployment, the TestStand Deployment Utility uses the LabVIEW Application Builder API to build a Source Distribution for these VIs. This means that the Deployment Utility parses through all of the LabVIEW code modules to find any dependencies that it can find, whether they are subVIs that you created or subVIs that are LabVIEW built in VIs like those in vi.lib. It includes these dependencies as part of the deployment as well, and by default puts them all in a folder called SupportVIs.

More importantly, this process rewires your code modules to point to the VIs that are now in the SupportVIs folder. This is crucial because the Deployment System typically does not contain the LabVIEW Development System and so you cannot make these reconnections manually on the Deployment System.

Jervin Justin
NI TestStand Product Manager
Message 2 of 8
(3,483 Views)

Hi,

 

You can switch the deployment of sub VIs into a LLB off as part of the Deployed files setup.

 

Can remember the exact setting, but I'm sure this has come up before. Have you tried a search on Deployment?

 

Regards

Ray Farmer

Regards
Ray Farmer
0 Kudos
Message 3 of 8
(3,469 Views)

Hi,

 

I think it's in LabVIEW Options. 

 

http://forums.ni.com/ni/board/message?board.id=330&message.id=23039&query.id=7007#M23039

 

 

 

 

Regards

Ray Farmer

Message Edited by Ray Farmer on 05-27-2009 11:49 AM
Regards
Ray Farmer
0 Kudos
Message 4 of 8
(3,467 Views)

Thanks Jervin and Ray!

 

LabVIEW RTE in the deployment system basically drives the need for the rewiring into SupportVIs folder. This was something I was not aware of.

0 Kudos
Message 5 of 8
(3,454 Views)

Sorry to re-open this thread again. I was able to do some testing. Without using the TestStand deployment tool, I was able to run my top-level sequence.

 

Here is my test scenario:

- I had a top-level TestStand sequence in my development PC that called a vi which called multiple sub-vis. The sequence and all vis were in one parent folder but in multiple sub-folders.

- I copied this folder to my deployment PC with TestStand RTE 4.0 and LabVIEW RTE 8.5 and was able to run the sequence without any issues.

 

So the answer to my original question whether I need to use the TestStand deployment tool was 'NO'. I understand the TestStand deployment tool compiles all the vis in the latest version of LabVIEW and organizes all the sub-vis in the SupportVIs folder. This is especially useful when you are using vis called from NI user libraries and you don't have to keep track of these folders. But my use case is that all my code is contained within a folder and all my vis have been properly compiled in LabVIEW 8.5. In such a scenario, using the Deployment tool gives me nothing. Let me know if my reasoning is not correct.

 

0 Kudos
Message 6 of 8
(3,445 Views)

Hi,

 

You dont have to use the Deployment Tool, use what ever method works for you.

The Deployment Tool should make life a bit easier especially if you have a sizeable project to deploy.

The one it TestStand Version 4.2 should make it a bit easier. 

 

Just looking at my example, althought the LabVIEW Options shows the support VIs in a SupportVIs folder. They dont have to go there.

It all depends how you have define the destination folders in the View Destination window. (see new picture)

 

 

You will notice that the support VI's are defined in the one LLB file

 

 

Regards

Ray Farmer

Message Edited by Ray Farmer on 05-27-2009 08:16 PM
Regards
Ray Farmer
0 Kudos
Message 7 of 8
(3,435 Views)

Ray - Thanks.

 

We are trying to roll out our code from our source code control to our production PCs. My original question was more targetted at this situation. I might have to open a new thread to explain our actual scenario. But I think I have the answer now.

0 Kudos
Message 8 of 8
(3,430 Views)