LabVIEW Idea Exchange

Community Browser
About LabVIEW Idea Exchange

Have a LabVIEW Idea?

  1. Browse by label or search in the LabVIEW Idea Exchange to see if your idea has previously been submitted. If your idea exists be sure to vote for the idea by giving it kudos to indicate your approval!
  2. If your idea has not been submitted click Post New Idea to submit a product idea to the LabVIEW Idea Exchange. Be sure to submit a separate post for each idea.
  3. Watch as the community gives your idea kudos and adds their input.
  4. As NI R&D considers the idea, they will change the idea status.
  5. Give kudos to other ideas that you would like to see in a future version of LabVIEW!
Top Kudoed Authors
Showing results for 
Search instead for 
Did you mean: 

Do you have an idea for LabVIEW NXG?

Use the in-product feedback feature to tell us what we’re doing well and what we can improve. NI R&D monitors feedback submissions and evaluates them for upcoming LabVIEW NXG releases. Tell us what you think!

Post an idea

In existing "File Dialog" Express VI- configuration Dialog we can specify what we want to select(File/Folder), wheather its new or existing File etc.

However for specifying File Pattern, Pattern Lable, Dialog name etc. we must connect constants from outside. it takes lot of space.

it would be great if those options can be configured from pop up.

For example:

1) install based on a license: this would install only the software related to a license;

2) reinstall/update based on license OR based on what's already installed.


For every new update of LabView I need to select the installation  of the toolkits I want, why not make it faster?

I would like to propose the use of a stacked parallel execution structure.  Especially in FPGA applications, this will solve the problem of diagrams running off the screen.  All execution pages will run simultaneously as if independent while loops were scattered across the BD.  This idea potentially leads into a 3 dimensional visuallization of coding LabVIEW. Note: In the image, the pages are offset but should look similar to a stacked sequence structure.



Parallel Execution Structure 3.JPG



When you connect the error wire to a case structure selector, you get two cases for error and no error. I think you should be able to add in cases for specific error numbers so you can handle specific errors differently. You could do this currently, but you would have to unbundle the error and use the error code.


Numbered error case.png

We have a Round towards -Infinity  (3.8 becomes 3,  -3.8 becomes -4)

We have a Round towards +Infinity (3.2 becomes 4, -3.2 becomes 3)

We have a Round to Nearest (Rounds up or down to nearest integer, if 0.5, banker's rounding to even integer)


Why is there no Round towards Zero?  Basically a truncate.  (3.2 becomes 3, -3.2 becomes -3)

I have a use for that right now, but it takes several primitives to work. 


As a corollary, a Round Away from Zero.  (3.2 becomes 4, -3.2 becomes -4)



Message Edited by Ravens Fan on 01-19-2010 04:53 PM

Building on the "Path Case Selection" idea, it can be difficult to remember all of the values of an Enum when defining a case structure.  I suggest a popup menu on the case structure which lists available values for selection.  Values already defined in other cases could be greyed out, and values selected in the current case could be selectable for removing.  Perhaps it would require a heading to differentiate from selecting a case, and Ctrl-click (Ctrl-right-click?) to activate.

Case Popup

This idea simply extends "Allow References to be wired into Case Selectors" by JackDunaway.  In short, allow paths to be wired directly into a case selector, with one case for "Not a Path", one for "Empty Path", and a third for "Valid Path".  This would often save me small trees of nested cases.

When you’re making a By Reference LabVIEW Object using a Data Value References (DVRs) the user of your class would need to embed each Dynamic Dispatching VI inside an In Place Element Structure (IPE). Or you have to create wrapper VI for each method but this undermines the advantages of LVOOP Inheritance.
The idea is that a DVR containing a LabVIEW Object wired to a Dynamic Dispatching Terminal is equal to calling the Method VI inside the IPE structure like illustrated below.

DVR DynamicDispatch.PNG

Message Edited by Support on 01-15-2010 04:39 PM

Since the commands "Group" and "Ungroup" objects it is only available in the FP's toolbar, there is no way to customize a shortcut key to it. The proposed ideas are:

  1. Have the controls also available in the "Edit" menu to allow us the customization through Tools -> Options... -> Menu Shortcuts.
  2. NI define two keyboard shortcuts, for example, Ctrl+G to group and Ctrl+Shift+G to ungroup.

Sometimes, like in many other software that have a paint feature, we need color swapping between foreground and background. The idea is to add a spot in the Tools Palette to allow this operation in one click. Here is a suggestion:


swap colors.png


It's difficult to see the spot because I did not changed anything, just added the double ended arrow. One way to help the visibility is turn it white when the mouse hover over it.

The tiny circles that represents inversion of the operation in the compound arithmetic node are hard to see ( The proposal is to get rid of the circles and invert the central part of the respectives connectors:


2010-01-13 compound arithmetic inversion suggestions.png

The difference between the suggestions is that in the second the corners were rounded to reduce the impact a little. I liked the first most.

For non-integer increments, the data entry currently accumulates binary errrors due to the limits if the DBL representation, so e.g. sometimes the upper limit cannot  be reached using the increment button several times, but only when entering the upper limit directly.


This comes up at regular intervals, e.g. here. In one fo these discussions, I long ago suggested to make it into an idea. It seems this has not happened, so here it is! Smiley Happy


This limitation needs to be handled with some internal code, e.g. to coerce the value to the nearest decimal fraction based on the least significant digit of the increment value whenever the up/down buttons are used. ... or something similar. Smiley Wink

I'm sometimes amazed how lazy I get. As soon as a cool new feature comes out, like a For Loop with Break, I want something better. I'm tired of writing code to search through an array of clusters for some specific value that matches. I really want LabVIEW to do this for me. This could drastically improve coding efficiency in advanced applications.


Imagine we have a new primitive search function that can search an array of clusters for a specific item and return the index of the first match. Then instead of writing this code manually, I could just drop the function and select the type to search by.





becomes this:


A minor niggle I have is the way LV reacts when we resize windows.  The anchor point is always at the top-left of the window.


If I grab the top of a window and make it smaller, I don't get rid of space at the top of the window as expected but rather at the bottom.  This makes alighning the top of the window a painstaking process of resize, adjust, chack, resize, adjust, check.....  I'd live for LV to anchor at the opposite side of wwhere I'm resizing.  If I want to resize the panel shown below to get rid of the space at the top of the panel I insitinctively grab the upper windo edge and resize.  But alas, the result is not what I expect (Even after 10 years of LV programming). 


Panel resize top.PNG I want to get rid of the space at the top.....


Panel resize top_2.PNGDoh!  Grabbing the top edge doesn't do what I want!



Message Edited by Intaris on 01-11-2010 09:40 AM

An object on the BD that, when double-clicked, would take you to another location in the BD. This would be useful when you have several areas in case-structures, sequences, or event-structures that you would like to document in a central location.


In particular, I have a case-structure that shows windows to the user. I have a specific window that I need to be modal, so I open that in my main event-structure instead of the window control loop. These two sections of code accomplish a similar task, so it would be nice to add a link the event-structure case near the case-structure. This would make the event-structure case easier to find.


Another way to accomplish this could be to extend Rick K's idea ( to allow the hyperlinks in comments to link to specific cases or BD objects.

We use the lock/unlock SCC method, and one thing I often forget to do on a new installation of LabVIEW is to set "treat read-only VIs as locked" to true.  I think this option should be set to true by default.

LabVIEW native primitive to get string’s number of lines.


Just an example:

string number of lines.png


Also, Get Number of Lines could be extended to File IO function too, File Get Number of Lines.

Allow the Case Selector Label to be moved along the top border.  Often wires naturally fall in the center of the case and it would be nice to move the Selection Label to the left or Right to make the BD neater

Now that my LV version is so "last year" I would just like to state my preference for the original naming scheme with simple version numbers.  If it seems too boring, you can go to Roman numerals, I'd purchase LabVIEW X. 


Of what has been tried recently: 6i, 7 Express, 8.20, and 2009 I prefer the simple naming to all of them.

It would be very nice if we could tell the installer script to synchronize its version number with the version number of a specific executable.


12-29-2009 2-38-53 PM.png


Additionally, it would be very nice to have this version information (once they are synchronized) displayed on the installer wizard (for instance in the title window or on the wizard first page).