LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Database Toolkit compile problem


We are using the Database toolkit with Labview 8.2.
If a vi that calls a Database vi is used on several computers then Labview will ask to save it with the following changes : VI recompiled and sub vi calls modified.
This happens even if nothing was changed.
This does not happened on the computer on which the vi was formerly saved but systematically on all other computers.
The software configuration is exactly the same on all computers. The entire Labview directory has been mass compiled on each of them.


This is very annoying as we have a lot of database vi’s in our program and all the changes applying to them hide the real changes to other vi's.
Moreover we are working with an SCM tool (perforce) which oblige us to have exactly the same vi’s on each machine.

Thank you for your help.

Nicolas

0 Kudos
Message 1 of 5
(2,690 Views)
I have the same problem and I do this to fix it:
Set the READ ONLY attribute on all your VIs with Windows, then go to LabVIEW Tools->Options->Environment and check both the "Treat read-only VIs as locked" and the companion check box "Do not save automatic changes".
0 Kudos
Message 2 of 5
(2,666 Views)

Hello,

 

For those following this issue, this was reported to R&D (#41EBTL3Q) for further investigation.  As it turns out, the problem is that the database toolkit is using strict type definitions.  This would normally not be significant, except that there is a small problem with LabVIEW recompiling the typedef when it has already been mass compiled (as is required for the database toolkit in LabVIEW 8.2). 

 

There is another workaround:

 

1) Install LabVIEW and the database toolkit on all your development machines

2) Mass compile the database toolkit (vi.lib/addons/database) on all the machines

3) Copy the vi.lib database folder of one of these computers (usually found at: C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\addons\database) to a CD (or media of your choosing)

4) Replace this folder on all of the other computers with the folder from the CD

5) Use the toolkit as normal

 

If this doesn't work, you can also probably check in the toolkit folder to perforce, and just have the users check it in/out each time, but this situation is a little less than ideal, and we have not tested it.

 

This problem will NOT affect the execution of the toolkit (or LV in general).  Most users will only be inconvenienced by this problem when using Source Code Control.

 

Have a great weekend!

Travis M
LabVIEW R&D
National Instruments
0 Kudos
Message 3 of 5
(2,593 Views)

Has there been any update on this issue?  I tried the workaround suggested by Travis but it didn't work.  I'm still prompted to save every vi that contains a db function every time the code is opened on a different machine.

Using 8.0.1

Thanks,

Bill F

0 Kudos
Message 4 of 5
(2,500 Views)
Hello Bill,

I am sorry but I cannot help on this issue. I have been tired to fight against the many issues of distributed DB access and I totally rebuilt my application. Now I have only one computer that access the DB, saves the data I need and distributes it to the other computers in XML files through perforce. If your data has a predifined format and your DB is not updated too often (once per day for me) it is a very convenient solution even with 800 MB of data (I'll have 4 times more by the end of the project).

Regards,

Nicolas
0 Kudos
Message 5 of 5
(2,481 Views)