{"id":3284,"date":"2013-11-22T20:52:50","date_gmt":"2013-11-23T03:52:50","guid":{"rendered":"http:\/\/www.themoehrings.com\/?p=3284"},"modified":"2026-03-03T09:05:56","modified_gmt":"2026-03-03T15:05:56","slug":"creating-a-project-wizard","status":"publish","type":"post","link":"https:\/\/www.themoehrings.com\/index.php\/2013\/11\/creating-a-project-wizard","title":{"rendered":"Creating a Project Wizard"},"content":{"rendered":"<p>Providing your development team with easy to use templates is a great way to reduce development time, reduce the number of bugs, and increase commonality between developers. With modern LabVIEW design patterns and frameworks, templates typically require more than just .vits. Most complex templates can be time consuming and error prone to instantiate correctly. The Create Project Wizard introduced with LabVIEW 2012 allows you to plug in your organization&#8217;s templates and provides hooks to execute your own custom automation (possibly including VI Scripting).<\/p>\n<p>This presentation contains code snippets of how I acheived the automation necessary to greatly simplify the instantiation of some of our templates, and provides a quick introduction to VI Scripting to empower further automation. Using the information I have provided I hope to assist others who are interested in benefiting from the convenience and repeatability obtained by plugging your templates into the Create Project Wizard.<\/p>\n<p>https:\/\/decibel.ni.com\/content\/docs\/DOC-33221<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Providing your development team with easy to use templates is a great way to reduce development time, reduce the number of bugs, and increase commonality between developers. With modern LabVIEW design patterns and frameworks, templates typically require more than just .vits. Most complex templates can be time consuming and error prone to instantiate correctly. The&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[15,212],"tags":[449],"class_list":["post-3284","post","type-post","status-publish","format-standard","hentry","category-labview","category-nate-2","tag-project-wizard","wpcat-15-id","wpcat-212-id"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p504YJ-QY","jetpack-related-posts":[{"id":10578,"url":"https:\/\/www.themoehrings.com\/index.php\/2018\/03\/unit-testing-in-labview","url_meta":{"origin":3284,"position":0},"title":"Unit Testing in LabVIEW","author":"Nate","date":"March 4, 2018","format":false,"excerpt":"Attached are the slides and example project presented by Nate Moehring during the March 1st, 2018 presentation at the LabVIEW Architect Forum on advanced tips and tricks for writing unit tests in LabVIEW.\u00a0 Some justification is provided for unit testing in general, but most of the presentation covers the advanced\u2026","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":954,"url":"https:\/\/www.themoehrings.com\/index.php\/2010\/12\/labview-exceptions-a-paradigm-shift-to-error-handling-in-labview","url_meta":{"origin":3284,"position":1},"title":"LabVIEW Exceptions: a paradigm shift to error handling in LabVIEW","author":"Nate","date":"December 15, 2010","format":false,"excerpt":"This is a presentation I gave to about 40 Certified LabVIEW Architects back in March 2010\u00a0at the\u00a0CLA Summit in Austin, TX.\u00a0 It presents some ideas on ways in which exception handling error techniques that are used in C++ and Java could be incorporated into LabVIEW by National Instruments, and the\u2026","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2719,"url":"https:\/\/www.themoehrings.com\/index.php\/2013\/04\/religious-about-labview","url_meta":{"origin":3284,"position":2},"title":"Religious about LabVIEW","author":"Nate","date":"April 5, 2013","format":false,"excerpt":"I realized this week at the CLA Summit that I am religious about LabVIEW. What does this mean? It means that despite conflicting evidence and statements made by individuals about the strengths and weaknesses of LabVIEW (including key individuals within NI), I have made a choice long ago to have\u2026","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"CLA Logo","src":"https:\/\/i0.wp.com\/www.themoehrings.com\/wp-content\/uploads\/2010\/09\/LabVIEW_Cert_Arch-4c-300x81.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":951,"url":"https:\/\/www.themoehrings.com\/index.php\/2010\/12\/new-blog-category-labview","url_meta":{"origin":3284,"position":3},"title":"New blog category: LabVIEW","author":"Nate","date":"December 15, 2010","format":false,"excerpt":"Future of LabVIEW","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.themoehrings.com\/wp-content\/uploads\/2010\/12\/68a47da47f1a03454aa98e84b3420c5f.jpeg?fit=800%2C200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.themoehrings.com\/wp-content\/uploads\/2010\/12\/68a47da47f1a03454aa98e84b3420c5f.jpeg?fit=800%2C200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.themoehrings.com\/wp-content\/uploads\/2010\/12\/68a47da47f1a03454aa98e84b3420c5f.jpeg?fit=800%2C200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.themoehrings.com\/wp-content\/uploads\/2010\/12\/68a47da47f1a03454aa98e84b3420c5f.jpeg?fit=800%2C200&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":10582,"url":"https:\/\/www.themoehrings.com\/index.php\/2018\/03\/labview-tortoise-or-hare","url_meta":{"origin":3284,"position":4},"title":"LabVIEW &#8211; Tortoise or Hare","author":"Nate","date":"March 4, 2018","format":false,"excerpt":"Attached are the slides presented by Nate Moehring on Sept 19th, 2017 at the Certified LabVIEW Architect Summit on best practices for managing performance risks associated with LabVIEW applications that handle large amounts of data, as well as advanced tips and tricks for writing high performance LabVIEW code. LabVIEW -\u2026","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1896,"url":"https:\/\/www.themoehrings.com\/index.php\/2012\/03\/separating-user-interface-from-implementation-in-labview","url_meta":{"origin":3284,"position":5},"title":"Separating User Interface from Implementation in LabVIEW","author":"Nate","date":"March 18, 2012","format":false,"excerpt":"I had the opportunity to give the opening presentation at the 2012 Certified LabVIEW Architect on March 5th. \u00a0An expanded title \u00a0would be \"A Survey of Tools and Techniques for Separating the User Interface from Business Logic Implementation in LabVIEW\", but that doesn't fit on a slide very well. The\u2026","rel":"","context":"In &quot;LabVIEW&quot;","block_context":{"text":"LabVIEW","link":"https:\/\/www.themoehrings.com\/index.php\/cat\/labview"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/posts\/3284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/comments?post=3284"}],"version-history":[{"count":3,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/posts\/3284\/revisions"}],"predecessor-version":[{"id":35484,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/posts\/3284\/revisions\/35484"}],"wp:attachment":[{"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/media?parent=3284"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/categories?post=3284"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.themoehrings.com\/index.php\/wp-json\/wp\/v2\/tags?post=3284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}