LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LV2016 Bug?

Solved!
Go to solution

Hello Everyone,

we've tested LabVIEW 2016 on windows 7 and windows 10.

we could reproduce a bug which does not exist on previous labview versions.

 

About the code:

The subVI which outputs its vi refernce to the caller as shown in the picture below.

subVI.png

 

Caller VI gets the subVI's VI reference through its output terminal.

Lv2016-32bit-Bug.png

 

SubVI refnum is Not A Refnum, 

During the first run of Caller Vi

if the subVis frontpanel is not open and the Caller Vi runs

 

Please give your feedback.

Best Regards

RENN

Kudos always welcome for helpful posts 🙂
Download All
Message 1 of 9
(4,001 Views)
Solution
Accepted by topic author RENN

I say bug, and potentially a pretty nasty one at that.  I have had subpanel designs in the past where VI put their This VI reference in globally accessible place, and then a UI can insert them into a subpanel as needed.  That design would break with this bug pretty easily.

 

Now a work around that fixes this is if you place an Always Copy function inside the SubVI just after the This VI constant then it seems to work properly.  Just another case where the Always Copy icon should be a picture of a band-aid.

Message 2 of 9
(3,969 Views)

Hello RENN,

thanks for the feedback, i will create an internal corrective action request to document and solve this behaviour.

best regards
Alexander
Message 3 of 9
(3,955 Views)

Did a CAR ever get created for this?  If so can the CAR # be posted?  Thanks.

0 Kudos
Message 4 of 9
(3,793 Views)

This sounds like an issue we had in G#, it could be that optimization removes the front panel if not needed. Try adding a static ref to a front panel object to force it into memory.

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 5 of 9
(3,775 Views)

Wow.  I missed this, and was so skeptical that I wrote my own little VI and ... Renn and Hooovahh are correct!  I'm also not so familiar with the Always Copy function (fortunately, Quick Drop knows about it, otherwise I wasn't sure I could find it in the Palettes).  I also don't (really) understand (a) why this bug occurs, nor (b) why Always Copy "fixes" it.  Could just be a subtle glitch in the Compiler, I guess ...

 

Bob Schor

 

P.S. -- Renn -- please mark Hooovahh's first Post as the Solution!  You are the only one who can do this, and having a Solution identified means anyone else who stumbles across this bug will see that it has been "solved".

Message 6 of 9
(3,772 Views)

Yamaeda,

     Can you show me how to add such a Static Reference to the "This VI" reference to force it into memory?  I'm not sure I see how to do this.

 

Bob Schor

0 Kudos
Message 7 of 9
(3,768 Views)

This doesn't appear to have anything to do with the front panel being there or not, since this happens in source, and subsequence runs changes the behavior.  This really is just a compiler issue.  And if you aren't familiar with the band-aid Always Copy function, you'll basically find it is a work around for quite a few bugs in LabVIEW.  Here is just a small list that I stopped updating a while ago.

 

https://forums.ni.com/t5/LabVIEW/TDMS-Write-cannot-accept-datatype-what-s-going-on-here-then/m-p/293...

Message 8 of 9
(3,749 Views)

Hello ,

 

the internal CAR 600216 was created, but the number can be onyl internal be shown and monitored.

best regards
Alexander
0 Kudos
Message 9 of 9
(3,711 Views)