LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Bazaar 'specified property not found' error that I cannot get around - LV 6i

Hiya folks,

 

I'm unfortunately stuck with making enhancements to a dinosaur application in LV 6i and am running into a strange issue I can't wrap my head around.

 

I have a VI that takes as input a single reference to an array of strict-type clusters.  I would like to access the control references of each control in each element of that array.  Using the standard (or what I believe to be the standard) VI server approach to breaking this down, I am able to get down to a single element of the array, cast it to a strict-type cluster reference, finally exposing an array of control references via a property node (see the attached image).  This is all fine and dandy until I attempt to access that array of control references.  So, referring to the image, the upper thread yields no error in "error out", however the scenario in the lower thread does.

 

If I attempt to access ANY other property in that final property node that has nothing to do with references, then everything works great.

 

Anybody have any ideas?  Suggestions? Is the fact that these clusters are strict type def that's preventing me from moving forward (the only scenario I have not tested as of yet)?

Sr Software and Automation Engineer
Certified LabVIEW Architect
Kod Integrations, LLC
http://www.kodintegrations.com
0 Kudos
Message 1 of 7
(3,151 Views)

I am not aware that writing to a "index vals" property sets the "focus" to a certain element of an array. I thought that property just determines which element is scrolled on the upper left corner of the array control/indicator. What makes you think otherwise?

 

I have a hard time to figure out what you actually want to do. Can you attach a simplified version of your VI to make it more obvious. Thanks.

Message 2 of 7
(3,142 Views)

Thank you for your response.

 

Setting the index value actually does work.  If I want to access some property other than "Controls[]" ("Value" for example) then everything works great; changing the focussed index value spits out the correct index in "Value".

 

Ultimately, I'm working with a subVI that's attempting to dynamically manipulate the Datasocket properties of each control, in each cluster, in each element of that array.  The number of elements is arbitrary.

 

I will attach an example later this morning - which will also aid in the troubleshooting of this thing.

 

Thanks!

Sr Software and Automation Engineer
Certified LabVIEW Architect
Kod Integrations, LLC
http://www.kodintegrations.com
0 Kudos
Message 3 of 7
(3,117 Views)

My Nugget on Exploiting Control references should be useful. The attached VIs will too new for you to use but I beilve I posted screen shots of everything. The one limitaion that I can warn you about that will prevent you from duplicating those techniques in LV 6i is how I handled Clusters of arrays, of clusters or arrays.... etc. LV 8 or there-abouts added the ability to do complex recursive calls (A cals B that calls A...) But you shouldbe able to code around that detail or ignore it completely if your data structure will never be that complex. Here is a preview of what you will find in that Nugget.

 

 

Just trying to help,

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 4 of 7
(3,110 Views)

"gt4play" <x@no.email> wrote in message
news:1229004607126-822621@exchange.ni.com...
> Thank you for your response.&nbsp;Setting the index value
> actually does work.&nbsp; If I want to access some property other than
> &quot;Controls[]&quot; (&quot;Value&quot; for example) then everything
works great;
> changing the focussed index value spits out the correct index in
> &quot;Value&quot;. &nbsp;Ultimately, I'm working with a subVI that's
> attempting to dynamically manipulate the Datasocket properties of each
> control, in each cluster, in each element of that array.&nbsp; The number
of
> elements is arbitrary. &nbsp;I will attach an example later this morning -
which will also aid in the troubleshooting of this thing.&nbsp;Thanks!

Modifying properties of elements in an array is useless. All elements will
change. The only property that you can set without updating all elements is
"value".

AFAIK Elements inside an array connot have individual datasocket connections
at all. Only the array in total can have a connection.

Regards,

Wiebe.


0 Kudos
Message 5 of 7
(3,100 Views)

Modifying properties of elements in an array is useless

 

Yes, I probably should have re-emphasized that this approach wasn't going to be useful (enough) for what I ultimately wanted to accomplish.  However, that doesn't take away from the fact that I should still be able to access the reference of an individual control, embedded in a cluster that acts as an array element...... no? (whew, wordy....)

 

Ben, thanks for the reference to your nugget - there's some good information here. 

 

Back to the drawing board!  Thanks all for the responses.

Sr Software and Automation Engineer
Certified LabVIEW Architect
Kod Integrations, LLC
http://www.kodintegrations.com
0 Kudos
Message 6 of 7
(3,086 Views)

> However, that doesn't take away from the fact that I should still be
> able to access the reference of an individual control, embedded in a
> cluster that acts as an array element...... no? (whew, wordy

Well, strickly speaking a "control" inside a cluster inside an array isn't
an individual control.

I don't think there ever was a way to get a reference to an array element's
reference. And the reason is probably because it isn't going to be usefull.

If you still want to try, I'd start with a simple array with simple types in
it... I did, but there is just no way to do it. The strickt typed cluster
doesn't make it easier.

Regards,

Wiebe.


0 Kudos
Message 7 of 7
(3,082 Views)