LabVIEW Idea Exchange

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

idea.png

The In Place Element (IPE) is great and so are Data Value References (DVRs).... but... well sometimes I'm not such a great programmer and I will cause a dead lock in my code causing what looks like a "hang". Debugging can be hard in that case when trying to figure out which vi was trying to access the DVR. Also if I'm using the dvr for some sort of global storage, i may want an error to ocurr if some piece of code holds onto the DVR lock for too long. 

 

I'd love for the IPE to have a timeout when you have 1 or more DVRs and if ALL of the references are not available in the specified time, the structure returns an error. 

I would love to be able to use any given path indicator or control as a starting point for file searches....

 

Imagine showing the path of a logfile on a FP and being able to simply right-click it and select "Browse" to open an explorer (or your OS equivalent) window at that path....

 

Shane

This idea does not seem particularly clever. Fundamental snafu in the original picture ring design? Regardless, we could sure make use of this idea.

Message Edited by JackDunaway (mechelecengr) on 10-02-2009 06:40 PM
How about an event that fires when an Array's Index Values (shown at the top left of the array) changes ?  I use a arrays of clusters of controls to present configuration options to users and would like to know when they have selected a different index.

It was recently brought to my attention that some people may not be aware that you can show the radix for a numeric in a case selector label:

 

RadixCaseSelector.png

 

Well, I propose that since the Indicate Display Format of Strings is now In Beta, I would like to see a similar option to choose the display format of strings for the case selector label. Here are two examples that would really benefit from such a feature:

 

DisplayFormatCaseSelector.png

LabVIEW has built-in Context Help. If you mouse over a control (button, textbox, whatever), the CH updates to show info about that control. Users can type in Description information to provide detailed help about the control.

 

The problem is that the CH updates for every element on the panel. Some elements may not be "functional", such as a picture control that is just a status display and is self-explanatory. It's junky to have it show up in the CH with the "no help available" message, and it is silly to put CH info into something like that.

 

I suggest a simple "do not update CH for this control". The CH would not update when the mouse is over such a control, the same way it doesn't update when the mouse is over an empty part of the panel.

Should be able to specify tolerance instead of just upper and lower limits. This de clutters the application block diagram when you are checking for a value within certain limits.

 

 . Upper limit becomes : x+ tolerance, Lower Limite becomes : x - tolerance when using tolerance instance of the polymorphic vi.

 

For even higher level functionality , specify units of tolerance : absolute, percent(1e-2), parts per million (1e-6), parts per billion (1e-9)

This might be a bug report; it depends on whether todays behavior is intended or not(?).

Anyway: if you have properly defined the destination of a file in your application build e.g. on Source File Settings, but then later learn that the file was not actually on the list of source files - adding it to source files will automatically change the destination(!). I suggest it should check whether the user has already defined a valid destination for it and if so keep it.

 

Here is a demo of the issue:

I am proposing the creation of a new primitive allowing user to change the name of the data that is easier to use than the "variant to data" primitive.

 

There are some situations where the data name coming out of an output terminal need to be changed. Currently, a way to do this (while preserving the data type) is to use the "variant to data" primitive (which is less than ideal). One of the draw back of this method is that it requires to create a constant of the data to rename. Below is an example where this name change is useful using the "variant to data" primitive.

 

10-1-2010 1-09-22 PM.png

 

Now, it would be a lot nicer to have a "polymorphic" (aka XNode with type propagation) primitive where the user just need to drop a constant to rename its data. The tricky part about such a function is that you would NOT want to allow dynamic name change during runtime and therefore the name input parameter can only be a string constant (or its equivalent). Below is what I came up with.

 

10-1-2010 1-30-03 PM.png

 

It maybe that the string constant requirement of this method make it unpractical, but someone may have a better idea that would accommodate for this requirement.

 

In the same way that mouse clicks, key presses etc can be filtered or modified before being accepted, having a Value Change? event option would allow tighter control over input data than possible using the Data Entry tab, and without needing to wire to a Value property node or local variable as AQ suggests here.

 

While this idea in itself probably doesn't make much difference, it would be very useful if such an event could be "bound" to a .ctl (a sort-of mini-XControl) in an enhanced version of what the Data Entry tab currently does.

LabVIEW has the capability to swap inputs on some nodes using the 'Ctrl' key. However, when we need to insert a functionality between two nodes (whithout QD) or we have to change the source of a cable, we have to wire first and then delete the branch from the previous source because the wire become broken. This become a mess if the auto insert feedback node option is enabled.

 

I suggest the modulation of the wiring with the 'Ctrl' key:

FullImplementation.PNG

Hi.

 

When you register a user event the name of that event (the name that appears in the event structure selector) is determined by the last output terminal that event emerged from. If your user event came directly from the Create User Event primitive your event will of course carry the name you gave it on its data type, so no problem there. If your event came from a control terminal you are (usually) also in control of the name your event wire carries (as it will be the control label), but if your event wire came out of another primitive along the way your event name will in some cases have changed to something you don't control yourself. In some cases your event name will just be <User event> or even <?>:

 

Before.png

 

One of such events is annoying but can be acceptable. It's worse when you have several of those in your event structure selector - which of the <?> belongs to which user event? Therefore I usually rename events on the wire if they catch a generic name along the way. I use the Variant To Data primitive for this:

 

UsualFix.png

 

The above is the best solution currently, but it has a couple of drawbacks most of which come in effect if the data type of your event changes. In this case you risk ending up with code that isn't broken but executes with runtime errors. Therefore I suggest a new LabVIEW primitive for renaming events - one that will automatically carry over the event data type:

 

Suggestion.png

 

Would that be useful for anybody else but me?

 

Merry Christmas,

Steen

Hi,

I want to start discussion about how to enhance Loop Conditional Terminals in LabVIEW. Generally my idea is to have an easy way how to monitor Conditional Terminal of user-defined "primary" loop. Under the hood there can be for instance notification triggered from the "primary" loop and one or more "slave" loop(s) equipped with "Wait for notification" (with timeout = 0) with predefined logical operation on the terminal input.
So this allows you to have one STOP source loop and one or more listeners.

 

sopping loops.png


Anyone wants to expand this idea?

When I search for "Text" using the "Search for: Text" option in the "Find and Replace" menu, the error description in custom Error Ring objects should be included in the search input. 

When I create a public API method for an actor it's very nice to have the VI description populated for use with the Context Help window:

Method CH.png

 

However, once you create an AF message from that method, other actors will generally be using the Send [VI Name] method instead of the payload method itself and the context help for the Send method is decidedly less useful:

Send Method CH.png

 

Wouldn't it be nice if the send method automatically appended the payload method's VI description so it looked something like the following?

Better Send Method CH.png

 

I've actually written a VI package that will do this, but in order to accomplish it I ended up modifying the MessageMakerProvider and MessageRescripter project providers. It's workable, but it's really only reliable for the one specific version of LabVIEW in which it was developed so it'd be much nicer if NI implemented this out of the box.

Allow the merging of Property Nodes using drag and drop editing. Dragging a property node onto another node would insert its terminals into the target node after the terminal onto which it is dropped.  The editor would highlight the terminal over which the programmer is hovering,  This behavior would only be exhibited for nodes of like objects.  For implicit nodes, the target (drop container) node would remain linked.

 

24192i0C5A9371CEBDCE6A

The VI>Properties>Vi documentation could use an overhaul.  Simpler access from the Menu (A ribbon button ?) Templates and Auto insertion of definable fields.  A real text editor launch and well how about being able to resize the edit box so you can see what you typed.   Cut-and Paste from notepad works - but can't we get a bit more elegant than that.  Type bold text - get Bold text Underline, italics.  Justify left center or right.  Heck- this editor for the Idea exchange would look great in my vi documentation pop-up.

There has been always the need of opening the file/folder location in windows explorer, but I guess every application uses the trick of doing it through "System Exec.vi" or "Open URL" or Win32 API.  There is no LabVIEW native function to directly open folder/files in windows explorer directly.

 

Below threads discusses various methods to achieve this...

http://forums.ni.com/t5/LabVIEW/Use-LabVIEW-to-open-Windows-Explorer-to-a-certain-directory/td-p/898...

https://lavag.org/topic/11395-opening-windows-explorer-to-a-specific-directory/

https://lavag.org/topic/18444-open-windows-folder/

https://decibel.ni.com/content/docs/DOC-14633

https://decibel.ni.com/content/docs/DOC-22461

 

It would be nice if LabVIEW comes with some native function like below

 

File Folder Idea Exchange.png

Store webservice "source code" in a separated file like VI, libraries, classes ... not in project file so a webservice can:

- Be versioned in source code control

- Be reused between targets

- Be reused between projects

 

I would like to include arguments for any/all shortcuts from the installer. Currently you can build a labview installer to put shortcuts on desktop and to the "Program Files" menu. But there is no option to include arguments. See attached image of how it would look in labview.

 

InstallerShortcutArguments.png

 

This would allow for the installer application to include file path arguments into any executable. Example: You want to include a tftp server application for the installer and embed the tftp path in the shortcut.

 

It could also be usefull to run the same labview app with many startup arguments. Like if you have a debug mode and normal mode. If you want to include both options on the desktop you could use a -debug as the argument. And include it in the shortcut from the installer. Both shortcuts would point to <application> but one would also say "<application> -debug"

 

Thanks.

 

-Corey