Find Callers vs. Find All Instances
'Find Callers' Results Window |
'Find All Instances' Results Window for the same Control |
|
Find Callers (help page) |
Find All Instances (help page) |
How accessed |
Right-click an item in the Project Explorer window and select Find»Callers from the shortcut menu to display this dialog box. Or you can use the Find:Callers Property. (Text taken from documentation.) |
Right click the VI icon in the Block Diagram or VI Hierachy window. Also works from the icon/connector pane. |
What it searches |
All callers of a specific item in the project. (So if it has a caller outside the project, you won’t find it.)
|
Only instances in VIs/objects that are loaded to memory. So if the VI/object containing a particular instance is not in memory (read: open), you won't find it. |
What it finds |
Highlights the caller VI/object(s) in Project Explorer. |
The location that the VI is called from i.e. where it is on the block diagram. Also front panel for controls. |
How the results are displayed |
Note that it only tells you which VI calls it, not where in the VI is called! And it has no way of telling you if the caller calls the VI in multiple places on the block diagram.
Top tip: you can output a list of results as a .txt file. This can be useful for external documentation. |
|
Can you quickly jump between the callers? |
Yes: after clicking 'Go To', you can press CTRL+G to select the next caller in the list on the project explorer. CTRL+Shift+G will cycle backwards. |
Yes: the next caller in the list is opened and highlighted when you press Ctrl+G. Again, CTRL+Shift+G will cycle backwards. |
Does it keep a record of which callers you have visited? |
No |
Yes: callers that you have navigated to (using CTRL+G or Go To) have a tick by their name. |
Can you use it while the VI is running? |
Yes |
The option does not come up when you right click the icon/connector pane but it DOES seem to work from the VI Hierachy window. I honestly don’t know why, so if you can explain the logic behind this, please post in the comments. |
Polymorphic VIs are one of the 'gotchas' with Find All Instances. If you right click a polymorphic on the block diagram it will find instances of any of the polymorphic VIs - to see the specific VI you need to open that one up directly. Also if you are calling VI's by reference, these methods won't work.
Finding Items with No Callers |
Great Post! Just had to explain this to someone the other day. It is definitely confusing for beginning users.
ReplyDeleteThank you Sam! Glad you found it useful
Delete