DQMH 3.0 Release Notes

Install package named “Delacor QMH” (delacor_lib_dqmh_toolkit-3.0.0.11.vip)

This package will install/upgrade the following packages and in the case of LabVIEW 2015 and later, will force the mass compile of all VIs in packages:

  • Delacor QMH Palette (delacor_lib_qmh-3.0.0.1.vip)
  • Delacor QMH Project Template (delacor_lib_qmh_project_template-3.0.0.32.vip)
  • Delacor QMH Event Scripter (delacor_lib_delacor_qmh_event_scripter-3.0.0.27.vip)
  • Delacor QMH Thermal Chamber Examples (delacor_lib_qmh_temperature_chamber_examples-3.0.1.5.vip)

Release Notes:

Major:

Project Template:

  1. Added ‘error’ cluster to reply payload in ‘Do Something Else and Wait for Reply’ request in both modules in project template.
  2. Updated Do Something and Wait for Reply message to return an error as part of the reply argument if the ‘Value’ is negative. This demonstrates the use of the ‘error’ value in the reply argument.
  3. Added the ability for a cloneable module to run as a singleton.
    • This required to update the DQMH Palette to update the context help for “Module ID” properties of the Cloneable Admin class to mention the special meaning of a Clone I of “0”when a cloneable module is running as a singleton.

DQMH Event Scripter:

  1. Added support for creating new DQMH modules from templates other than the basic singleton and cloneable templates. Developers can provide their own DQMH templates to their [LabVIEW Data] folder. This will cause the “Add New DQMH Module” utility to show their templates.
  2. Added support in scripting code to create new Request and Wait for Reply messages with the ‘error’ parameter in addition to the ‘Boolean (replace me)’ default parameter. We found that we needed this the majority of the time and it is better to automate its creation than expect developers to implement it based on DQMH best practices. This change also includes the scripting of a Merge Errors to help users remember to include any errors generated by their own code in the MHL error stream.
  3. Added a ‘Rename DQMH Event’ utility for renaming existing DQMH events.
  4. Automatically configure event structures in the Main VI and tester VI to handle newly scripted events (LabVIEW 2016 and later). The subdiagram labels of new request EHL and MHL frames are also populated with descriptive text.
  5. Added Help buttons to all the dialogs launched from the Tools > Delacor > DQMH menu.

New Features from Delacor Toolkits group at ni.com:

DQMH Scripter:

  1. “Create New DQMH Event” utility now shows a dialog when the developer tries to create a new event but the arguments window is empty. Ask if they want to proceed with an unused Boolean as the only argument in the cluster. Also provides a ‘do not show this again’ checkbox in the dialog.
  2. If any DQMH scripting tool is launched from the menu of a VI, that VI’s project will be considered the active project for the scripting tool. The previous behavior was that the last active project (i.e. the last project window that was clicked on) would be considered the active project for the scripting tool, regardless of which VI’s menu bar the scripting tool was launched from.
  3. A ‘to do’ comment is added to the MHL case corresponding to a removed DQMH event, suggesting that this diagram could potentially be removed if it is no longer used.

Minor New Features:

Project Template:

  1. Changed the error handling in both testers to always run the Stop Module.vi after the event loop, even if an error occurs.
  2. Added argument clusters to Show Panel and Hide Panel requests to make them consistent with the rest of the event arguments.
  3. Added code to ‘Show Diagram’ messages in singleton and cloneable modules to not show the diagram if the main VI is password-protected and the password is not in the cache.
  4. Clear errors before ‘Unset Busy.vi’ calls in the Application Main VI.
  5. Add local variables to Singleton Tester VI and Application Main VI to update ‘module running’ LED for singleton module with the output of the Obtain Broadcast Events for Registration VI. Added similar local variables for the new ‘module already running’ output of the Start Module VI.
  6. Added ‘Subscribe to DQMH Newsletter’ menu option under Help > Delacor.
  7. Added ‘Module Was Already Running?’ output from singleton’s Start Module VI.
  8. Changed help format to use chm file when offline and html version of chm when internet access is detected.
  9. Added help buttons to all productivity tools wizards.
  10. Reply received LED in both testers was returning true when there was an error.
  11. Set the front panel to go to origin when the DQMH module initializes.
  12. Fixed a bug that was no longer detecting that an lvlib was a DQMH module. Added to the Validate DQMH Module documentation section a description of what makes the scripting tools recognize an lvlib as a DQMH module.

DQMH Palette:

  1. Updated the DQMH Palette to update the context help for “Module ID” properties of the Cloneable Admin class to mention the special meaning of a Clone I of “0”when a cloneable module is running as a singleton.

Issues addressed:

DQMH Scripter:

  1. Added a Validate Module test and fixer for the ‘Show Diagram’ code that checks the password status of the main VI before showing its diagram.
  2. Added a Validate Module test and fixer for improving the error handling in the tester VI to prevent an error condition from leaving the module main VI running in a “zombie” state.
  3. Validate DQMH Module tool now pops up a dialog asking you to select a DQMH library from the active project (using the same mechanism used by the Create New Event dialog). It then uses the library reference in the proper application instances of the project to do the validating and the fixing. This should solve the issues we had related to the library being validated in the wrong app instance.
  4. “Create New DQMH Event” utility now pops up a dialog if developer tries to specify the same name for the request and the broadcast for a Round Trip event. There is also additional validation code to make sure the specified event name (for all 4 event types) isn’t the same as an event that already exists in the project.
  5. The Validate Module ‘fixer’ for upgrading to DQMH 2.1 will now create the Get Module Main VI Information VI with the user’s Tools > Options settings respected, like icon terminals, source only, auto error handling, etc.

DQMH Thermal Chamber Examples

Updated examples to DQMH 3.0:

  1. Added arguments to Show Panel / Hide Panel requests.
  2. Added “run as a singleton” functionality to cloneable DUT module, and used this functionality in the single DUT example.
  3. Improved error handling in tester VIs when the main loop completes.
  4. Updated “Show Diagram” message code.
  5. Updated Stop Module code in TestStand Manager module.