LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Avoid recompile of non-changed VIs

Hi,
 I have a bunch of VIs using Excel nodes which works great.
However - whenever I try to open any of them on another machine they are recompiled - prompting to save when trying to close them back.
This is causing me a lot of troubles as I am sharing these codes among machines using source control. Avoiding from saving is not a prety good solution, as execution slows down significantly, as well as potentially hiding real required saves.
 
I have attached this very simple VI which illustrates this phenomena.
I tested it on two machines - both running LabVIEW 8.2 Full Development (same SN), both with same Excel version installed (2003 SP3)
 
Anyone with a suitable solution?
Download All
0 Kudos
Message 1 of 10
(3,972 Views)

Hi Malosh,

Although I got an error when I ran your VI, the important thing is it did ask me to save before I closed it as well like it was for you.  What is the file path you have it saved to on your development machine where everything works fine.  Can you set up the same file structure on your deployment machine?  It may be that because the file references have changed from what it is expecting it needs to save again.  Thanks.

 

 

Stephen S.
National Instruments
1 Test is worth 1000 expert opinions
0 Kudos
Message 2 of 10
(3,921 Views)

Hi Stephen,

 Indeed all the deployment machines I am using share exactly the same file structure. Furthermore – moving the file across the disk doesn't require resave! And this is very easy to test too:

1.       Open the VI, save it if required and close it back.

2.       Using any external file system move/copy the VI to a different location on the machine.

3.       Open the VI on its new location – no resave is required!

Any other suggestions?

 

P.S.: indeed getting an error when running the VI is an expected behavior.

0 Kudos
Message 3 of 10
(3,912 Views)
malosh,
  your saving problem is actually the main reason we haven't moved towards source code control.  We have three developers, all with the same labview version, almost clones of each computer when it comes to software.  All of our stuff is stored on network drive, so the location is exactly the same for all of us, but if someone else opens up certain files, it says it needs to re-save.  We don't have a workaround, but I am interested if anyone else does.
0 Kudos
Message 4 of 10
(3,903 Views)

I can think of two options:

  1. One of the PCs has 8.2.1 installed.
  2. You do have different versions of Office installed. If the ActiveX object is not exactly the same, you'll get recompiling.

The second option is probably the right one. I suppose it's also possible that you do have the exact same version of Office, but the ActiveX classes are registered differently in the different computers.

You have a setting in the options dialog for LabVIEW not to prompt for saving VIs which were only recompiled, but that won't solve the performance issue.


Britoa wrote:

All of our stuff is stored on network drive, so the location is exactly the same for all of us, but if someone else opens up certain files, it says it needs to re-save.  We don't have a workaround, but I am interested if anyone else does.
Having a network share is a very bad idea. Use SCC and have the hierarchy in the same place on all 3 computers. Even if you don't have the files in the same place, you should not have any conflicts as long as the hierarchy itself is unchanged. The only issue you will have is if people modify files or typedefs at the same time. If you don't want to have to check in your code all the time, you can use the setting I mentioned earlier, but I don't personally see the point.

___________________
Try to take over the world!
0 Kudos
Message 5 of 10
(3,897 Views)

I believe we saw the same problem with one of our team projects. The issue was one of the developers machines had a version of the toolkits that was not updated. We mass compiled on one machine then copied the folder with the add-ons to all of the other machines.

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 6 of 10
(3,883 Views)

Hi Malosh,

Can you try what Ben suggested?  Double check your toolkit versions and maybe do a mass compile.  Thanks. 

Stephen S.
National Instruments
1 Test is worth 1000 expert opinions
0 Kudos
Message 7 of 10
(3,793 Views)
I would like to recommend to do following:
- Open Front Panel of the VI which needs to be recompiled
- press Alt+F4 This will invoke Save Dialog,
- click "List unsaved changes"
now you can see what changed and why VI recompiled, for example:
 
 
What is reason for recomiling in your case?
 
regards,
Andrey.
0 Kudos
Message 8 of 10
(3,780 Views)
Hi Guys,
  Thanks a lot for the inputs!
However - mass compile is certainly not the case here as the example I've initially attached uses no sub-VIs. Trying to open this example and then close the VI - I assume you would also be prompted to save the file as Stephen S. did - please let me know if you didn't.
 
The only solution I can think of for this problem is adding basic Excel VIs to the LabVIEW package by NI, as these files are typically not added into revision control.
 
Any other ideas?
 
0 Kudos
Message 9 of 10
(3,709 Views)
Are these VIs that you have created and put in a library somewhere?  If so you would probably want to add them to source control like you mentioned. 
Stephen S.
National Instruments
1 Test is worth 1000 expert opinions
0 Kudos
Message 10 of 10
(3,635 Views)