Reflection session Template files do not save VBA ProjectLegacy() macro and Forms code

  • 7023031
  • 31-May-2018
  • 03-Jul-2018

Environment

Reflection Desktop (including Pro, for X, for IBM, or for UNIX and OpenVMS) 16.0 or higher
Reflection 2014
Reflection Pro 2014
Reflection for IBM 2014
Reflection for UNIX and OpenVMS 2014
Reflection for IBM 2011
Reflection for UNIX and OpenVMS 2011
Reflection Standard Suite 2011

Situation

When saving a Reflection host session as a session Template file, if the original Host session contains VBA macros or Forms under the ProjectLegacy() section of the VBA editor, then the macro and Forms code does not get saved in the resulting Template file.  Thus when attempting to use the Template file to create a new Host session, the connection information will be in the new session but the VBA ProjectLegacy() macro and Forms code will be missing.  If you save a Reflection session Template files which has the newest VBA Project() macro code then this will get saved in the template and appear in new host session files created from the template.

Resolution

If using Reflection Desktop 16.0:
         Upgrade to Reflection Desktop 16.0 SP1 HF16 or higher (16.0.446)
If using Reflection Desktop 16.1:
         Upgrade to Reflection Desktop 16.1 HF6 or higher (16.1.300)

A HotFix (HF) for Reflection Desktop is a cumulatively built product update, intended for limited distribution, which addresses specific customer issues and enhancement requests; outside the regular Development release cycle. It is only available to Micro Focus customers with current software support and maintenance contracts, and only after contacting Micro Focus Customer Support directly.  A HotFix undergoes limited stability and quality testing and is intended for quick release to address specific product issues and should not be deployed to production environments without thorough testing.  It is recommended to upgrade to a full-release or a Service Pack version of Reflection Desktop when it becomes available.

Workaround:

There are two workarounds available for this issue:

1. Manually copy-and-paste (or drag-and-drop) the Legacy Macros and the Forms needed from the old host session file to the newly created host session file that was created from the template file.

2.  See the Additional Information and follow the Steps to Duplicate.  After the last step of checking that the legacy module does not exist, close the host session session and without closing the Reflection Workspace, create a new host session using the same template as before and then check the ProjectLegacy() section.  The ProjectLegacy() will now have the macro code.  This works because once the Reflection host session is opened using the template file, Reflection will load the additional supporting files for the new session.  Hence when one additional host session is created using the template, the supporting files are already loaded and then copied to the appropriate section of the new host session file.