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: 

Elapsed Time Express VI Occasionally Missing

I don't have any code that easily reproduces this issue yet, but before I try to dig in and find some useful code I was wondering if anyone else has seen this issue.  LabVIEW 2015 SP1 32-bit Windows 7 x64.

 

I don't use too many express VIs but the Elapsed Time one is simple and pretty handy for stuff like not updating the UI all the time, or only running UI property nodes at a rate that the user can see.  But I've seen on several VIs, on multiple occasions where I will open the VI and it will be broken because a VI is missing.  I will then go to the missing VI and it is the Elasped Time Express VI.  So I will drop a new Elapsed Time Express VI and the missing one changes to be found.  I'll resave it and close it and it seems to be fine for a while.  But after some time the VI will be broken again.  I've resorted to saving a new copy of the express VI as a normal VI, and using that instead in some reuse functions that this keeps happening to.  If a VI has multiple Elapsed Time Express VIs in it all of them will be missing until I drop a new instance of that express VI and then they all get found.

 

So has anyone seen something like this?  Where an Express VI appears missing in a VI?

0 Kudos
Message 1 of 30
(4,435 Views)

I had this happen to me in LV2012 but it didn't occur with only the Elapsed Time VI.  It was every express VI in my program (Build Text, DAQ Assistant, Elapsed Time).  They were all corrupt and oh man, what a hassle to go back and recreate the functionality.  I have, since that day, avoided Express VIs completely.  I'm not sure what caused it but it didn't matter to me at that point because it wasn't going to happen again.  Smiley Wink

aputman
------------------
Heads up! NI has moved LabVIEW to a mandatory SaaS subscription policy, along with a big price increase. Make your voice heard.
0 Kudos
Message 2 of 30
(4,396 Views)

The only time I have ever seen it someone did bad things to

"<LabVIEW 20xx>\vi.lib\express\"  I believe you use some custom X...stuff right?  Is anyone doing bad things to your SCC repo?

 

 


"Should be" isn't "Is" -Jay
0 Kudos
Message 3 of 30
(4,390 Views)

I think the Elapsed Time, and the File Dialog are probably the only ones I use.  I opened a VI recently and 5 Elapsed Time express VIs were missing.  I opened the Error List dialog and it showed Elapsed Time2, Elapsed Time, Elapsed Time4, Elapsed Time5, and Elapsed Time6 subVIs were missing.  I then looked at the expected path of the subVI in the context help window and it lists it as

 

C:\<path to my current VI>.vi\3

 

I then replaced one of the missing instances with the Elapsed Time and all but two missing SubVI errors went away.  I had to replace each of the other two missing ones one by one and then the VI was no longer broken.  The VI was a relatively complex state machine with dynamic events, several nested structures, but was not reentrant or inlined.

0 Kudos
Message 4 of 30
(4,387 Views)

@JÞB wrote:

The only time I have ever seen it someone did bad things to

"<LabVIEW 20xx>\vi.lib\express\"  I believe you use some custom X...stuff right?  Is anyone doing bad things to your SCC repo?  


Never messed with that folder.  I do do some custom X stuff.  Instances of this happening have occurred without SCC being involved.  I will commit some code to SCC and it is fine.  Then I'll lock the code and start editing it.  Then before committing it I will close it and open it again, and it will be broken with missing Elapse Time VIs.  I have times when I'd replace all the missing VIs so the VI wasn't broken, I'd save it, close it, then open the VI and they would be missing again.

0 Kudos
Message 5 of 30
(4,384 Views)

Does the Express VI still disappear when you put it in it's own subVI?

0 Kudos
Message 6 of 30
(4,350 Views)

@Sekine108 wrote:

Does the Express VI still disappear when you put it in it's own subVI?


It's pretty difficult to reproduce so I'm unsure.  Attached is a VI that shows the Express VI as missing.  I took it from a larger VI and then started deleting stuff to make it a minimized example.  If you drop an Elapsed Timer express VI anywhere on the block diagram the missing VI is suddenly found.  Saved in 2015 SP1.

0 Kudos
Message 7 of 30
(4,333 Views)

I see what you mean.  I'm opening it in LV2016.

 

Here are a couple things I see that may help explain it.

 

1.  While the express VI is still missing, I turned on context help and hovered over it to see if it gave a path.  It pointed to the path through the temp file director/Missing Express.vi/0    Seeing something called 0 was very strange.

2.  Once I placed a new express VI, the new one got called Elapsed Time2.  The missing one, was now found just like you said.  But I also noticed it did not have a name at all.  And there was no way I could click into the area where the name would be so I could give it a name.

 

So it seems like somehow it was saved with an empty name.

 

But then I played some more.  I found that the Express VI's you can hide and show the caption, and doing that (once it was present) popped up Elapsed Time2 and was now visible and editable.   There was no label option.   Going back to the original, broken VI.  I could right click and Show label, (there was no "caption" option).  I also unchecked show as icon.  And doing those things caused it to show a 0 as a name.  Then dropping a good Express VI caused it to show up as Elapsed Time2 has a name.

 

So there is some sort of weird mismatch with names and captions and labels going on here.  Saving the "fixed" VI, closing and reopening, it was still in the fixed state.

Message 8 of 30
(4,322 Views)

That's pretty strange. On top of what RavensFan already mentioned, there is a bit more silliness with the missing express VI's label.

Huh.gif

 

I don't know what this means but maybe someone else can make sense of it. I also tried looking for some CARs or other times this has happened through some internal NI searches but had no luck (search terms were just too vague).

Matt J | National Instruments | CLA
Message 9 of 30
(4,315 Views)

Okay some good information guys.  Yeah in 100% of the times I use this Express VI I will drop it down, turn it into an icon (right click view as icon), and then for some stupid reason the caption is turned on, so I then right click Visible Items >> and turn off Caption.  Not sure why anyone using this function wouldn't configure this this way but still.  Also not sure if the issue is somehow related to how I configure it.

 

Yes fixing this is relatively easy, and you can then save the VI and close and re-open and the issue is gone...for now.  After some amount of time and editing it will come back, and sometimes in VIs that I don't edit myself.  I've seen this issue in some of our reuse libraries.  Before building a VIPM package I run a Pre-Build VI that sets things like VI descriptions, locks the block diagram, and disables debugging and automatic error handling among a few other things.  So if I edit a VI in my package I will rebuild the package, which runs this scripting code on all VIs in the package.  Then I'll install the package only to see a VI from it is broken.  I open it and sure enough the Elapsed Time is missing.  I then open the source and the VI is broken there.  So I fix it, then build the package again, and install it and everything is fine...for now.  But as I mentioned before I also see this on VIs I edit which don't get edited by some scripting code.  Can anyone from NI look into this VI and why it thinks the express VI is missing?  I'm thinking of just not using this and replacing all the calls with my own normal VI.

0 Kudos
Message 10 of 30
(4,300 Views)