LabVIEW Idea Exchange

Community Browser
Top Authors
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

There needs to be a LabVIEW API for Requirements Gateway.  API functions would be

 

1. Open/Create Requirements Gateway Project

2. Add/Remove Requirement Document

3. Add/Remove LabVIEW VI 

4. Get Code coverage

5. Create Report

etc

 

I think this would be extremely useful with trying to dynamically get code coverage, and really extend functionality

If you have a user interface that has an array display, and the user has "scrolled" down, but then the array becomes shorter, they end up looking at an empty window.

 

You can code around this so that the software recognizes the user's position exceeds the array size and snaps the window back, but this is clunky.

 

There should be an option built into LabVIEW to automatically snap the array display back to the last set of elements if the array size shrinks.  I think this should be the behavior by default, and it should be something you can turn off if you need to leave an array display showing unpopulated elements for some reason.

Outside of comparisons, Triangles are becoming an endangered species on my Block Diagrams.  The Compound Arithmetic Node is a very handy tool, and armed with my (function preserving) RCF plugin/QD shortcut they are replacing all math triangles.  I use them a lot, and so should you.

 

One final hurdle to reaching total happiness: the process of inverting inputs and outputs is a bit awkward at best.  Right-Click, scroll down, find Invert (right in the center of the menu of course) and try not to have the muscle spasm that results in 'Remove Input'.  I would really like some type of shortcut (double-click, shift-click, ctrl-click, anything) to quickly toggle the inversion of a terminal. 

 

(I would also like to enlarge those Inversion circles while we are at it...)

 

(Ironic that the LV logo is a combination of the Add primitive and the Sequence Structure....)

 

 

There are occasions to interrupt a user generated Windows Shutdown, discard the event, and generate a Windows Shutdown event at a later point (e.g. to allow an acquisition to finish).  This is not always possible within the Event case for Application Instance Close? (e.g. an acquisition is non-deterministic).

Why not add a Windows Shutdown event to the event structure and allow me to discard it?  Can you also write a VI to generate a Windows Shutdown?

According to an NI applications engineer:

"The Application Instance Close? event triggers when LabVIEW application is closing. It does not tell you if Windows is shuting down. The only way to know when Windows is shuting down is to trap the WM_QUERYENDSESSION message that you were talking about yesteray. I have consulted with a R&D engineer to see if there's any way to do this in LabVIEW. The only possible solution we can think of is to write an .NET program that can trap the WM_QUERYENDSESSION message and trigger a event callback that you can register in LabVIEW using "Register Event Callback" VI . None of the engineers I've talked to have done this yet, so I cannot garantee if this will work."

Wouldn't it be more elegant to do this in LabVIEW?

Hello,

You can show the scroll bar of a graph legend. Great if you do not have so much space for the legend. You can even show the index display of the first visible plot. But you can not set this value programmable.

In some cases you must set this value at least to zero. You might know it from a table. You change the table content and it can occurs that your table seems to be empty, because the first visible row is 204. And the new content has only 3 rows. Therefore you change the Top left cell to 0,0 when you change the content.

So this scrollbar is only useable if you can programmable set the Index display value!.

By the way, why can't I change the style of the scroll bar to system style?

Sletrab

Now that the performance issues have been dealt with, I really like the conditional autoindexed tunnels in LV12+.  A bit too much of a right-click dance to get there, and I think the feature is a bit hidden and easy to forget.  Two tweaks to improve this:

 

ConditionalTerminal.png

 

1) All autoindexed tunnels should be conditional by default. 

2) The condition should be optional (it is currently required).  An unwired condition should be treated as true, ie. a simple autoindexed tunnel.

 

That little conditional terminal isn't hurting anybody, except that right now it breaks your VI until it is wired.  That is why it should be optional IMO.  Users who figure out what that terminal is after seeing it the first time, you are more than welcome, enjoy it.

 

There could be an option to turn this off, but I think it should be opt-out and not opt-in.  New users can learn the feature, others who know their way around can turn it off if they are so inclined.

I am filing this idea on behalf of a customer who talked to me about a VI he had been hired to refactor. One of the hardest parts of that VI to understand was all the sequence locals on the border of stacked sequence structures that made the wires run right-to-left. He created a scripting tool to convert all the stacked sequences. This lead to the idea that the Tools >> Options settings for Diagram Cleanup could include another option:

[    ] Convert stacked sequences to flat sequences

It would default to unchecked when LV ships, but users could enable it when doing certain types of refactoring. When the option is enabled, any stacked sequence that gets included in a diagram cleanup would be converted to a flat sequence.

The Align, Distribute, Sinzing, and Grouping/Order menus in the tool bar are located in a very inconvenient position, especially when the FP or BD is sized in a way that hides the buttons. Currently if that happens we have to resize the window, select the desired actions, and resize the window back to where it was before.

 

This could be vastly simplified by adding these actions to the context menu if multiple objects are selected. As of LV 8.6 when you select multiple items on the FP or the BD a right-click produces a context menu that simply gives you the option to change Properties. I propose adding to the context menu as follows:

 

Align Objects

Distribute Objects

Resize Objects

Reorder Objects

Group Objects

------------------------

Properties

 

I do know the shortcut keys to redo the last Alignment and the last Distribution but a lot of the times I want to first align some controls left then others top and so on which requiresto reselect the proper method every time.

 

When converting a new VI back to LabVIEW 8.0, we get tons of warnings in the form:

 

The object "Multiply" does not support output configuration in the previous version.
The object "Multiply" does not support output configuration in the previous version.
The object "Subtract" does not support output configuration in the previous version.
The object "Add" does not support output configuration in the previous version.
The object "Multiply" does not support output configuration in the previous version.
The object "Divide" does not support output configuration in the previous version.
The object "Subtract" does not support output configuration in the previous version.
The object "Divide" does not support output configuration in the previous version.
The object "Divide" does not support output configuration in the previous version.

...

 

(see also this recent discussion, especially my comment).

 

The idea is that these warnings should only occur for function instances where the output was actually configured to be different from the default.

 

The current problem is similar to the problem with the boy who cried wolf, finding important warnings in a huge pile of useless warnings is like finding a non-magnetic, non-metallic, non-fluorescent needle in a haystack, and it is easily possible to miss something that is actually important.

It would be useful if a tool were distributed with LabVIEW that would show all controls for a selected vi in a table along with their properties. The properties can be edited in the table.

 

I already have built a tool that lets me open a vi and view and edit the Tip-Strip, Caption and Description properties. But it is lacking. It would be nice if it could view/set other properties such as default values, fonts, colors, numeric representation, etc.

 

Of course this would require somehow grouping controls by class since for example strings do not have a numeric representation.

 

Other features could be the ability to filter or search the properties, and to highlight the control on the front panel when the property row is double clicked.

 

Attached is a screenshot of the simple tool I built to give you an idea what it looks like.

 

Capture.PNG

 

 

Array elements can have a default value that is different from the default for the datatype. This is useful!

 

However, the use is not consistent across LabVIEW, here is a simple example:

 

 

(1) If we index into an array, and the index falls outside the current range, we get the default for the datatype ("" in this case), and not the default for the array element (which is not an empty string here!).

 

(2) However, if we add a new element skipping a few elements, the elements in between get the default value for the array element, and not for the datatype.

 

This seems inconsistent and the help pages actually confuse it even more.

 

From the help on "Index array"

 

"If the index is out of range element or subarray returns the default value of the defined data type for the array."

 

Clicking of the  default value link above says that:

 

The default value is the value used to pad the array when the array expands. For example, if you set the array index to a value beyond the defined portion of the array and enter a value in an element greater than one row past the defined portion of the array, the elements between the previous end of the array and the element you added are set to the default value.

 

As is obvious from the observations in example (2), the underlined statement seems actually incorrect!

 

IDEA: I suggest that indexing outside the range of an array should return the default value for the element (if defined).

 

In the case (1), it should return the 7 character string "Nothing" instead of an empty string.

 

(of course this change might break a lot of legacy code, not sure what to do about it)

I think NI should refine the Context Help for ES, inthe sense, it should show the exact content of the section we hover over.

 

Like, when we hover over Discard?, it should show this particular content. When we hover over Mouse Up, it show that corresponding content inthe pop-up small window.

 

This would save enormous time in trying to search & find the exact content we want from the main chm help file.

Add controls for the most commonly used case structure functions (example is add case, delete case, duplicate case). The controls would be an option under "Visible Items" when right clicking on a case structure.

 

This would especially be useful when editing/deleting states in a new state machine that has been copied from another VI.

 

Case Structure Controls.png

 

The Skip this control when tabbing property is unchecked by default when adding a control to the front panel.

 

However, in the majority of my applications :

  • Most of the VIs are invisible and the tab behavior is not used. Therefore, the setting is irrelevant.
  • For most of the controls of the UI VIs, the default setting must be changed (all controls outside the visible part of the front panel...) 

 

It would save me some time by checking this property by default. But I wouldn't be surprised if other developers had the opposite opinion ! So add this property to the LabVIEW options to allow us to set it according to our needs and preferences.

When you use the sturcure element in place, there are often clusters with parameters and work values.
The parameters used may have to update the values.

Currently, the code is quite complex and quickly becomes difficult to read if the cluster is Comlex.

A solution is to have the possibility to use "read only" item from a cluser.

inplace - actual.png

inplace - proposition.png

When first launching the Quick Drop tool it can take a while. This isn't a problem in itself, but the fact that you can cancel the loading or continue working in the background is. This is especially annoying if you launch it by mistake.

 

Not a major thing, just something that could be improved.

 

Quick Drop idea.PNG

Some customers have indicated an interest in modifying a build specification revision programmatically. The purpose for this is to synchronize the build specification revision with subversion software. 

 

Although the revision can be entered manually in the build specification, customers would like the option to update the build specification version either in a Pre-Build VI or LabVIEW program. Using property nodes to access build specification properties would be a useful way to implement this feature. 

Incorporate NI Batch Installer Builder into the general application builder suite.

 

This tool has a lot of potential for end-user use if it is incorporated into the app builder API and suite.  Batch installers can be used for much more than just installing selected sets of NI software (Which this tool is obviously designed specifically to do).  It could be used for creating installers of multiple, cross-project user installers comprising a complete system.  To do this though, the current batch installer builder needs to be made more generic to be of use.

 

Specifically:

 

  • Add configuration options to control or disable license dialogs when non-NI provided installers are added
  • Add configuration options to control or disable the user/company license dialogs when non-NI provided installers are added
  • Add configuration options to control or disable the check for NI updates dialogs when non-NI provided installers are added
  • Add batch installer version properties to allow end users to create system versions
  • Add support for 3rd party installer inclusion (Dup from another idea, but I had to repeat it here)

Including this in the app builder would be even better since that should allow project based configuration and control of the batch configurations and potentially even programmatic control.

Maybe this has been brought up along with all the other ideas/wishes dealing with graphs, but there is a couple of things with the intensity graph – z scale, that could be improved:

 

 1. Fit Z-scale with the top and bottom of the graph when resizing.

zscale fit.png

 

2. Z-scale should be in front of the graph frame

Z-scale in front.png better.png

                                       Now   Smiley Mad                                                                     Better   Smiley Very Happy                                                     

The graphing and charting types in LabVIEW are VERY old.  We need to have new plotting available for bar charts, area plots, pie charts, scatter plots, slider charts, etc, etc.  There are tons of plots in excel and any plotting tool that LabVIEW jsut cannot do itself natively and its a HUGE limitation.

 

We cannot even put text on an axis of a bar chart in LabVIEW from a data series?  Why not?