LabVIEW Idea Exchange

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

Currently, I have to move each of the control into the cluster, and then I have to spend a lot of time repairing the broken wires in the BD.

 

Is it possible to just select all the controls you need to bundle into the cluster and create a new cluster.

Labview will need to automatically repair those broken wires.

This should work in both BD and FP.

 

It's just like selecting many stuff on the BD and create SubVI!!

new cluster idea.png

Didn't find this idea posted, I think it's a must.

 

It would be very usefull for MulticolumnListbox Item Names in which we need to change cell values...

inplacepropertynode.png

Right now we can make a conditional disable structure that behaves one way if we the VI is running in the Run-Time engine or not.  What I think would be useful is if we could also decide on performing one case or another based on the version of the Run-Time/Development of LabVIEW.

 

Say I develop some neat little reuse VI that relies on getting the name of the label of data type passed in.  OpenG has a functional already that does this called Get Data Name.  NI has a version as well in vi.lib called GetTypeInfo.vi.  The problem is in 2011 the OpenG method is about 10 times faster, but in the 2013 version the NI version is 10 times faster.

 

Wouldn't it be nice if a conditional disable structure could choose to do one thing over another, based on the version of LabVIEW it was being run in?  This way reuse code could be written to perform best in what ever version it was running in.

 

There are many situations were one code written using some function either runs slower or faster in different versions of LabVIEW and using this we could choose the best option for that environment.

 

Of course there is a work around and that is to read the App.VersionYear property, put that into a case statement and perform different code for one version or another but this has added over head, and is called every time it is needed.

 

EDIT: Also the App.VersionYear can't be used in inlined VIs because it is a property node which a conditional disable can be used.

So one shortcut I really like is CTRL+Shift+E.  This shows a VI in the opened project and drills into dependencies, and libraries to show you where the VI is.  The most common reason for me doing this is to find the library or class that a VI is in, and to find the other members within that library.  One issue I have is if I open a VI that isn't in a project.  This isn't very often but some times I want to work on editing a library or class that isn't part of a project yet and is just some reuse code that I intend on cleaning up.  

 

When I open a VI that is in a library, but not in a project, CTRL+Shift+E does nothing, but what I think would be nice is if this same shortcut could be used when not in a project to open the Edit >> Browse Relationship >> This VIs Class and open the class to show where the current VI is in the class or library.  Or alternatively this idea could be to make a new shortcut that does open the library or class a VI belongs to, and select the VI in a similar way to the This VI In Project works.

Can we get a "Loose Fit" plot axis option that actually works?

 

Loosefit.PNG

 

In the plot above, it's really hard to tell without squinting what the value was over time. Did it transition from 5 to 6, or 6 to 5? If you toggle the "loose fit" option in this plot, it looks exactly the same.

 

Can we add a property to specify something like "LooseFit.Padding"? Users could enter a percentage of full scale value, so then once the native autoscale algorithm is performed, it bumps out the y-axis min/max values by x% of the full range.

Add "Find All Instances" for polymorphic VIs. Right-clicking a normal VI's icon in the upper-right displays a pop-up menu with quick access to a "Find All Instances" item which helps greatly when navigating code to find all callers, then their callers, etc. However, when a caller happens to be polymorphic "Find All Instances" is not available and the work-flow is broken. Ctrl+F or Edit, Find can be used but the Find dialog must be manually configured: "Search for" Objects may have to be selected if Text was last used; "Select Object" must be set from a looong list of VIs. By that time, concentration is lost.

I'd love to see an option for the label of structures to be visible by default, similar to the already existing "Subdiagram labels visible by default" option.

 

structure labels visible by default.png

Currently to AutoScale an axis once, you need to set the ScaleFitX/Y property to 1. However this is really just like calling a method since the value of the ScaleFit property remains whatever it was previously. As a result, I find this mechanism unintuitive and would prefer to use the invoke node to call a suitable method named ScaleFitX/Y since it is an operation that just happens at a moment in time rather than changing a property.

Current Method: Property NodeCurrent Method: Property NodeProposed Idea: Invoke NodeProposed Idea: Invoke Node

Hi All,

 

I had posted this same idea in another post but it didn't have enough clarity and was mostly misleading the forum members. I was not able to edit it that I had to post this in a new thread here. 

 

The Idea

I felt that it would be good to have an option to switch to the last visited case in a case structure with numerous cases when going through the cases for debugging or understanding a code. It often happens that I have to scroll through the list of cases to get to a case and then may be I'll have to check something in the top most case. Again if I have to check the last visited case, I have to again scroll all the way down to the case, which becomes a little tedious. Instead, it would have been good if we had some kind of option to switch to the last visited cases sequentially (in a right click menu of the case structure or some keyboard shortcut after selecting the case structure). 

 

I'm sorry if someone has already posted this in the idea exchange forum. I tried to search it but couldn't find any such posts.


Regards,
Nitz

We have the option for finding the items that doesn't have any callers in the Project. So it would be good if a "Delete" option is also available in the same window as shown below. The same option can be disabled if the item selected item is locked and can only be enabled if it can be really deleted from the project.

 

IDEA_Item_With_No_Callers.PNG

 

 

 

 

The "Convert Instance VI to Standard VI" right-click option on malleable VIs made me think if this technology could be used for debugging otherwise inlined VIs (and therefore also malleable VIs)?

 

VIM Convert.png

 

VIs are obviously inlined without their block diagrams, so my suggestion would require two changes:

 

1) 'Allow debugging' must be settable in combination with inlining in VI Properties >> Execution.

2) LabVIEW IDE and RTE would have to call inlined VIs in different ways, depending on this setting. Suggestion follows:

 

Running in the IDE

The IDE would now create a temporary unique instance for each running inlined subVI that has debugging enabled. This would allow us to double-click on an "inlined" subVI while it's running, and have that temporary instance open up ready for probing. Settings like the 'SubVI Node Setup' dialog would now also be available for inlined VIs, if they have 'Allow debugging' on. Set 'Allow debugging' off and inlined VIs will behave as today (so no change for any existing code).

 

Running in the RTE

Executables are built with 'Enable debugging' either on or off (Advanced page of the Application Builder). I suggest that Application Builder builds in unique instances in place of debug-enabled inlined VIs when 'Enable debugging' is on, and bakes in ordinary inlined code when 'Enable debugging' is off. This would allow us to debug into inlined (and thus also malleable) VIs inside executables with remote debugging. Loose VIs called with the RTE would have had their inlined callees compiled with either debug capability or not, depending on their 'Allow debugging' setting as discussed above in "Running in the IDE".

 

What do you think - would it be nice to be able to debug inlined VIs?

If you are going to call it a developer suite, put the developer tools in it. The following toolkits need to be added:

 

  • NI LabVIEW VI Analyzer Toolkit
  • NI LabVIEW Desktop Execution Trace Toolkit
  • NI Requirements Gateway
  • NI LabVIEW Unit Test Framework Toolkit

Of course this will increase the cost of the developer suite. I find it easier to convince my boss to approve a cost increase versus purchasing a new toolkit.

When working with User Events as an API between modules there is a nasty little thing which unfortunately keeps rearing its ugly head.

 

If we retrieve a cluster of User Events (or an Event registration refnum) from a module with events we should be listening to and wire this to an event structure we get a memory leak if not all events are handled.  This particularly occurs whenever the API is extended and not all listeners have been updated.

 

2016-04-21 17_40_14-Edit Events.png

 

It would be much easier to track down these kinds of problems if the Event Structure would display which User Events are in the associated Registration Refnum but are NOT yet handled.  This would be a great too in tracking down rogue Events and eliminating possible memory leaks due to implementation errors.

 

Currently one has to iterate through ALL of the user events and observe the warning "this event is handled in another case" in order to find out if all have been handled or not.

LabVIEW has a feature that allow to quickly navigate from one occurence to another in the search result window (see image below).

 

Search Result.png

 

I propose to add the same functionality to the error window (see below).

 

New Error Quick Navigation.png

 

PJM

Message Edited by Support on 06-16-2009 06:25 PM

Hi,

 

building a large project consisting of several executables and an installer is no problem when using the AppBuilder API.

But a quite time-consuming task is to open all build specifications to update the build path or the file  versions.

E.g. opening the build specification of an installer containing several executables can take up to a minute even on an up-to-date pc.

 

So I suggest to enhance the AppBuilder API with property/method nodes to manipulate the "often-to-be-changed" properties. An example is attached below.

 

Regards,

 

Bastian

 

AdvancedAPI_lvie.png

When you run the LabVIEW Platform DVD, the default setting is that LabVIEW gets installed and nothing else. You can then go pick and choose what modules and toolkits to install. I like this default because I usually only want to install LabVIEW and a few other modules and toolkits. It is faster for me to select the few modules that I want to install rather than unchecking all of the modules I don't want to install.

 

When you run the Device Drivers DVD, it tries to guess what drivers you want installed based on the software you already have installed. However, it usually wants to install more drivers than I want it to install. It is a hassle to go through the driver list and unclick the drivers I don't want to install because most of them have dependencies that you have to unclick first. 

 

Idea: Their should be a button on the Device Drivers installation screen to unselect all of the drivers (see image below). I don't think the Device Drivers DVD default should be the same as the Platform DVD; a lot of new users won't know what drivers they need and installing all of the recommended drivers is a safe bet. However, many users do know what drivers they want and it saves time and hard drive space to only install the necessary drivers. Adding an "uncheck all" button would make this process faster and less frustrating.

 

device drivers.png

Add an "Uncheck All" button!

So currently in order to have multiple scales in an XY Graph, you must pre-allocate the scales by "Duplicating Scale" on the Front Panel. This does not allow the user to dynamically set the number of scales unless they create them before hand and programmatically make visible/invisible. 

 

XY Graph.png

 

I suggest making some node (invoke or property) to duplicate the scales. This would make the XY Graph scales much more extendable. 

So many times, Darren's history probes have been a great help while debugging my code ! This concept may be enhanced. But at least, these probes should ship with the LabVIEW installer.

Please add the circle constant tau, to the Math & Scientific Constants palette.  Happy Tau day!  (see more at http://tauday.com/)

 

Tau Constant

As seen here, the property pages are sometimes like swiss cheese, i.e. full of holes! Useful and often-used properties are missing, even though they are available via right-click.

 

One example is "Loose Fit". There is no logical explanation why it has been omitted from the scales property page. I suggest to add it!

 

Here's how it could look like:

 

 

 

IDEA: Add "Loose Fit" to the property page.