Ton Plomp Posted April 16, 2008 Report Share Posted April 16, 2008 It would be nice if I could set the conditional disable settings in the build settings. This would allow for multiple build settings that could incorporate into a single project file. I have the feeling this can be done with separate lvproj files but that feels like a workaround. Any thoughts on this? Ton Quote Link to comment
ASTDan Posted April 16, 2008 Report Share Posted April 16, 2008 I think it would be cool if the disable structure had an input like the Case structure i.e. boolean, enum, string, etc Dan Quote Link to comment
Ton Plomp Posted April 16, 2008 Author Report Share Posted April 16, 2008 QUOTE (ASTDan @ Apr 15 2008, 01:55 PM) I think it would be cool if the disable structure had an input like the Case structure i.e. boolean, enum, string, etc What kind of usage does this have over the current disable structure? Ton Quote Link to comment
ASTDan Posted April 16, 2008 Report Share Posted April 16, 2008 The advantage would be I could understand how it works. I haven't been able to understand the conditional disable strucure. Granted it doesn't take much to confuse me. Dan Quote Link to comment
JDave Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (tcplomp @ Apr 15 2008, 04:39 AM) It would be nice if I could set the conditional disable settings in the build settings.This would allow for multiple build settings that could incorporate into a single project file. I have the feeling this can be done with separate lvproj files but that feels like a workaround. Any thoughts on this? Ton I also have wanted this, and made a feature request for it a while ago. Seems like a pretty reasonable request. Conditional disable flags affect the entire project, and the build settings build the project into an executable. Quote Link to comment
Yair Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (ASTDan @ Apr 15 2008, 04:42 PM) The advantage would be I could understand how it works. I haven't been able to understand the conditional disable strucure. You set symbols for the entire project (by right clicking on the project in the project tree, if memory serves) and then you choose one of the symbols to switch all the structures throughout the project. I assume the help for the structure covers this in more detail. Quote Link to comment
ASTDan Posted April 16, 2008 Report Share Posted April 16, 2008 Wow I never realized it was tied to the project. No wonder I missed that. Thanks! Learn something new every day Quote Link to comment
David Wisti Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (Yen @ Apr 15 2008, 11:49 AM) You set symbols for the entire project (by right clicking on the project in the project tree, if memory serves) and then you choose one of the symbols to switch all the structures throughout the project. I assume the help for the structure covers this in more detail. Conditional Disable are project and target based. So you could have symbols just for specific targets or global symbols that effect all targets. Quote Link to comment
orko Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (JDave @ Apr 15 2008, 08:56 AM) I also have wanted this, and made a feature request for it a while ago. Seems like a pretty reasonable request. Conditional disable flags affect the entire project, and the build settings build the project into an executable. I agree :thumbup: So far I've just been having to remember to set the right conditional variables before I build (and make sure everyone els knows about them...) Setting this up as two builds inside the project would be cool... Quote Link to comment
Doon Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (orko @ Apr 15 2008, 11:57 AM) Setting this up as two builds inside the project would be cool... Ditto, One case in point, I have two target test stands for automated testing as part of product delivery. One has additional functionality (mine) and the other has non-disimilar equipment performing the same task (theirs). In the mid-level equipment code, I have added Conditional Disables to handle the differences between the two test stands. Countless times, I went to deliver new code, only to realize that I forgot to change the Conditional Symbol. Having the Build Spec's handle this would certainly make multi-targetting much more streamlined. Unfortunately, I still follow the practice of Remove Symbol, Add Symbol. Quote Link to comment
jdunham Posted April 16, 2008 Report Share Posted April 16, 2008 QUOTE (Doon @ Apr 15 2008, 12:14 PM) Ditto,One case in point, I have two target test stands for automated testing as part of product delivery. One has additional functionality (mine) and the other has non-disimilar equipment performing the same task (theirs). In the mid-level equipment code, I have added Conditional Disables to handle the differences between the two test stands. Countless times, I went to deliver new code, only to realize that I forgot to change the Conditional Symbol. Having the Build Spec's handle this would certainly make multi-targetting much more streamlined. Unfortunately, I still follow the practice of Remove Symbol, Add Symbol. I totally agree. We are actually reading the lvproj file (it's XML) and modifying the Conditional Disable symbols programmatically and then reloading the project so that we can build multiple flavors of our product. It's not terribly hard, but there should most certainly be VI server access to the symbols. Quote Link to comment
Ton Plomp Posted April 17, 2008 Author Report Share Posted April 17, 2008 QUOTE (Doon @ Apr 15 2008, 08:14 PM) Unfortunately, I still follow the practice of Remove Symbol, Add Symbol. You can just use a Symbol Setup with a string mine and theirs. In your code you use the same symbols with these values. Or just use mine and default. QUOTE (jdunham @ Apr 15 2008, 10:02 PM) ... there should most certainly be VI server access to the symbols. Well I don't think that's necessary, changing the Conditional Disable Symbol forces a recompile of the code. That means all of the code inside the project shouldn't be running, which can be a challenging task. The possibility to select another lvproj for a build is probably intended to cover this gap. But an additional page in the build settings is preferable. This item shows a problem in my developing workflow. I considered the lvrproj file as code independent. But now it seems like it is tied to the code as well, and should be checked in and out. Ton Quote Link to comment
Doon Posted April 17, 2008 Report Share Posted April 17, 2008 QUOTE (tcplomp @ Apr 15 2008, 10:47 PM) You can just use a Symbol Setup with a string mine and theirs. In your code you use the same symbols with these values.Or just use mine and default. Maybe I'm doing this wrong, but when I switch between conditionals, I right-click the project in the "Project Explorer" window and select "Properties..." In the "Conditional Disable Symbols" section, the only options I see are "Add" and "Remove Selected Items". So far, my only solution is to first remove my symbol, then re-Add it with a new value. Is there a cleaner way to change Symbols in a project? That would surely make my day. Cheers, -H Quote Link to comment
orko Posted April 17, 2008 Report Share Posted April 17, 2008 QUOTE (Doon @ Apr 16 2008, 07:48 AM) So far, my only solution is to first remove my symbol, then re-Add it with a new value. I seem to remember this with LV8.0. Starting with LV8.2 (I think) you can double-click on the value you want to change in the list and edit it straight away. Quote Link to comment
Doon Posted April 17, 2008 Report Share Posted April 17, 2008 QUOTE (orko @ Apr 16 2008, 08:18 AM) I seem to remember this with LV8.0. Starting with LV8.2 (I think) you can double-click on the value you want to change in the list and edit it straight away. Even More reason for me to push (read: beg) for an upgrade. Thanks. Quote Link to comment
Götz Becker Posted May 7, 2008 Report Share Posted May 7, 2008 QUOTE (Doon @ Apr 16 2008, 05:58 PM) Even More reason for me to push (read: beg) for an upgrade. Thanks. After I today nearly released a build with some parts configured by conditional symbols as simulated, I am too begging for this to be included soon. Reducing the overhead of things to remember when the customer is standing in your neck asking if the app is ready yet (answer: no not yet but soon...) would be great! Quote Link to comment
Ton Plomp Posted March 8, 2010 Author Report Share Posted March 8, 2010 An official request is made here. Ton Quote Link to comment
mje Posted March 8, 2010 Report Share Posted March 8, 2010 I've been wanting this for ages. Well, at least as long as the structure has been around. I'd also like the option to allow the recompilation due to symbols to be done on the fly through a temporary file. If this is done at the application builder level, I don't see why the original VI needs to be modified due to a symbol definition. I dislike how some of my reuse libraries are always getting changed due to symbol redefinitions across projects...leave the original VIs alone! Since we're never going to get a separation of source from binaries in LV, this would be a nice way of handling compilation differences at the project level without modifying the source (kind of)... Quote Link to comment
Ton Plomp Posted March 9, 2010 Author Report Share Posted March 9, 2010 .... Since we're never going to get a separation of source from binaries in LV, You could vote for this idea. Ton Quote Link to comment
gmart Posted March 9, 2010 Report Share Posted March 9, 2010 Have you seen this? - Darren's Weekly Nugget 11/09/2009 Quote Link to comment
Ton Plomp Posted March 10, 2010 Author Report Share Posted March 10, 2010 Have you seen this? - Darren's Weekly Nugget 11/09/2009 Yes but that is just part of the request.... Ton Quote Link to comment
GoGators Posted March 11, 2010 Report Share Posted March 11, 2010 On top of that I was wondering if any has run into the problem of conditional disable structures influencing dataflow. Essentially in other languages when you conditionally disable something (like in C with #if) the code is entirely taken out of the build. In LabVIEW I have seen that the code inside is not built in, but the structure influences dataflow (i.e. structure doesn't execute until all inputs to the structure is ready). If it is not a large enough problem then maybe I won't make a suggestion. No need for Idea Overload. Quote Link to comment
crelf Posted March 11, 2010 Report Share Posted March 11, 2010 In LabVIEW I have seen that the code inside is not built in, but the structure influences dataflow (i.e. structure doesn't execute until all inputs to the structure is ready). That's a really good observation, although I'm not sure how NI would implmement different behaviour... Quote Link to comment
crelf Posted March 11, 2010 Report Share Posted March 11, 2010 It would be nice if I could set the conditional disable settings in the build settings. I so totally came up against this issue today - I have an app that can be built with different security modules in it (DSC, TestStand, Active Directory, etc), some of which require different run time licenses (eg: if a project is going to use the TestStand security module, I don't want the DSC code in the build, otherwise it'll get upset when it runs and doesn't find a DSC license). Having different build specs with conditional disable strucutres would fix this issue. Quote Link to comment
MatthewHarrison Posted May 4, 2010 Report Share Posted May 4, 2010 I so totally came up against this issue today - I have an app that can be built with different security modules in it (DSC, TestStand, Active Directory, etc), some of which require different run time licenses (eg: if a project is going to use the TestStand security module, I don't want the DSC code in the build, otherwise it'll get upset when it runs and doesn't find a DSC license). Having different build specs with conditional disable strucutres would fix this issue. I've come across a similar issue, and I was wondering if you found a solution to the problem of programmatically setting the conditional disable symbols. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.