LabVIEW Idea Exchange

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

With use Conditional Disable Structure developer define custom Conditional Disable Symbols as Project property.

I think, add option to define Conditional Disable Symbols as Labview property.


Now I use Project code in two computers with different MS Office versions (2013 and 2016).

Because part of Office functions in different versions has different count of parameters (example, Save As), I must replace Invoke mode each time open my project in other PC

 

One of the more important and useful functions, especially for exploratory data analysis in R, is the ability to take N samples from an input provided set with or without replacement.

 

LabVIEW should have that.  It would be relatively straightforward, and would start moving G toward having more shared Venn-diagram with R.

 

https://www.rdocumentation.org/packages/base/versions/3.5.1/topics/sample

 

Personally, I think you should look at the NIST EDA techniques library, and built a toolset off of it. https://www.itl.nist.gov/div898/handbook/eda/section3/eda3.htm

 

It is tax-funded source code, so it is something you should be able to access and integrate without too much work.

https://www.itl.nist.gov/div898/handbook/dataplot.htm

The close reference node returns errors for invalid references (1026, 1055 etc.). The majority of the time, I don't really care. I then have to manually filter out this error on that particular node.

Could we have a bollean option to generate warnings on invalid VI refs instead? Similar to the following:

LabVIEW_2018-10-04_13-45-21.png

When an integer is converted to a Boolean array, this size of the Boolean array depends on the type of integer that is wires to the input, which is 8 for an I8 and 16 for an I16. In case the number 3 needs to be converted and is stored in an I8, the result is 00000011, while only 11 is relevant. Of course it is possible to program this functionality self but if there is a simple configuration where you can select this behavior this would make life easier.Number to Boolean array Enhancement1.png

What do you think if there is an BD SubVI (right click) option in enforcing SubVI code version to be absolute. Maybe through verifying SubVI's hashes etc, when individually enabled; to protect the source distribution from tampering. By default, LV will look for missing VIs if not found in its original path. That opens a window for the user to load another VI in place of the intended VI as long as it doesn't break the arrow and with a warning. An option to enforce SubVI identity in a password protected main/sub VI can be useful in maintaining the integrity of the codes.

 

Often, I will open a project, poke around, and go to close.  When I close, there The LabVIEW project will prompt me to save.  If I press on "List unsaved changes..." The project will just say "An attribute of the project has changed".  This is so generic as to be completely useless.  I think this should be more specific to what attribute of the project has changed.  

It would be nice to know what all the possible errors a VI could throw are. This would be pretty useful because you could look at that list and decide which codes you want to implement special handling for, instead of relying on testing or prior knowledge. Would be especially useful for networking VIs ( UDP, TCP, network streams) and file i/o. 

I am currently trying to do something which is apparently impossible.

 

I want to create some code which returns a string which represents the selector of an event structure in which the code is executing.  Obviously, scripting is required for this.  While I can do this if the VI I am using for the task is used in only one event structure case (traverse for items) it doesn't work with a cloned VI.  The sub-VI reference found returns the VI definition of the non-cloned instance.  As such there is no way to actually find a specific clone.

 

The key here is that I want to have access to the "Diagram" of the event structure where the code is executing. If I would be able to drop a scripting type constant "This Diagram" which returns a reference to the Diagram similarly to what "This VI" does (but not the top-level Block Diagram, the actual diagram in which the node resides i.e. Diagram within Event structures, While loops, Sequence structures etc.), I would have all I need.  I could then parse the rest in a sub-VI and return the required string without jumping through lots of loops to get there (or not, as I am currently experiencing).

Morning forum

 

Propose to have RAD utility to include a "Snapshot/Clone" function that snap the image "exactly as is" the state of the cRIO/PAC at that image creation instance; that would include the entire drive structure, configurations, bit files, network settings, etc. Restoring from such type of image onto the cRIO will, without fail, guarantees its functionality (at least back to the state the image is created).

 

This come after the 2nd time of suspected corruption, when I deployed with error in LV causing irreversible/permanent impairment to my deployed RT application. First time being without a backup, that led me to reformat, reinstall and redeploy for one mistake in deployment. Second time being with a backup, apparently incomplete image using the RAD16 (http://www.ni.com/example/30986/en/), upon deployment failure and image restoration, the damage has not been reversed.

 

Hopefully to see this option developed soon, as the conventionally advised method of reformatting, reinstalling and redeploying cRIO, is not really practical.

 

Thanks and have a great day...

The error cluster is obsolete, it's time to move on. It's 2018 we need a more flexible error output.

 

it's deeply hard-coded into LV.

 

The most hard-coded thing that is impossible to remove is that it's used as a way to force sequential instructions (error in -> error out are many times the only connectors).

 

The problem is that

  • the error codes are limited
  • dont scale.
  • cant embed additional object into it.

 

I can't use the full range of I32 as error code.

If I use error code 6400, it will clash into yours 6400 custom code.

I need a way to say : this is the error code of MyModule/Actor/class/LVLIB, that I need to "namespace" error codes

I need an additional object into error cluster, so I can carry more info.

 

So pls NI, empower error cluster with additional field: "meta error object", that we can derive/extend and use.

A common problem for usesrs is attaching additional input devices (eg. touch panels, keyboards, ...), to LV-based systems (including embedded controllers), but yet LV seems to miss an generic API/binding for that.

 

In Linux world (and BSD, too) we have standard APIs for that. On kernel side, there is evdev, which has lots of drivers for quite any kind of input devices you could buy (and easy to extent for new, even selfmade devices). In userland, there's an small wrapper library - libevdev - which encapsulates the platform/kernel specific stuff and is easily portable to other OS'es (eg. there's already a BSD port, Win32 and MacOS ports shouldn't be a big deal either).

 

This library could be directly called from a VI. This VI could also exist in several specific (and potentially highly optimized) versions, to Labview users have a generic API handling input devices (such as standard USB HID class) in LV.

The current version of the Ethernet/IP tool kit 781656-35 only functions as an adapter. I need it to also function as a scanner. Specifically to take control  of the point I/O module 1734-AENT module of the Allen Bradley RSlogix 5000 PLC. I need the Labview to replace the PLC RS l5000 logix software. I still want to use the Point IO modules.

When passing a control reference to a sub vi , it would be nice to be able to map ALL properties to the taget control in one hit rather than individually setting each property in turn from the reference.

The "All Recent Files" list on the opening LabVIEW (2015) window is convenient but the order is inconvenient. All .lvproj files are at the top and .vi files at the bottom. Once we open 7 projects the most recent VIs are pushed down out of sight. Since it is a "Recent" files list, it should be sorted chronologically so that if a VI was opened last it is at the top of the list.

it would be great if adobe reader was built into the additional installers section of the project installer build.

i would think this would be a common thing users end up installing sperately

 

 

Why would you ever want to make a control or indicator label and caption visible at the same time?

Usually you select Visible Items>Label (or Caption) because you want to switch between them. If the Label is visible it would be faster to just switch to the Caption (and make the label invisible at the same time) - and vice versa. The same applies to the properties dialog: If the label or caption checkbox is selected, the other one should be automatically deselected.

This may seem a trivial point, but for years I have found this incredibly annoying Smiley Happy

It would be nice to have checkbox to switch this feature on/off in the LabVIEW options.

Thanks

Please provide a setting to exclude unspecified folders.

 

I started a Mass Compile on one folder. Whoa, it did more than I expected! It changed and saved hundreds of files. I let it run for about a minute, got too nervous, and stopped it. I was surprised that I gave it one folder to recompile and it saved called Vis even if they were in other folders above and outside of the one I had specified. I didn’t think to back those up.

 

NI's code should be excluded! Many VIs are installed as part of LabVIEW in the C:\Program Files (x86)\National Instruments\LabVIEW folder. These should NEVER be modified outside of installs/upgrades. I started a Mass Compile and, whoa, it did much more than I expected! It changed and saved hundreds of files. I let it run for about a minute, got too nervous, and stopped it. I didn’t think to back that up. Now I fear my LabVIEW installation is dirty. NI SR#7722650 says "It does go outside of the specific folder if the VIs in the specific folder depend on another VI outside of the folder. When it goes outside, it is just opening the VI and resaving it in the current version of LabVIEW. Because your VIs depend on some VIs in the ... vi.lib it went and resaved them. But, they are already in LabVIEW 2015 SP1, so it will not change anything in them. It does this to ensure the VI is looking at the current version of LabVIEW and not an older version." If that is true, why would installation of a version of LabVIEW install VIs of older versions? Make sure all vi.lib VIs are already compiled for that version.

 

I found https://forums.ni.com/t5/LabVIEW-Idea-Exchange/Force-Recompile-option-in-Mass-Compile/idi-p/2659839 which discusses whether or not LabVIEW Mass Compile changes files that are already up-to-date.

Mass Compile changes files that do not have a LabVIEW code extension such as ".ctl" and ".vi"! Why is it trying to load, check, and save files with extensions such as ".bak" and “.err”? The following example shows files that a prior mass compile found problems with and I renamed them and removed them from source code control.

 

  ### Bad VI:    "EditString.ctl.err"              Path="C:\cvs\r8000\labview\app\editor\controls\EditString.ctl.err"

  ### Bad VI:    "MCNavigate_old.vi.err" Path="C:\cvs\r8000\labview\app\remote_control\MCNavigate_old.vi.err"

 

Another example of this is described in https://forums.ni.com/t5/LabVIEW-Idea-Exchange/Mass-Compile-should-not-touch-Subversion-files/idi-p/1081483 which says files with ".svn-base" are changes. Yes, there was a specific improvement made to ignore those, but really, that wouldn't be necessary if Mass Compile stuck to known LabVIEW file types.

We can get the top level VI using property nodes / call chain, and we can also determine the running state of any specific VI (given a path).

It would be really useful to know which VI was running as any point in time (without resorting to execution highlighting) - not really applicable to time critical applications of course.

Uses for this include:

1) the abilty to change a VI execution state from Modal to normal with custom created dropins - if required.

2) Automation - it would be really useful to retrofit projects with a tool/dropin for soak testing / debug which detected certain windows - normally these would be modal dialogs and entered data in them to allow the program to continue (I know these features can be built in at the start of a project, but dropping in later would be very powerful for pre-existing ones and allow the use of the NI dialogs.

3) simple debug - code is stuck, exection highlighting is not showing where. This would give the answer.

 

James