jccorreu Posted March 20, 2008 Report Share Posted March 20, 2008 I'm using 7.1.1. Having just gotten back from 2 client sites, where I made individual changes to code for some issues, I now need to bring them together into one. I have them saved in 2 parallel directories. The trouble is that when I use the compare vi's utility on the 2 versions, only one set of the subvi's will be loaded. This is a problem because for each different version, some of these subvi's, even though they have the same names, their code is also different. (either becuase it too was changed on site, or its a dynamically loaded module that is client specific) I've seen discussion of people using TortoiseSVN or some other code control system. I also know that 8.x has some built in code control. And I've heard of people using namespaces. But I do not see how any of this will help me in 7.1.1 when trying to compare vi's with the same heirarchy, same names. This has to have been a topic of discussion before, but I've not been successful in finding it. A link to that would be great. If not then what do people do? Is there a way to create namespacing in 7.1.1? thanks James Quote Link to comment
Michael Aivaliotis Posted March 20, 2008 Report Share Posted March 20, 2008 In 7.1 there is a feature called compare VI Hierarchies and works well. The key is to create a toplevel VI that contains all of the subVI's. You may already have one if you have a User interface that calls code. Otherwise create a blank VI and drop the subvi's onto the diagram and save it. Do this for both versions of code. Now open the tool under Tools>Compare>Compare VI Hierarchies. Where it asks you for the First Hierarchy and the Second Hieratchy you need to select the two toplevel VI's you just created. Notice that it states the second Hierarchy will be renamed. This is temporary. What this implies is that you probably want to make your edits on the First hierarchy since it stays intact (not renamed). Quote Link to comment
Rolf Kalbermatter Posted March 21, 2008 Report Share Posted March 21, 2008 QUOTE (Michael_Aivaliotis @ Mar 19 2008, 04:13 PM) In 7.1 there is a feature called compare VI Hierarchies and works well. The key is to create a toplevel VI that contains all of the subVI's. You may already have one if you have a User interface that calls code. Otherwise create a blank VI and drop the subvi's onto the diagram and save it. Do this for both versions of code. Now open the tool under Tools>Compare>Compare VI Hierarchies. Where it asks you for the First Hierarchy and the Second Hieratchy you need to select the two toplevel VI's you just created. Notice that it states the second Hierarchy will be renamed. This is temporary. What this implies is that you probably want to make your edits on the First hierarchy since it stays intact (not renamed). Pease note that Compare VI Hierarchies, different than Compare VI is a Professional Development System feature and therefore not available in the Full Development System if I'm not mistaken. Rolf Kalbermatter Quote Link to comment
jccorreu Posted March 29, 2008 Author Report Share Posted March 29, 2008 Yeah, i have the pro version, and as far as I know it is only available for this version. What I've done is gone ahead and setup Subversion with TortoiseSVN, and am using the checkout method so that I can be certain my 2 versions of my project are completely independant of each other. Everytime I do anything now I completely close LAbview, so that there should be nothing in memory, then I open the particular branch I am looking at, or I go to the compare heirarchies utility. In the process I did find a limitation of the utility. I can use the show vi heirarchy option, but it will only show me the heirarchy of the primary set. It'd be nice if when I choose show vi heirarchy from the secondary set that its heirarchy would be shown. Do you know if it works that way in 8.5? Or should it be mentioned to NI? As well as a utility that shows a list of the full path of all vi's in the heirarchy, or an option to show the full path in the title bar. Also, when I make changes to the primary set while in the compare utility, why does it then popup a warning that the secondary set is loading subvis and type defs from the directory in which the primary set resides? This in itself is no problem since I'm not saving the secondary set anyway. I'm just curious about the underlying ways in which the tools I use work. Quote Link to comment
Rolf Kalbermatter Posted March 29, 2008 Report Share Posted March 29, 2008 QUOTE (jccorreu @ Mar 27 2008, 06:04 PM) Yeah, i have the pro version, and as far as I know it is only available for this version.What I've done is gone ahead and setup Subversion with TortoiseSVN, and am using the checkout method so that I can be certain my 2 versions of my project are completely independant of each other. Everytime I do anything now I completely close LAbview, so that there should be nothing in memory, then I open the particular branch I am looking at, or I go to the compare heirarchies utility. In the process I did find a limitation of the utility. I can use the show vi heirarchy option, but it will only show me the heirarchy of the primary set. It'd be nice if when I choose show vi heirarchy from the secondary set that its heirarchy would be shown. Do you know if it works that way in 8.5? Or should it be mentioned to NI? As well as a utility that shows a list of the full path of all vi's in the heirarchy, or an option to show the full path in the title bar. Also, when I make changes to the primary set while in the compare utility, why does it then popup a warning that the secondary set is loading subvis and type defs from the directory in which the primary set resides? This in itself is no problem since I'm not saving the secondary set anyway. I'm just curious about the underlying ways in which the tools I use work. LabVIEW 8.x definitly has some improvements for this. Not sure about the Compare tool itself, but with the new projects you can have two different projects loading different VIs with the same name at the same time. The global address name space is now not LabVIEW global anymore but only project global. Quite some of your problems will go away with 8.x and specially 8.5. Not sure however if you can compare two different projects completely. Rolf Kalbermatter Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.