Sign Up

VIA+ by Shirey Studios - Toolkit for LabVIEW Download

VI Analyzer Plus as Project priority analyzation with tooling for VI and Control editors to generate reports.

D Discussion Watch * 1 ↓162
 logo
Version1.5.4.236
ReleasedJan 26, 2026
Publisher Shirey Studios
License MIT
LabVIEW VersionLabVIEW>=23.1
Operating System Windows
Dependencies oglib_string   oglib_error   mgi_lib_read_write_anything   oglib_variantconfig   mgi_lib_error_handling   oglib_array   oglib_lvdata   mgi_lib_file   mgi_lib_cluster   mgi_lib_string  
Used By shirey_studios_lib_via+_nattify+_quick_drop  
Project links Homepage   Discussion

Description

VIA+ was created with the intent of running VI Analyzer (VIA) as a code review process for developers, team leads, and reviewers. The results of NI VI Analyzer by nature are interactive to find and fix the issues but doesn’t re-analyze easily. VIA+ solves just as interactive as re-running VI Analyzer and using several tools available to ease the pain of documentation and reporting within the LabVIEW Development environment.

VIA+ provides a project based settings to run VI Analyzer at thresholds at High, Normal and Low priorities. Add your own scripting tools to improve your code. Easily import/export your project settings for each repo to easily track your VI Analyzer configurations and files to load. Add several VI Analyzer configurations and view each test, rank and descriptions and report the configurations in MS Excel, MS Word or HTML. Load your source by a lvproj, lvlib, lvlibp, lvclass or by folders or active. Filter your source to include/exclude based on folder names, folder paths or bookmarks. Analyze and view the results per priority and thresholds to export a report in Text, HTML, RSL formats.

VIA+ offers (3) tools to assist in documentation for your VIs, Controls and generating reports.
- Report Descriptions Generate a comprehensive MS Word report of all your LabVIEW documentation, including descriptions and tip strips, into a Developer, Product, or Custom MS Word report using your template (*.dotx).
- Edit VI Descriptions Edit and review all VI and TypeDef descriptions in a single window while simultaneously viewing the front panel, block diagram, and connector pane help.
- Edit Control Descriptions Edit and review all TypeDef and VI controls and indicators, including nested objects, with comprehensive filtering options for visibility, TypeDef/Strict/Not, and empty descriptions or tip strips.

VIA+ also offers scripting to automate lengthy editing tasks, update and generate new code. Use the built in scripts or add your own using the template in the Project Settings.
Scripts:
- Apply_Password Apply a Password to all LabVIEW source elements as locked or unlock with an empty password. If any VI is modified, changes are automatically saved to the VI (if selected).
- Bookmark Icon Border Frame Search VIs that match a list of Bookmarks. Inspect the matching VI for an Icon Border with the color, and add an Icon Border color if it's missing. Inspect for a block diagram frame matching the color, add a frame at the top left of the bookmark if missing. If any VI is modified, changes are automatically saved to the VI.
- Bookmarks Alter or Remove Fetch or manually enter Bookmarks and the Status value. Choose to alter, update, or remove bookmark tags, status, and text. If any VI is modified, changes are automatically saved to the VI.
- Disable_Auto_Error Auto run on startup! Disable the NI Automatic Error Handling for all LabVIEW Source elements. If any VI is modified, changes are automatically saved to the VI.
- Flags Error In Label Auto run on startup! Any error cluster control on the front panel labeled "error in" is re-labeled as "error in (no error)". If any VI is modified, changes are automatically saved to the VI.
- Flags No Error Label Auto run on startup! Any error cluster control on the front panel labeled "error in (no error)" is re-labeled as "error in". If any VI is modified, changes are automatically saved to the VI.
- Get_Priority and System Save the priority (Background, Normal, Above Normal, High, Time critical, Subroutine), execution system (Same as caller, Standard, Instrument IO, DAQ, Other 1, Other 2, User Interface), Allow Debugging, and VI Path to a CSV file. Useful to modify and Set these settings in another script. If any VI is modified, changes are automatically saved to the VI.
- Move_to_Primary_Monitor Auto run on startup! If a front panel or block diagram is not drawn fully on the primary workspace, move it to 0,0 and keep the size <= to the primary workspace. If any VI is modified, changes are automatically saved to the VI.
- Nattify+ Nattify your code with support for Disable Auto Error Handling, Disable Autogrow, Set FP Color, Undo Icon View, Move Error Wires Back, Standardize Error Labels, Justify Subdiagram Labels, Move Terminal Labels on Side, Make Terminal Labels Transparent, Arrange FP, Separate compiled code from source file, Arrange BD, BD Cleanup, Sort Events, Align Terminals, Move FP to Primary Monitor, Move BD to Primary Monitor, Remove lvclass from Localized Name, Set String Constant Display Style, Show Constant Labels. If any VI is modified, changes are automatically saved to the VI.
- Output CallLibrary Function Search the Block Diagram for CallLibraryNodes and add a string constant #CLNodeFunctionName containing all Function Names or just the VI Name. Wire it to an output string and add it to the first open bottom right connector pane for an output. Only perform this action if no match is found on the string constant label #CLNodeFunctionName. Option to remove the selection, cleanup BD only if adding content. If any VI is modified, changes are automatically saved to the VI.
- Property Node Inspector and Repair Inspect all property nodes with a matching option. Change the node to Ignore Errors Inside Node and save the VI. Search Classes, Controls or All Property Node Types. If any VI is modified, changes are automatically saved to the VI.
- Remove lvclass from Localized Name Remove .lvclass from each class' localized name. If any VI is modified, changes are automatically saved to the VI.
- Report VI Interactive Analyze the VIs for an interactive report. Click the header to sort, or left-click to open the VI. Export and modify the settings to Import and apply the settings. View the Key to review Enum values to change any column data. Review failures of configured alarms, and if any reentrant VIs do not have all subvis as reentrant. Easily edit the VI settings directly. If any VI is modified, changes are automatically saved to the VI.
- Report_Globals Auto run on startup! Report all NI Global file types, which global function is called, read/write, and where each instance is used for all LabVIEW source elements.
- Report_Libraries Report all libraries & classes: name, version, description, friend, and path for all LabVIEW source elements. Optionally keep the NI Libraries.
- Review Events Identifies all event structures in the input VI(s) and provides a UI for reviewing each frame to inspect handling.
- Review Fonts Generate a list of all fonts and sizes used in all VIs. Inspect and review which controls or indicators may not match your font standards.
- Review Loop Conditionals Identifies all loop conditionals and provides a review tool for the Block Diagram inspection and highlight.
- Set Allow Debugging Set to allow debugging or not for all LabVIEW Source elements. If any VI is modified, changes are automatically saved to the VI.
- Set Auto Grow Off Auto run on startup! Turn off Auto Grow on all structures on the block diagram. If any VI is modified, changes are automatically saved to the VI.
- Set BD Terminal Icon View Set all Block Diagram terminals to either Icon View or Datatype View. If any VI is modified, changes are automatically saved to the VI.
- Set CallLibrary Threading Set reentrancy for a CallLibrary node to run in the UI thread or any thread. Export all CallLibrary node's current settings. Alter the settings to set the threading per node and Import the Settings, and apply. If any VI is modified, changes are automatically saved to the VI.
- Set FP BD Grid Size Set the Front Panel Grid Size and the Block Diagram Grid Size to the settings for all VIs. Counts all VIs updated if the settings were altered. If any VI is modified, changes are automatically saved to the VI.
- Set Separated Compiled Code Auto run on startup! Separate Compiled Code for all LabVIEW Source elements. If any VI is modified, changes are automatically saved to the VI.
- Set String Constant Display Style Set string constants to indicate their display style if set to a specific style or if the constant only includes whitespace. If any VI is modified, changes are automatically saved to the VI.
- Set_Priority and System Set priority (Background, Normal, Above Normal, High, Time critical, Subroutine) and execution system (Same as caller, Standard, Instrument IO, DAQ, Other 1, Other 2, User Interface) of all loaded items to a new priority and execution system. If any VI is modified, changes are automatically saved to the VI.
- Set_Priority Set priority of all loaded items to a new priority: Background, Normal, Above Normal, High, Time critical, Subroutine. If any VI is modified, changes are automatically saved to the VI.
- Set_Reentrant Set reentrancy to Shared Clone, Preallocated Clone, or Non-reentrant execution. If any VI is modified, changes are automatically saved to the VI.
- Show Constant Labels Show all BD constant labels and ensure they are not empty. If any VI is modified, changes are automatically saved to the VI.
- Unset Separated Compiled Code Auto run on startup! Turn off the Separate Compiled Code for all LabVIEW Source elements. If any VI is modified, changes are automatically saved to the VI.

Release Notes

1.5.4.236 (Jan 26, 2026)

Script Improvements:
- Support Nattify+ Quick Drop

shireystudios was a contributor to this release


Download Package

Versions
All Contributors

  Post an Idea   Post a Resource

Recent Posts