LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
Chris V

Connector Pane Terminals Default to Required instead of Recommended

Status: New

From my experience, it would be more useful for terminals on the connector pane to default to Required instead of Recommended.

 

terminals.png

 

Here's my thinking:

 

  • Usually You Want It - In general, when you create a SubVI you require all of the inputs, in which case it is a pain to go and change every terminal individually to required.
  • Conscience Programming - If you are creating inputs for your SubVI that are not required, chances are you are very conscience of this, have done it intentionally, and written code to handle that case where the terminal is not wired.
  • Easier Debugging - If Required terminals are not wired, VIs will be broken, i.e. you have compile errors instead of run-time errors.  These are much easier to debug (especially when the errors appear on functions inside your SubVI that did not receive their required inputs).  If in fact the terminal should not be required you are prompted to make that decision, instead of finding at run-time that your program does not work as expected.

I completely understand why we need these three categories.  However, it seems that the usual use-case is and should be Required and therefore the default should refelct this.

 

Chris V

Applications Engineer
National Instruments
12 Comments
carlos_camargo
Member

Sorry, but it is not all peaches and cream:

Yes, this option exists and has existed and works for all controls placed on the front panel with the glaring exception of the "Error In" cluster. The error cluster violates this directive and its terminals default to "Recommended".  This should be rectified and the Error cluster should not be treated special.  I only realized that this behavior exists a few weeks ago.  Both LabVIEW 2015 and 2014 exhibit this anomalous and undesirable behavior.

AristosQueue (NI)
NI Employee (retired)

@ChrisV: I have long wished to flip the Tools >> Options setting to default to True. I believe that it would help customers far more than it would ever hurt, but I have been unable to get traction on that. By the way, you do know that the Tools >> Options setting does exist, right? Your post doesn't explicitly mention it:

Tools >> Options >> Front Panel >> Connector pane terminals default to Required

 

@Carlos: Repeated surveys of customers puts you in the extreme minority. You should be using the VI Analyzer tool as a finishing step for your VIs to check for unwired "error in" terminals. The error clusters are deliberately documented as an exception to the rule (see Help button in Tools >> Options). I can understand why you and a few others think they should not be an exception, but it just isn't accepted practice in LabVIEW standards, for several reasons.

a) Since just about every node could be the first in the sequence and few people want to have to create the "no error" constant up front. Lots of leadoff of parallel operations don't need the error in wired, and it just becomes a pain when you add more code before it to have to delete the constant.

b) Many of us (myself included) will deliberately unwire all the errors during debugging in order to have automatic error handling trap the error at the point at which it occurs. Having to create constants all over the place would be a tremendous burden on that use case.

c) Leaving the errors unwired during development is extremely common when you are still moving blocks of code around and trying to prototype. Requiring connecting all the errors significantly slows down code development in that phase.