LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Save for previous version doesn't warn about incompatibilities

Solved!
Go to solution

I just back-saved some code from LV2012 to LV2009. The code included some conditional indexing. I expected that either:

  • The code would be converted to a LV2009 functional equivalent without conditional indexing
  • I would get a warning about the incompatibility

I was disappointed to find that I got neither....

 

I thought we previously got warnings about incompatibility... Or is my brain superimposing some wishful thinking onto my memories again?

0 Kudos
Message 1 of 5
(2,192 Views)

Hi Chris,

 

Conditional terminals should be replaced with equivalent logic when backsaving, I just tested it on my machine and it produced a build array/case structure/shift register assembly you'd see in 2011 and earlier.  This was from 2012 SP1 to 2011 and 2009, with the same result both times.

 

Does your conditional logic involve any nonstandard data types or overly complicated conditional logic?  I don't know what affect this would have, but if it's reproducible it should be looked at.

 

Regards,

Tom L.
0 Kudos
Message 2 of 5
(2,185 Views)

Just getting back to this thread after a busy week...

 

The project that I backsaved included 2 VIs with conditional indexing. Neither had particularly complicated logic and the data types were a scalar and a small flat cluster of standard types. The one interesting thing about it was that both myself and a colleague both noticed the problematic backsave on different PCs and with different revisions of the code.

 

Anyway, I since tried to reproduce the issue but failed... (Doesn't that always happen straight after a forum post?!) Now when I do a backsave (on similar code, lost track of the original code where I noticed this) I get the build array + case structure + shift register...

 

BUT there is one problem: The new shift register always seems to be uninitialised. That seems buggy to me... (It definitely produces defective code in my case.) Is it that way by design for some reason??

 

 

0 Kudos
Message 3 of 5
(2,137 Views)
Solution
Accepted by topic author fabric

Hi Chris,

 

I believe this is a known issue as described in item # 372644 here:

 

White Paper: LabVIEW 2013 Known Issues

http://www.ni.com/white-paper/14490/en

 

There's also a mention of it here:

Forum Thread: Conditionally Indexed For Loop Terminal

http://forums.ni.com/t5/LabVIEW/Conditionally-Indexed-For-Loop-Terminal/m-p/2577763

 

In both cases it was noted that this problem was resolved in the 2012 SP1 release- that's probably what you're seeing.

 

Regards,

Tom L.
0 Kudos
Message 4 of 5
(2,106 Views)

Ok, so it's a known issue... Thanks for the links.

 

Got some useful info here, but the most interesting thing I learned is that I forgot to update to 2012SP1! 

0 Kudos
Message 5 of 5
(2,077 Views)