-
Posts
2,397 -
Joined
-
Last visited
-
Days Won
66
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by jgcode
-
-
I am using Google Chrome and having the same issue. I can't open the full editor. If remember correctly I could just hover over edit post and it gave me the option of quick edit or full edit (or similar) I really liked that. Non premium members have a time limit to edit posts, but it would be nice if this worked. Just to confirm - the Use Full Editor button has no function:
-
Hi san_gr and welcome to the forums! I could open your VI just fine in LabVIEW 2009. The code contains a mathscript node that was empty so I removed it and saved for previous version from LabVIEW2009 to LabVIEW8.2 as you have not stated what version of LabVIEW you where using. Are you able to open the attached? If so it may isolate the issue somewhat. elevator6.vi [LabVIEW8.2] <edit> Under your aviator I see LabVIEW8.6, so I guess this answers one of my questions </edit>
-
Attached is a hook for a LVOOP Custom User Scripting For New MultiDim Array Element Accessor VI. See here for installation details. Note: The control needs to sit in the same folder as the VI. You will need to also install my Custom User Scripting For New Simple Accessor VI. Enjoy! Custom User Scripting For New MultiDim Array Element Accessor VI.viIndicesArray.ctl [LabVIEW2009] PS: See here for an example LVOOP Custom User Scripting For New Array Element Accessor VI.
-
I don't know if there is a way around this? If LabVIEW itself it blocking execution of the second thread running (or the UI updating) then I don't know if there is a workaround. Thats a cool idea to run the installer - (assuming its an NI Installer you are using??) are you able to somehow respond to the prompts so it can install automatically - that would be cool! Which ini files are you talking about? Are these the "settings" of the application that you own? Or the default .ini file created by LabVIEW? Look forward to seeing it Monday
-
LVOOP Custom User Scripting For New Simple Accessor VI
jgcode replied to jgcode's topic in Object-Oriented Programming
Great to hear you like it! You're welcome!! -
Great point, thats why I think Int I is a good idea as it expresses how NI would like you to build the app. But it great to hear you didn't need it to pass! That's cool.
-
Hi Jim Yes, it was a great blog post! It's 2am here, but I will have a look at this tomorrow. I have just upgraded to Windows 7, so I don't have everything installed yet. But I will try to put on 8.6.1 if I have the time (delayed pay-per-view tomorrow) . It should back save ok as the same XML tags are used in 8.6 and LabVIEW 2009. Don't know about 8.5 and I know 8.2 is different. As you can see from the block diagram, the timer just runs in another thread however, using the NI Build VIs the updating gets blocked (maybe the build runs as a high priority ?? - someone from NI may be able to comment). So it periodically updates. Thats ok cause the idea is I can leave it running and go away from the desk, I really just want to find the total duration. What else did you add? Are you able to share code or any screenshots? Cheers JG
-
I was going to point you to this thread too, but it seems you started that one as well
-
Imitation is the sincerest form of flattery - Charles Caleb Colton (1780-1832) Firstly I would like to say that I did not originate this idea, I first saw it posted on the JKI Blog by Justin Goeres. However, no code was posted, so I took what was there (GUI screenshot, BD screenshot, explanations etc..), said thank you, and came up with this. Of course I read Joel on Software and other books on (java) build scripts and seen other posts discussing LabVIEW build scripts etc.. but I wanted to make the above point up front as it is going to be very similar, but it was a great blog post about a great idea with a great example and I decided to implement it, use it and share it - with LAVA. So I hope its all ok. Thanks for listening. Below are some notes on the code: Since I was going to make this a template (.vit) a put a bit of extra GUI code in it. I wanted a clear visual sign when I came back to my desk that this thing had worked. Or something had happened to make it fail. I also wanted to know the time it takes to build the project. With classes and libraries the build time can blow out from seconds to minutes (over 10) for some projects. Although 2009 seems much faster than 8.6. So I added another thread for a simple timer. This script has support for 9.x builds. I found straight away I would get errors if my src code and dist folder where deeply nested in the folder hierarchy on the OS. 9.x solved the ugly build problem of files outside the exe, but it left me with a sour taste as my build frequently stopped due to error. This script solves the problem by transparently build in other folder (e.g. D:\dist) then coping these back to the Project. The only catch is (because reading the file XML tags in the project looks daunting) the 9.x Root path must match the start of the path in the build spec. Because I use the same location D:\dist I add a Project folder for each Project e.g. D:\dist\Project. the all the builds get located under here e.g. D:\dist\Project\application or D:\dist\Project\installer etc.. The architecture of the template is implemented using the JKI State Machine. Which is great for building GUI's quickly. If you want to copy then edit this build for other projects (I had it as a .vit) then you will need to update the Project Details. The folder structure is hard-coded as this is a standard I use. All folders are relative to the project though. And there are some example files copied to the zip (for the creation of a CD). I use NI's UTF a lot and this can run tests in the Project automatically. It can even decide to kill the build if tests fail. It is disabled in the distribution in case it is not installed. Other The application build Version can be auto-incremented and the installer Version is matched to it. Support code used can be found in ..\lib. The subVIs are from libraries I use. You may find some reuse options in there. I have been playing around with an AUTO feature that essentially defines constants for the GUI and therefore this script could be called by something else (e.g. as subVI) for an automated build (e.g. nightly). I am looking doing the following in the future Converting the .zip to an ISO so it's ready to burn; Archiving zip if its a release to server, SCC actions, This code is a start and I would love to see what other people are doing and add to this over time. Hope you enjoy it.
-
Version 1.1.0
1,802 downloads
Build Script v1.1.0 Copyright © 2009, Jonathon Green; JGCODE All rights reserved. Author: Jonathon Green LAVA Name: jgcode Contact Info: Contact via PM on lavag.org LabVIEW Versions: LabVIEW 8.6 LabVIEW 2009 Dependencies: jki_lib_state_machine >= 2.0.0 jki_rsc_toolkits_palette >= 1.1 oglib_array >= 2.0 oglib_appcontrol >= 2.0 ogrsc_dynamicpalette >= 0.2 oglib_error >= 2.0 oglib_file >= 2.5 Unit Test Framework (optional) Description: Contains a build script for a LabVIEW Project. Use a build script in your development to automate the task of, and avoid errors when, creating deliverables. A sample project is included that creates an application, installer then archive (.zip) for a project. This build script supports the new 9.x build format by building the specs in a high level temp folder (e.g. C:\dist) to minimise errors occurring from the OS exceeding maximum number of characters in path. NI's Unit Test Framework (UTF) is supported or code can be added for other Unit Test APIs (see Unit Test Framwork.png for demo code). Installation and instructions: The dist folder contains build.vit and a library (.llb) of support code. See Examples section on how to use code. Examples: 1. Open example\Project.lvprj 2. Open and run build.vi, VI should complete execution with no errors 3. Once build script has completed explore example\dist to view all builds (application, installer, zip) 4. Unzip zip folder and install application 5. Run the application 6. "Build Works!" dialog should appear to indicate sucessful build 7. Reuse script a. Use build.vit as starting template for project b. Edit the project details on the block diagram to match to new project Known Issues: No Known Issues Acknowledgements: Justin Goeres (JKI) Joel Spolsky JKI (JKI State Machine) OpenG ICON Technologies Version History (Changelist): 1.1.0 2009 11 15 [Fix] Code saved to LabVIEW 8.6 on request from LAVA member. Unit Test Framework VIs were removed due to build issue. [Fix] SubVIs added to a .lvlib within a .llb. 1.0.0 2009 11 14 [Feature] Initial release of the code (LabVIEW 2009). License: BSD Support: If you have any problems with this code or want to suggest features: please go to lavag.org and Navigate to LAVA > Resources > Code Repository (Certified) and search for the Build Script support page. Distribution: This code was downloaded from the LAVA Code Repository found at lavag.org -
Name: Build Script Submitter: jgcode Submitted: 13 Nov 2009 File Updated: 03 Jan 2011 Category: *Uncertified* LabVIEW Version: 8.6 License Type: BSD (Most common) Build Script v1.1.0 Copyright © 2009, Jonathon Green; JGCODE All rights reserved. Author: Jonathon Green LAVA Name: jgcode Contact Info: Contact via PM on lavag.org LabVIEW Versions: LabVIEW 8.6 LabVIEW 2009 Dependencies: jki_lib_state_machine >= 2.0.0 jki_rsc_toolkits_palette >= 1.1 oglib_array >= 2.0 oglib_appcontrol >= 2.0 ogrsc_dynamicpalette >= 0.2 oglib_error >= 2.0 oglib_file >= 2.5 Unit Test Framework (optional) Description: Contains a build script for a LabVIEW Project. Use a build script in your development to automate the task of, and avoid errors when, creating deliverables. A sample project is included that creates an application, installer then archive (.zip) for a project. This build script supports the new 9.x build format by building the specs in a high level temp folder (e.g. C:\dist) to minimise errors occurring from the OS exceeding maximum number of characters in path. NI's Unit Test Framework (UTF) is supported or code can be added for other Unit Test APIs (see Unit Test Framwork.png for demo code). Installation and instructions: The dist folder contains build.vit and a library (.llb) of support code. See Examples section on how to use code. Examples: 1. Open example\Project.lvprj 2. Open and run build.vi, VI should complete execution with no errors 3. Once build script has completed explore example\dist to view all builds (application, installer, zip) 4. Unzip zip folder and install application 5. Run the application 6. "Build Works!" dialog should appear to indicate sucessful build 7. Reuse script a. Use build.vit as starting template for project b. Edit the project details on the block diagram to match to new project Known Issues: No Known Issues Acknowledgements: Justin Goeres (JKI) Joel Spolsky JKI (JKI State Machine) OpenG ICON Technologies Version History (Changelist): 1.1.0 2009 11 15 [Fix] Code saved to LabVIEW 8.6 on request from LAVA member. Unit Test Framework VIs were removed due to build issue. [Fix] SubVIs added to a .lvlib within a .llb. 1.0.0 2009 11 14 [Feature] Initial release of the code (LabVIEW 2009). License: BSD Support: If you have any problems with this code or want to suggest features: please go to lavag.org and Navigate to LAVA > Resources > Code Repository (Certified) and search for the Build Script support page. Distribution: This code was downloaded from the LAVA Code Repository found at lavag.org Click here to download this file
-
Yes that is correct. Of course any learning is good, but LabVIEW: Connectivity does not, in any way, relate to helping with passing the CLD, IMO. If primary objective is to pass the CLD, then you can skip LabVIEW: Connectivity.
-
Attached is the template I use for Quick Drop plugins. It is a simple update of <LabVIEW 2009>\resource\dialog\QuickDrop\QuickDrop Plugin Template.vi to include setting up the Undo Stack. Quick Drop Plugin.vit [LabVIEW2009]
-
This Quick Drop Plugin will rename the owning Data Member VI's LVOOP Front Panel Objects' Labels to <class name> In for the control and <class name> Out for the indicator (which is similar to what the defaults are now in LV2009). This was one of the first things I did after the Quick Drop Plugin was released and I use it all the time, so I thought others may use it. I use it when I change the name of a Class or when I clone a VI manually. Instructions: On a Data Member VI press [Ctrl + Space] to bring up the QD Dialog then press [Ctrl + Z]. If you press [Ctrl + Shift + Z] it will update the all Data Member VIs in that Class. I use Shift when I Save As... a Class so I don't have to do each one. I would be interested to know if it can be optimised. It is fast when the Class Library is only open but in a Project it is quite slow when it does the entire Class. Also the Undo Stack is supported however, when you rename across a Class (multiple VIs) it only works for the VI you QD on. Anyone know a work around? icon_qdp_rename_lvoop_labels-1.0-1.ogp [LabVIEW2009]
-
LVOOP Custom User Scripting For New Simple Accessor VI
jgcode replied to jgcode's topic in Object-Oriented Programming
I have updated the Hook. Changelist 1.1.0-1 2009 11 13 - New (Free Label): Added a free label and space for a comment in the case structure. Normally I don't need one for basic get/set but it is handy to have one their for the future. Custom User Scripting For New Simple Accessor VI.vi [LabVIEW2009] -
Well technically only Intermediate I (now Core 3). Here is a CLD blog entry by Darren too that outlines some great stuff on prep for the exam. Good luck too!
-
In response to this topic, here is some scripting code I just wrote for the LVOOP Simple Accessor Hook. It formats the Data Member VI(s) to my style as follows: - Bold Control inputs (which are required by default in 2009 which is great) - I like to match the FP to the VIs help window. - Aligns all labels on the BD: Controls to the left, Indicators to the right using one of Darren's Quick Drop plugins. - Realigns controls closer to the case structure to neaten it up. I have been meaning to do this for a while. Simple bit of code, but saves me the redundancy of repeating doing it for each member VI! Maybe someone else can get some use out of it or use it as an example. Also attached is my CLSUIP_LocalizedStrings VI. Anyone have any other code for LVOOP plugins that they would wish to share? Cheers JG Custom User Scripting For New Simple Accessor VI.vi [LabVIEW 2009] CLSUIP_LocalizedStrings.vi [LabVIEW 2009]
-
I always like to know how to do things differently/better, but I had to check on this one! Thanks for clearing that up!
-
Given that two high level posters have said this.... Am I missing something here? Isn't the State.ctl designed to be use for all your persistent and non-persistent data? Aka the "Display State" not the "Container State" ??
-
I am sure AQ meant the Display State? Anyways, here are some quick examples: You can use the Init Ability to reload the state from disk and set it back into the Display State. You can also use Version Control to handle older States. You can use the optional Convert State for Save Ability to remove non-persistent data e.g. references, large data sets.
-
A fellow Aussie!! - Howdy mate!!
-
Hi Phil I posted the same question recently. It does work which is great news. Cheers JG