Jump to content

Comparing vi's with same name in 7.1.1


Recommended Posts

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

Link to comment

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).

Link to comment

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

Link to comment

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.

Link to comment

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

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.