From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Need help figuring out ListBox Ref producing a 1055 Error out of a property node

Solved!
Go to solution

Hi,

 

My LabVIEW experience is mostly from a semester taken in school. I am an electronic technician  who works for a company that relies heavily on LabVIEW for testing our products. That being said, our LabVIEW developer has recently left the company, and by doing so, has left a huge void. I have always wanted to learn LabVIEW well enough to perhaps become a developer myself one day. I have volunteered to try and help out as best as I can while we search for a replacement. So I have jumped head first into the fire so to speak.

 

I am having an issue with a .vi (see attached) that after feeding another couple of .vis, returns a path for a Python script to run which will download some software into a micro controller. There is a 1055 error being fed into the System Exec.vi, which is killing the path to the Python script, and as such, the script is not executing. I have backtracked to the source of the error, which appears to be a bad reference coming from a ListBox, which is writing to a Property Node.

 

I have attached both the .vi with the error, and those, which contain the ListBox info. I would really appreciate and thoughts / advice from anyone, so I can rebuild the final App and we can get our LabVIEW tester up and running. We are using LabVIEW 2019 on Windows 10 for development, and the latest run-time engine for the builds.

 

I would be happy to provide any other files that one might need to help figure out this issue. 

 

Update ListBox.vi is where the error is being generated AFA I can see.

 

Thanks very much!

 

George

0 Kudos
Message 1 of 26
(2,456 Views)

It looks like that means the object reference is invalid. So, you have to see where the Update ListBox.vi is being called and what is being input as the listbox ref.

0 Kudos
Message 2 of 26
(2,432 Views)

Hi Gregory,

 

Yes, that is what I think is happening. The ListBox is a control, but it's the reference to the ListBox that is the problem correct? The ListBox itslef is just a Type Def containing some menu choices.

 

Thanks again,

 

George

0 Kudos
Message 3 of 26
(2,411 Views)

Hi,

 

Just wondering if anyone else has any idea about the error I'm getting. I am going to try & remove the property node that is using that reference, and re-build then see what happens. The property node outputs a "0", which should be the first item in the List Box correct?

 

Thanks again!

 

George

0 Kudos
Message 4 of 26
(2,307 Views)

Hi gsrokmix,

 

Firstly, thank you for attaching what you thought were the key files - this is much better than a picture or a few screenshots! Unfortunately, it doesn't look like any of these are actually the cause of your error.

 

If you'd like to go through this with members of the forum, could you perhaps zip up the GUI.lvlib and its contents (or anything that appears when you look at the callers of the VIs you attached (or similar VIs, if they exist) - "Add * Listbox Message.vi"?

 

These all use a Listbox Reference as a control, and pass it into the "Update Listbox.vi", which is where the error actually occurs.

As Gregory said, the problem lies in the/a caller - the reference is invalid (probably it is a default value of 0 instead of the valid reference) and so the property node throws the error.

Normally I'd suggest that the only thing you could do which might help with this is making the reference a required input - but I see this is already the case - if you hover over the icon/connector pane in a VI, the bold items are required (and the control reference is bold).

 

As a result, I'd guess (wildly and perhaps wrongly) the most likely culprit is that you have a While loop somewhere, probably containing an Event Structure, and that the control ref is passed into the Event Structure and around the loop in a Shift Register, and that somewhere the value is not wired across the Event Structure and so has a little box within a box indicating a default value:

Default value used at right hand side of Event StructureDefault value used at right hand side of Event Structure

This will produce an invalid reference anytime after that case occurs (here timeout, but only used for illustration. Actually, this EvStr would never timeout because the timeout input (hourglass top left) is not wired...)

 

The most common way (I'd guess) that this happens is someone (perhaps you?) adds a new case to increase functionality, and doesn't see the possible problem created.

A good way to avoid this is in cases like this (where the default action should be to not change the value) right click on the tunnel on the right side and choose "Linked Input Tunnel > Create" or "Create & Wire Unwired Cases" and then click on the left side tunnel. This will ensure all future cases of the structure are always wired. You can do the same with Case Structures if that's what you have, but that's less common because the default action there is to forbid unwired default values.

diff.png


GCentral
Message 5 of 26
(2,299 Views)

Hi George, I'm sorry I missed your reply. Yes, you should just need to provide a valid reference. Can you up a level or two and see where the reference is being generated, probably as a constant on the block diagram? It would help, as Christian said, if you can zip up that entire library of code and post it here.

0 Kudos
Message 6 of 26
(2,296 Views)

Hi,

 

If there was a broken .vi somewhere because of an unlinked tunnel or SR, I would think the main .vi would not run correct?

 

Anyway, here is the whole enchilada.

 

Thanks again in advance for all of your help & time!

 

George

0 Kudos
Message 7 of 26
(2,286 Views)

Hi George,

 

I poked through it and I'm stumped! I couldn't find anything related to the ListBox that looked like it would cause issues.

0 Kudos
Message 8 of 26
(2,277 Views)

Hi Greg,

 

Thanks for taking a look. I am very confused as well. The Ref for the ListBox is only feeding a few other .vis. No SRs, just going in through tunnels.

 

If you look at: Source.lvlib ==> Program.lvlib ==> Private ==> Download BGM111.vi, you will see that there is an error passed (originating with the Ref error) which is keeping SystemExec.vi from opening a Py script. This is holding up the test sequence at runtime.

 

Hopefully someone will see the issue & chime in.

 

Thanks so much again for your time.

 

George

0 Kudos
Message 9 of 26
(2,273 Views)

Just to make sure we're on the same page:

You run the executable which has the toplevel VI: Main.vi

You receive the error message: "Error 1055 occurred at Property Node in Update Listbox.vi"

 

Is Main.vi open the whole time? There is not tricky stuff done with its front panel?

0 Kudos
Message 10 of 26
(2,264 Views)