LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Why doesn't LV7 app builder accept VIs without diagrams

When attempting to build an application in LV7, I get error 1073 with a reason given that the sourve VI must have its diagram in order to be included in an application. This has never happened before in LV6.1.
0 Kudos
Message 1 of 10
(3,763 Views)
Please allow me to re-state your question in a manner that should explain what is happening. I believe you are asking;

Why can't I recompile an application that I do not have the source for?

THe block diagram is the source code. LV7 needs to re-compile the code.

It probaly worked in 6.1 because the VI had already been compiled in 6.1.

You will need the block diagram if want to proceed.

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 2 of 10
(3,763 Views)
I am not attempting to recompile the application. I have already done that prior to attempting to build an executable.

The VIs (without diagrams) have already been compiled in LV7, otherwise LV7 could not even load them. LabVIEW cannot load a VI from a previous version that does not have a diagram.
0 Kudos
Message 3 of 10
(3,762 Views)
I tried to find the a link that would help but I am coming up empty.

There was a recent discussion on info-LabVIEW where I belive Michael Aviolitis (spelling is a guess) had reported a bug that had to do with strict type defs. I seem to remeber him and Jim Kring going back and forth and finally deciding that LV7 decoples typedefs at build time. This de-coupling requires re-compiling. Here is the link to the info-LabVIEW search engine. I only answer Q's here in my spare time so I can not chase this issue any further at this time.

http://www.searchview.net/

Trying to help,

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 4 of 10
(3,762 Views)
While trying to find something else I found this in my in-box

Ah, I see. So now using strict-typedefs is an advanced feature that would cause application building to croak eh? I'm not sure why LV would not know about a typdef that is physically placed on the diagram. Hmm, I wasn't doing anything different than what I was doing in lv6.1 (I naively think). Once again, NI decides to change certain default behaviors and some of us have to pay for it with late nights at the office.

One more thing. I understand the need to add, change, remove certain behaviors in LabVIEW as the new releases evolve. When doing so however can you guys (LV product developers) just do us a favor and add a few checkboxes or radio buttons so we can switch these things on and off? Enough with this *.ini cat and mouse. Good example: Why couldn't the above setting be a checkbox on the appbuilder screen? At the very least it would have made me look and say "hmm, I wonder if this does it?". It would also make me call up the help to cross-reference. You can call it a feature all you want, in my books a hidden ini setting is not a feature, it's a scapegoat.

I would love to rant some more but I'm too tired...

Michael Aivaliotis

> As far as I can see, you have problem similar to one I met during beta
> testing. I reported it to NI staff and got rather good clarification.
> By default, LV7 AppBuilder does not include type definitions and
> unused instances of polymorphic VIs into executable in order to
> decrease size of application. If some VI in your exe calls a VI
> outside (that was not planned by AppBuilder) and uses a type
> definition in order to pass parameters, you will meet such kind of
> problem for sure. I was offered a few ways to solve the problem but I
> really like only one. There is undocumented ini setting that disables
> this new feature. Put the following line to your labview.ini file:
> BldApp.RemovePolyVIsandTypedefs=False
> Then restart LV and rebuild your application.

THe original topic was

RE: lv7 app builder problem

The correct spelling of Mike's name is,

= Michael Aivaliotis =

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 5 of 10
(3,762 Views)
Thanks Ben,

I did see a posting of the fix for the typedef problem. It involved setting a special software switch in the LabVIEW.ini file. It makes me think there might be a similar one for the diagramless VI problem.
0 Kudos
Message 6 of 10
(3,762 Views)
This is what makes suspect there is a re-compile going on.

Please share your finding.

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 7 of 10
(3,762 Views)
Hi Ben,

I have the same problem with strict typedefs. I use strict typedefs to communicate over queues between VIs. Some of the VIs are located in LLBs. In the development environment all is ok but building an application the VIs do not communicate. "Open VI Reference", "exec.state" and "RunVI" do not report any error. My VIs all have their block diagrams.
With the change in the labview.ini file all goes at it should.

Are there any serious programmer who does not use strict typedefs? I think false should be the default and true should be an option and it should be setable in the options dialog.

Waldemar
Waldemar

Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
Don't forget to give Kudos to good answers and/or questions
0 Kudos
Message 8 of 10
(3,762 Views)
I agree!

I will let you add it to the wishlist.

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 9 of 10
(3,762 Views)
Using G Toolbox which does not include diagrams we got into this problem as well; LV7 refusing to build an application without the diagram, even though the VIs are in LV7 format and fully functional in the development environment. Asking George Zou about it he was able to provide a fix given to him by NI Applications Engineer Jeremy Braden:

Add the following line to the labview.ini file:
BldApp.RemovePolyVIsandTypedefs=False

AND replace one of the VIs in the prodisttool.llb (!),with the one I have attached here.

This behaviour cannot possibly have been evaluated well enough by NI, not being able to build applications if there are no diagram causes problems with all third party libraries that do not include
diagrams...and obviously for no reason, LV7 can still perfectly well build applications without the diagram, as it should be. The fix should be sent out as an official update (or has it?).
0 Kudos
Message 10 of 10
(3,762 Views)