------------------------------------------------------------------------ Chameleon Change Log & Release History ------------------------------------------------------------------------ Log available at ftp://ftp.interfaceware.com/chameleon/change_log.txt ------------------------------------------------------------------------ This page provides documentation for issues and advisories which have been noted, fixed, have workarounds and/or are in the process of being fixed. ************************************************************************ * Version 5.4 * Build 14 * Date May 18, 2012 ************************************************************************ ************************************************************************ * Version 5.3 * Build 8 * Date April 16, 2012 ************************************************************************ ************************************************************************ * Version 5.2 * Build 24 * Date April 16, 2012 ************************************************************************ ************************************************************************ * Version 5.4 * Build 13 * Date April 5, 2012 ************************************************************************ 1) [Problem] In Chameleon 5.3.2, Interbase was mistakenly removed from the list of databases in the DB tab of the Options window in the Chameleon GUI. Interbase is again available as a database in the DB tab of the Options window in Chameleon 5.4.13. [Affected Releases] Chameleon 5.3.2 through 5.4.12 [Tracking Numbers] #19881 ************************************************************************ * Version 5.4 * Build 12 * Date January 26, 2012 ************************************************************************ ************************************************************************ * Version 5.4 * Build 11 * Date January 20, 2012 ************************************************************************ ************************************************************************ * Version 5.3 * Build 7 * Date January 19, 2012 ************************************************************************ ************************************************************************ * Version 5.2 * Build 23 * Date January 19, 2012 ************************************************************************ ************************************************************************ * Version 5.4 * Build 10 * Date November 18, 2011 ************************************************************************ 1) [Problem] In previous versions of Chameleon, when using Microsoft Windows, the HL7 Listener and HL7 Simulator tools would under certain circumstances become unusable if you customized your desktop font size. This has been fixed in Chameleon 5.4.10. [Affected Releases] All previous versions of Chameleon [Tracking Numbers] #19172 ************************************************************************ * Version 5.4 * Build 9 * Date October 27, 2011 ************************************************************************ ************************************************************************ * Version 5.4 * Build 8 * Date October 5, 2011 ************************************************************************ ************************************************************************ * Version 5.4 * Build 7 * Date September 8, 2011 ************************************************************************ ************************************************************************ * Version 5.2 * Build 22 * Date September 6, 2011 ************************************************************************ ************************************************************************ * Version 5.3 * Build 6 * Date September 6, 2011 ************************************************************************ ************************************************************************ * Version 5.4 * Build 6 * Date July 14, 2011 ************************************************************************ ************************************************************************ * Version 5.4 * Build 5 * Date July 4, 2011 ************************************************************************ ************************************************************************ * Version 5.3 * Build 5 * Date June 17, 2011 ************************************************************************ ************************************************************************ * Version 5.4 * Build 4 * Date June 6, 2011 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In Chameleon applications that instantiate multiple listeners on different threads, when the listeners are started some of them may fail to initialize with a "Winsock not initialized" error. This has been fixed in Chameleon 5.4.4. [Affected Releases] All previous versions of Chameleon. [Tracking Numbers] #18028 ************************************************************************ * Version 5.4 * Build 3 * Date May 16, 2011 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In previous versions of Chameleon, if you are generating stubcode for the Delphi programming language, Chameleon first checks whether you have the Delphi IDE open. To do this, it checks whether there are any open windows that have "Delphi" in their title. This may cause problems if an application that is not the Delphi IDE but has "Delphi" in its title has a window open. Chameleon 5.4.3 checks whether the Delphi IDE is open by checking whether a window named "TAppBuilder" is open. Other applications are unlikely to open windows whose title contains this name. [Affected Releases] All previous versions of Chameleon [Tracking Numbers] #17703 ************************************************************************ * Version 5.3 * Build 4 * Date April 7, 2011 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] Internal testing of the Chameleon Python library's GUID generator function, guid.generate_guid(), revealed that an access violation could occur in multi-threaded environments in unusual circumstances. This has been fixed in version 4.5.4 of Iguana and version 5.3.4 of Chameleon. [Affected Releases] Chameleon 5.0 and later [Tracking Numbers] #17334 2) [Problem] In previous versions of Chameleon, if you saved a VMD file, the default file format was always "Message Definition File". If you saved a file in XML format, and then wanted to save it again, you had to remember to select "XML Message Definition File" each time. In Chameleon 5.3.4, if you save a VMD file in XML format, this format becomes the default format when you save the file again. [Affected Releases] All previous releases of Chameleon [Tracking Numbers] #13809 ************************************************************************ * Version 5.3 * Build 3 * Date January 31, 2011 ************************************************************************ ************************************************************************ * Version 5.2 * Build 21 * Date January 28, 2011 ************************************************************************ ************************************************************************ * Version 5.3 * Build 2 * Date December 14, 2010 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In previous versions of Chameleon, the Database Table Importing Wizard did not include the DB2 and Filemaker database APIs as options that could be selected from the Database API list box. This problem has been fixed in version 5.3.2 of Chameleon. [Affected Releases] Chameleon 5.1.10 and later [Tracking Numbers] #15539 2) [Problem] Some of the older HL7 library files that are included with Chameleon contain an ADRA19 message definition. In this message definition, the table grammar uses the Group1 table group name more than once. This means that stubcode generated from this message definition will contain errors, as the stubcode generator uses the group names to create unique identifiers in the generated output. This problem occurs in the library files for HL7 versions 2.2, 2.3, 2.3.1 and 2.4. These files can be found in the Libraries subdirectory of the directory in which Chameleon is installed, and have the following names: HL7_2.2.vmd HL7_2.3.vmd HL7_2.3.1.vmd HL7_2.4.vmd Library files that are older than HL7 version 2.2 or newer than HL7 version 2.4 do not have this problem, as the ADRA19 message definition is not included in these files. The library files have been corrected in version 4.5.2 of Iguana and version 5.3.2 of Chameleon. To fix this problem in older versions of Iguana and Chameleon, use Chameleon to edit the library files shown above. Change the second group name in the ADRA19 message definition table grammar from "Group1" to "Group2". [Affected Releases] Version 4.1.18 and earlier of Iguana; version 4.5.1 of Iguana; version 5.2.18 and earlier of Chameleon; version 5.3.1 of Chameleon. [Tracking Numbers] #16515 ************************************************************************ * Version 5.2 * Build 20 * Date January 7, 2011 ************************************************************************ ************************************************************************ * Version 5.2 * Build 19 * Date December 7, 2010 ************************************************************************ ************************************************************************ * Version 5.2 * Build 18 * Date November 1, 2010 ************************************************************************ 1) [Problem] When installing ChameleonRuntime on 64-bit Windows, when users ran ChameleonLicense to license the install, if the user account did not have sufficient permissions to modify the Windows registry it would produce an "Unhandled Exception" error with no details as to the cause of the error. In version 5.2.18 of Chameleon, ChameleonLicense has been modified to report the details of the error to aid in diagnosing the source of the error. [Affected Releases] Chameleon 5.2 and Chameleon 5.3.1 [Tracking Numbers] #16259 ************************************************************************ * Version 5.3 * Build 1 * Date October 13, 2010 ************************************************************************ ************************************************************************ Performance Improvements ************************************************************************ 1) [Feature Description] The Chameleon message browser now features improved handling of messages that contain a large number of segments. [Affected Releases] Chameleon 5.3 [Tracking Numbers] #13888 2) [Feature Description] In Iguana and Chameleon, there is now no upper limit on the size of the messages that can be processed. In previous versions of Iguana and Chameleon, the maximum message size was 1 MB. [Affected Releases] Iguana 4.5 and Chameleon 5.3 [Tracking Numbers] #8964 ************************************************************************ Additions ************************************************************************ 1) [Feature Description] Iguana and Chameleon API libraries and stubcode are now statically linked with the Microsoft C and C++ Runtime Libraries under Microsoft Visual C++ 2005 and later. Static linking simplifies distribution of customer applications by removing the need for redistribution of the Microsoft C and C++ Dynamic Runtime Libraries (DLLs). In addition, the API libraries and stubcode no longer link against the Microsoft MFC library, since it is not required. If needed, you can still link applications with the MFC library. [Affected Releases] All previous versions of Chameleon [Tracking Numbers] #14051 ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In previous versions of Chameleon, the Global Inbound Post-Process Script was not included as part of the Global Python Overview. This has been fixed in this version of Chameleon. [Affected Releases] Chameleon 5.1.12 and later [Tracking Numbers] #15821 ************************************************************************ * Version 5.2 * Build 17 * Date August 24, 2010 ************************************************************************ ************************************************************************ * Version 5.2 * Build 16 * Date August 3, 2010 ************************************************************************ ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The Delphi 2010 development environment is now supported. Iguana plugins can now be created in Delphi 2010, and Chameleon can now generate stubcode for it. [Affected Releases] Chameleon 5.2.16 [Tracking Numbers] #11413 ************************************************************************ * Version 5.2 * Build 15 * Date July 9, 2010 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In previous versions of Iguana and Chameleon, the HL7_2.6.vmd file that is shipped with Chameleon and Iguana contains an empty definition for the GTS composite. The version of HL7_2.6.vmd that is shipped with Iguana 4.1.15 and Chameleon 5.2.15 includes the correct definition of the GTS composite. [Affected Releases] All releases that include HL7_2.6.vmd. [Tracking Numbers] #14718 2) [Problem] In previous versions of Iguana and Chameleon, the msgtransform utility crashed when it was unable to autodetect the format of the file to be transformed. It would also crash if an invalid argument was specified for the --forceformat option. In the version of msgtransform that is included with Iguana 4.1.15 and Chameleon 5.2.15, an error message is displayed indicating either that msgtransform is unable to detect the file format or that the --forceformat option is invalid. [Affected Releases] All previous versions of Iguana and Chameleon [Tracking Numbers] #15081 6) [Problem] In previous versions of Chameleon, the ParseMessage() method, which is part of the stubcode generated for server applications, incorrectly blocked errors generated by user functions. Instead, ParseMessage() threw another exception and discarded the exception it had been given. This problem has now been fixed. Exceptions generated by user functions are now propagated properly. [Affected Releases] All previous versions of Chameleon [Tracking Numbers] #15168 ************************************************************************ * Version 5.2 * Build 14 * Date May 19, 2010 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] Previous versions of Chameleon may crash if you add or disconnect a monitor, resize your primary display, or switch from a multi-screen machine to a remote session. This is due to a problem in one of the underlying Delphi libraries that Chameleon uses. This problem has been fixed in version 5.2.14 of Chameleon. [Affected Releases] All previous versions of Chameleon [Tracking Numbers] #14105 ************************************************************************ * Version 5.2 * Build 13 * Date April 26, 2010 ************************************************************************ ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The Python library that is included with Iguana and Chameleon now includes functions that create, validate and process timestamps, which are the date/time values that are included in HL7 messages. [Affected Releases] Iguana 4.1.13 and Chameleon 5.2.13 ************************************************************************ * Version 5.2 * Build 12 * Date March 19, 2010 ************************************************************************ *********************************************************************** Known Issues *********************************************************************** 1) [Description] Chameleon may crash if you add or disconnect a monitor, resize your primary display, or switch from a multi-screen machine to a remote session. This is due to a problem in one of the underlying Delphi libraries that Chameleon uses. This problem will be fixed in the next release of Chameleon. [Workaround] Close Chameleon before adding or removing a monitor. [Severity] Moderate [Affected Releases] All existing versions of Chameleon [Tracking Numbers] #14105 ************************************************************************ * Version 5.2 * Build 11 * Date March 17, 2010 ************************************************************************ ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The Database Result Set object's value() method now accepts either a column name or a column index as its second parameter. [Affected Releases] Iguana 4.1.11 and Chameleon 5.2.11 ************************************************************************ * Version 5.2 * Build 10 * Date March 1, 2010 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] When version 4.1 of Iguana or version 5.2 of Chameleon was installed on Windows 2000, the install.log file was sometimes not successfully created. In these situations, automatically uninstalling Iguana and Chameleon did not work properly, and they had to be uninstalled manually. This problem has been fixed in Iguana 4.1.10 and Chameleon 5.2.10. [Affected Releases] Iguana 4.1, Chameleon 5.2 [Tracking Numbers] #13862 ************************************************************************ * Version 5.2 * Build 9 * Date February 10, 2010 ************************************************************************ ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The Show Debug Output window now uses the Courier New font to display text. This ensures that this text is easier to read. [Affected Releases] Chameleon 5.2.9 [Tracking Numbers] #13741 ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] If you are using Chameleon on a system that is running Windows 7 or Windows Vista, the Program Compatibility Assistant window may appear after Chameleon is closed. This window appears because Chameleon is trying to access MSVCP50.DLL, which is not included with Windows 7 and Windows Vista. Internal testing has determined that this version of Chameleon works properly even when this DLL file is missing. If the Program Compatibility Window appears, click "This program worked correctly" to close it. Version 5.2.9 of Chameleon has been modified to no longer look for this library. [Affected Releases] Chameleon 5.2.8 [Tracking Numbers] #13662 2) [Problem] In version 5.2 of Chameleon, the SetCurrentTranslationLocale() method, defined in the ChameleonEncoding class, does not allow you to set the locale to "UTF-8". UTF-8 is required for the correct translation of international characters in XML files. This problem has been fixed in Chameleon 5.2.9. If you use SetCurrentTranslationLocale() to set the locale to "UTF-8", the translation codepage is set to use UTF-8 encoding and the current locale is set to "C". [Affected Releases] Chameleon 5.2 [Tracking Numbers] #11351 3) [Problem] The problems with regular expressions and Unicode character strings (strings that are not in Latin-1 format) in Python scripts have been resolved in Chameleon 5.2.9. [Affected Releases] Chameleon 5.2 [Tracking Numbers] #13682 4) [Problem] In some versions of Chameleon, on the Windows platform, the matching and searching functions in the Python regular expression library will return meaningful results when comparing an object with zero. In Chameleon 5.2.9, this is no longer the case. It is important to note that comparing an object with zero when matching or searching is not supported and will always yield unpredictable results. If your code relies on this behaviour, it will not function properly. [Affected Releases] Chameleon 5.2 [Tracking Numbers] #14625 ************************************************************************ * Version 5.2 * Build 8 * Date January 19, 2010 ************************************************************************ ************************************************************************ Bug Fixes ************************************************************************ 1) [Problem] In previous versions of Chameleon, attempting to process an HL7 message that contains an unterminated escape sequence (for example, "\Xff" instead of "\Xff\") could potentially cause Iguana to crash. This has been fixed in Chameleon 5.2.8. [Affected Releases] All previous releases of Chameleon [Tracking Numbers] #13528 2) [Problem] In previous versions of Chameleon, if you specified that incoming messages are in X12 format, Chameleon still required a header segment to be defined for each message. This was the case even though header segments are not always needed for X12 messages. (An X12 message can consist of one or more sets of segments which are bracketed by ST and SE segments. Such messages do not have a header segment.) In Chameleon 5.2.8, segment is not required for incoming messages in X12 format. [Affected Releases] All [Tracking Numbers] #13461 3) [Problem] Previous versions of Chameleon did not allow you to import a segment definition from the Segment Library if a segment of the same name already existed in the VMD file. This restriction was too limiting for VMD files that process incoming messages in X12 format: these messages can have multiple definitions of segments with the same name. The context in which a segment appears is used to determine which of the segments of the same name is to be applied. In Chameleon 5.2.8, you can import a segment definition from the Segment Library even if a segment of the same name already exists in the VMD file. [Affected Releases] All [Tracking Numbers] #13460 4) [Problem] In the HL7_2.6.vmd file that is shipped with Chameleon and Iguana, the definition of the FT composite for the NTE segment was empty. In this composite, one field of data type String is required. The NTE segment definition in the HL7_2.6.vmd file has been updated to include the correct definition of the FT composite. [Affected Releases] All releases that include HL7_2.6.vmd. [Tracking Numbers] #13492 ************************************************************************ * Version 5.2 * Build 7 * Date January 6, 2010 ************************************************************************ ************************************************************************ * Version 5.2 * Build 6 * Date December 10, 2009 ************************************************************************ ************************************************************************ * Version 5.2 * Build 5 * Date December 3, 2009 ************************************************************************ *********************************************************************** * Version 5.2 * Build 4 * Date November 26, 2009 *********************************************************************** ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The Database and Database Result Set objects that are included in the Chameleon Python API now provide more informative error messages when problems are detected. [Affected Releases] All previous versions of Chameleon in which these objects are defined. [Tracking Numbers] #13205 *********************************************************************** * Version 5.2 * Build 3 * Date November 16, 2009 *********************************************************************** *********************************************************************** * Version 5.2 * Build 2 * Date November 4, 2009 *********************************************************************** *********************************************************************** Changes *********************************************************************** 1) [Description] Chameleon 5.2 has been adapted to ensure greater compatibility with older versions of Chameleon. Version 3.2.1.2 of Chameleon, or any version of Chameleon since then, now can more easily read VMD files created with version 5.2. Chameleon 5.2 can always read VMD files created by older versions of Chameleon. [Severity] Minor [Affected Releases] Chameleon 5.2 [Tracking Numbers] #11644 *********************************************************************** * Version 5.1 * Build 12 * Date September 10, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 11 * Date August 21, 2009 *********************************************************************** ************************************************************************ Additions ************************************************************************ 1) [Feature Description] The VMD library files for version 2.6 and version 2.5.1 of the HL7 standard now include example tables. These example tables are similar to those found in the other VMD library files that are included as part of the Chameleon installation. [Affected Releases] Chameleon 5.1 [Tracking Numbers] #12339 *********************************************************************** * Version 5.1 * Build 10 * Date August 7, 2009 *********************************************************************** ************************************************************************ Additions ************************************************************************ 1) [Feature Description] VMD library files for version 2.6 and version 2.5.1 of the HL7 standard have been included with this release. They are located in the Libraries subdirectory of the directory in which Chameleon is installed, and are named "HL7_2.6.vmd" and "HL7_2.5.1.vmd". [Affected Releases] Chameleon 5.1 [Tracking Numbers] #12109 *********************************************************************** Known Chameleon Issues *********************************************************************** ----------------------------------------------------------------------- #12021 ----------------------------------------------------------------------- [Description] In previous versions of Chameleon that support the version 5.0 parser engine, if a Table Inbound Script assigned 0 to the "value" variable, the parser engine converted 0 to None. This meant that the null value was written to the database field that corresponded to the table column. In Chameleon 5.1.10, this has been fixed: if a Table Inbound Script assigns 0 to "value", 0 is written to the corresponding database field. [Workaround] Use the following Segment Inbound Script for the segment field that is mapped to the table entry: if value == '': value = '0' [Severity] Moderate [Affected Releases] Chameleon 5.0 and 5.1 *********************************************************************** * Version 5.1 * Build 9 * Date July 2, 2009 *********************************************************************** *********************************************************************** Bug Fixes *********************************************************************** 1) [Problem] Previous versions of Chameleon 5.1 did not correctly handle incoming message streams where fields in a message segment are mapped to fields in a table, but may or may not be present. If a message from this stream contains a segment that is missing a field, an error is incorrectly generated. This has been fixed in Chameleon 5.1.9. [Severity] Moderate [Affected Releases] Chameleon 5.1 [Tracking Numbers] #11937 *********************************************************************** * Version 5.1 * Build 8 * Date June 17, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 7 * Date May 4, 2009 *********************************************************************** *********************************************************************** Bug Fixes *********************************************************************** 1) [Problem] When Chameleon is performing scripted message transformation, the Global Inbound Script may be executed twice. This bug has been fixed in version 5.1.7. [Severity] Moderate [Affected Releases] Chameleon 5.1.6 and below. [Tracking Numbers] #8252 *********************************************************************** * Version 5.1 * Build 6 * Date April 20, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 5 * Date March 31, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 4 * Date March 23, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 3 * Date March 15, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 2 * Date March 10, 2009 *********************************************************************** *********************************************************************** * Version 5.1 * Build 1 * Date March 3, 2009 *********************************************************************** *********************************************************************** Changes *********************************************************************** 1) [Description] Users of the Chameleon Language API should note that the error parameters in the Chameleon exception class are now sorted in alphabetical order. The name of this exception class depends on the language that you are using: * In C++, this class is named CHMerror. * In C# and Java, this class is named ChameleonException. Delphi and Visual Basic 6.0 do not make this exception class available. [Severity] Minor [Affected Releases] Chameleon 5.1 [Tracking Numbers] #10049 *********************************************************************** Known Chameleon Issues *********************************************************************** ----------------------------------------------------------------------- #7898 ----------------------------------------------------------------------- [Description] If you are using Chameleon 4.5.1, the message browser may display a "Segment cannot be resolved, try reparsing" message when asked to parse a message containing a segment that is missing one or more required fields. Despite the error message, the fields in this message are correctly extracted, and are properly displayed in the message browser's Table View. This problem was fixed in Chameleon 5.0.2. [Workaround] Upgrade to Chameleon 5.0.2. [Severity] Minor [Affected Releases] Chameleon 4.5.1 ----------------------------------------------------------------------- #8892 ----------------------------------------------------------------------- [Description] HL7 applications built for the Mac OS X Leopard operating system that are generated in Chameleon using Java stubcode will trigger a java.lang.UnsatisfiedLinkError exception. This is because Chameleon's Python functionality is attempting to use the environ function, which is only available to the ld(1) loader program when a complete program is being linked. This has been fixed in the latest patch release of Chameleon. [Workaround] None [Severity] High [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #9382 ----------------------------------------------------------------------- [Description] If you are upgrading to the latest version of Chameleon on HP-UX, you need to use HP-UX version 11i or above. Earlier versions of HP-UX than this do not support IPv6, which means that the Chameleon libraries will not link properly due to IPV6 dependencies coming from the Python socket library in Chameleon. The libChameleon.a library now links correctly on HP-UX 11 by removing the unneeded dependencies on IPV6 on the HPUX platform. [Workaround] None [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #9110, #9116, #9234 ----------------------------------------------------------------------- [Description] Red Hat AS 3.9, 4 and 5 are now used for production builds of Chameleon on Linux. [Workaround] None [Severity] Minor [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8463 ----------------------------------------------------------------------- [Description] New Chameleon and Iguana desktop icons have been created for Windows Vista. [Workaround] None [Severity] Minor [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8366 ----------------------------------------------------------------------- [Description] The Chameleon and Iguana desktop shortcuts are now named "Chameleon" and "Iguana" instead of "iNTERFACEWARE Chameleon" and "iNTERFACEWARE Iguana". This makes the desktop icons easier to read and use. [Workaround] None [Severity] Minor [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8277 ----------------------------------------------------------------------- [Description] Newer versions of the msgtransform utility (later than Chameleon 4.0.7) sometimes introduce unwanted carriage return characters when used with the --transform and --table options. This will be fixed in a subsequent release of Chameleon. [Workaround] None [Severity] Minor [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8181 ----------------------------------------------------------------------- [Description] Visual Studio 2008 is now supported. Chameleon can now generate sample stub code for your application in C#.NET, VB.NET and Visual C++ 2008. [Workaround] None [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8012 ----------------------------------------------------------------------- [Description] Chameleon can take a long time to connect to Oracle 10. This is because Chameleon loads all of the system tables, including Oracle 10's recycle bin tables. This will be fixed in a future release of Chameleon. [Workaround] None [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #7950 ----------------------------------------------------------------------- [Description] A new utility, vmd_tool, provides a convenient way to convert VMD files from binary to XML format and vice versa. It can also examine VMD files to determine their format without performing conversion. The syntax for vmd_tool is: vmd_tool [options] [files] [files] is a list of VMD files to examine. The options for vmd_tool are: --extension [ext] Specify [ext] as the extension to use when converting VMD output files (for example, "txt"). --outdir [dir] Write converted output files to the directory specified by [dir]. --overwrite When writing output files, overwrite any existing files. --tobinary Convert VMD output files to binary format. --toxml Convert VMD output files to XML format. [Workaround] None [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8522 ----------------------------------------------------------------------- [Description] In earlier versions of Chameleon 5.0, if one Python script was blocked by a call to a function such as time.sleep, Python scripts in other threads would be blocked as well. This has been updated: now, only the thread containing the Python script is blocked. [Workaround] None [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #8107 ----------------------------------------------------------------------- [Description] The Chameleon 5.0 parser cannot parse messages that contain very long segments. [Workaround] Use the parser from version 4.5 of Chameleon. To use this parser, select Options from the Chameleon menu and click the Misc tab; in the Parser Version list box, select 4.5. [Severity] Moderate [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #7791 ----------------------------------------------------------------------- [Description] Trailing pipes are output only when the "Validate Data for XML -> HL7" option is disabled from the XML tab in the Options window. [Workaround] Check/uncheck the "Validate Data for XML -> HL7" option, depending on your desired behavior (i.e. uncheck it to produce trailing pipes; check it to not produce trailing pipes). [Severity] Minor [Affected Releases] Chameleon 5.0 ----------------------------------------------------------------------- #7905 ----------------------------------------------------------------------- [Description] When an unrecognized message is pasted into the Message Browser, the "Message - Unrecognized" text does not appear when "Grammar View" is selected. [Workaround] Use the "Message View" to view the unrecognized message, or define the message identity so that the bug no longer appears. [Severity] Minor [Affected Releases] Chameleon 5.0.1-5.0.2 *********************************************************************** * Version 5.0 * Build 1 * Date February 29, 2008 *********************************************************************** Chameleon 5.0 is a major release. It contains significant new features but should be a simple upgrade from any of the 4.5 releases. Still, please read the change log carefully to learn about all the new features, changes and bug fixes. *********************************************************************** Additions *********************************************************************** 1) [Feature Description] A new parser engine, called 5.0, has been added to Chameleon and can be selected for use from the "Misc" tab. It offers enhanced support when using Python field objects and Python validation rules. In addition, it correctly handles present but null issues and parses messages approximately 40 percent faster than the 4.5 parser engine. Please note that both Python field objects and validation rules behave differently between parser engine versions. For details, see "Field Object Methods/Properties" in the manual. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #5989, #6368, #7325 2) [Feature Description] An iNTERFACEWARE News Feed (also known as a web feed) is now available directly from within Chameleon. The news feed highlights all the latest iNTERFACEWARE news and happenings, such as the most recent Chameleon and Iguana updates. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7372 3) [Feature Description] A new executable called "Stubgen" allows you to generate stubcode with command line switches from the Chameleon install directory. Overall, "stubgen" is a more lightweight tool, runs faster, and is more convenient than previous implementations which involved invoking vmstudio.exe to generate stubcode. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7320 4) [Feature Description] A new XML Schema Generation window has been added to Chameleon, which replaces the XML schema generation functionality previously found in the Stubcode Generation Wizard. This separate window allows you to easily generate DTDs, XML schemas and Biztalk schemas for every XML flavor supported by Chameleon. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7356, #7373 5) [Feature Description] A "Validate Data for XML -> HL7 Translation" option has been added to the "XML" tab. This option allows you to validate data when using the Full Tree Validation translation scheme. When this option is enabled, Chameleon validates data when translating messages from XML to HL7. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #6936, #7403 6) [Feature Description] An "Escape Data for XML -> HL7 Translation" option has been added to the "XML" tab. This option allows you to escape data when using the Full Tree Validation or Standard Version 2 translation schemes. When this option is enabled, Chameleon escapes special characters when translating messages from XML to HL7. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #6721 7) [Feature Description] A "GUID Generator" has been added to Chameleon. It allows you to create unique IDs for use with HL7 messages, with the most common use associated with message control IDs (MSH.10). The generated GUID is a hex-encoded string, which is twice the length of the requested byte size, with the minimum bit strength being 128 bits (16 bytes). [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7281 8) [Feature Description] Chameleon now fully supports Borland Delphi 2007. It is available for selection from the Stubcode Generation Wizard. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #6992 9) [Feature Description] The SetDefaultDatabase function is now available for use on the Engine class in C#. Using this function, you can programmatically set the default database associated with the currently selected configuration at run-time. For more information, refer to the C# API documentation in the manual. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7415 10)[Feature Description] A Bug Reporting tool has been added to Chameleon to help diagnose crashes and/or exceptions. When a crash or exception occurs in Chameleon, the Bug Reporting tool will automatically save a bug report, the 'crash' VMD file, and the 'crash' screenshot. In addition, it offers the ability to email the details of the crash report to iNTERFACEWARE support so the cause can be diagnosed. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7037 11)[Feature Description] Trial license methods called "FetchTrialRegistrationCode" and "RegisterTrialLicense" have been added to the license registration component in Chameleon. It allows a client to programmatically license and register a Chameleon installation over the Internet. [Affected Releases] Chameleon 5.0 [Tracking Numbers] #6487 *********************************************************************** Changes *********************************************************************** 1) [Description] The Stubcode Generation Wizard has been redesigned. Although it still offers the same familiar functionality found in previous versions, now the wizard also allows you to generate separate client and server examples. This makes it easier to generate the skeleton of an HL7 interface program for your specific requirements. [Severity] Moderate [Affected Releases] Chameleon 5.0 [Tracking Numbers] #5375, #5985, #5986 2) [Description] The "DB" Tab found in the Options Window has been redesigned. It offers an improved look-and-feel and is now more intuitive to use. In the "DB" tab you can specify the default database for a database object, which will be available for use in Python scripting. In this window you can also specify the host, and (if required) username and password for a specific database. In addition, it also allows you to test the connection to the selected database. [Severity] Moderate [Affected Releases] Chameleon 5.0 [Tracking Numbers] #6445 3) [Description] If you have created an application using .NET and are upgrading to Chameleon 5.0, note the following changes: * If the previous version of CHM_CSHARP.DLL is in the GAC (Global Assembly Cache) it will be removed when you upgrade. * To run your application, you must move the original CHM_CSHARP.DLL to your project directory. [Severity] Moderate [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7469 4) [Description] Support for Visual Basic 5.0 has been discontinued. [Severity] Low [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7293 5) [Description] The "New Project" window has been replaced with the "Start Page". It offers the same functionality as the "New Project" window, such as the ability to open a new project and view tutorials, but also offers one additional function, namely the "iNTERFACEWARE News Feed". [Severity] Low [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7567 6) [Description] The legacy Chameleon Object Field Functions are not supported in the 5.0 parser engine. [Severity] Low [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7298 7) [Description] A blank field is now expressed as in the Message Browser's "Grammar View", instead of as . [Severity] Low [Affected Releases] Chameleon 5.0 [Tracking Numbers] #7321 8) [Description] Chameleon now ships with the Classic C++ runtime for HPUX platforms. The Class C++ runtime is based on the old iostream. [Severity] Low [Affected Releases] Chameleon 5.0 [Tracking Numbers] #4365 *********************************************************************** Bug Fixes *********************************************************************** 1) [Problem] There was an issue where data found in the "Table Grammar" would become corrupted when opening VMD files created in Chameleon version 3.3 with versions 4.1 to 4.5. This bug has now been fixed in version 5.0. [Severity] Moderate [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6365 2) [Problem] The difference between 0, Null, Empty and Invalid in an HL7 message could not be properly distinguished. To fix this issue, a "GetState" function was added to Chameleon. This allows you to test values in the cell at row RowIndex and column ColumnIndex to see if it is null, zero, empty or invalid. [Severity] Moderate [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6289 3) [Problem] An out of memory error would be thrown in the ServerExample class when sending messages from the HL7 Simulator to the "ServerExample" generated by the Stubcode Generation Wizard. This bug has now been resolved. [Severity] Moderate [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6700, #6752 4) [Problem] There was a bug in Chameleon when generating XSD schemas. For any segments marked as optional, the generated XSD would erroneously list the segment as a required element. This bug has now been fixed. [Severity] Moderate [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6534 5) [Problem] The Message Browser would not display orange flags beside required subfields and sub-subfields. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #4440 6) [Problem] Inbound field segment scripts would not be executed before validation, which resulted in unexpected validation errors if the "Strict Grammar Checking" option was enabled. This bug has now been fixed, so that the validation logic is performed after the segment inbound Python scripts are run. [Severity] Moderate [Affected Releases] Chameleon 4.0-4.5 [Tracking Numbers] #6587 7) [Problem] There was an issue where outbound segment scripts were erroneously executed for every repeat of a field during message generation. In Chameleon version 5.0, the outbound segment scripts are executed only once per field. [Severity] Moderate [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6933, #6935 8) [Problem] There was a bug in the Message Browser in which repeating segments inside a group would be erroneously parsed. This resulted in both unexpected errors and output values. This bug has been fixed in the 5.0 Parser Engine. To enable the 5.0 parser engine, go to the "Options" window, and click the "Misc" tab. [Severity] Low [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #5176 9) [Problem] The Message Browser would not throw an error when performing field length checks for invalid fields when "Strict Grammar Checking" was enabled. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.0-4.5 [Tracking Numbers] #6706 10)[Problem] When the C# API documentation's tree menu was expanded in Firefox, the menu would no longer be viewable. This was a known bug in NDoc. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.0-4.5 [Tracking Numbers] #6790 11)[Problem] The field names for sub-subfields would be displayed incorrectly in the Message Browser. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6809 12)[Problem] When creating a new VMD file, "Strict Grammar Checking" would be erroneously enabled by default. This bug would only occur if: * You opened a VMD file with "Strict Grammar Checking" enabled. * Clicked the "New" button to create a new VMD file. * Made a change, and then saved the new VMD. This minor issue has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5 and below. [Tracking Numbers] #6918 13)[Problem] The Message Browser would display inconsistent messages for count of repeat errors in the "Segment View" and "Table View" tabs when "Strict Grammar Checking" was enabled. Note that this bug only affects the 4.5 parser engine (versions 3.211.245 to 4.5). In all cases the "Table View" displays the correct output; the "Segment View" output should be disregarded. To avoid this issue, use the 5.0 parser engine. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #6919 14)[Problem] There was a bug in Chameleon that resulted in an access violation when performing the following steps: * Open a new project in Chameleon. * Ensure the "Auto Parse" option is turned off in the Message Browser. * Paste a message that contains at least three segments into the Message Browser. * Click "Parse." * Right-click the message node and choose "Expand All." * Type in a new segment without any fields or delimiters between the two segments with fields. * Click "Parse" again. Clicking "Parse" would cause an exception, producing a floating point error message. [Severity] Low [Affected Releases] Chameleon 4.5.1 [Tracking Numbers] #6942 15)[Problem] Chameleon would erroneously display a precondition failure message in the Message Browser when parsing certain segments even though the segments were valid. This bug only occurred when the "Show Warnings" option was enabled. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #6993 16)[Problem] When a Python value variable was assigned to in Chameleon and a type mismatch occurred, the error line number would not be displayed. This made it difficult to find errors in large scripts. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7082 17)[Problem] An "Access Violation" error would occur if a subfield was removed when using the field object in Python scripts. This bug has been fixed in the 5.0 parser engine. To enable the 5.0 parser engine, go to the "Options" window, and click the "Misc" tab. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7088 18)[Problem] Chameleon would report an incorrect error if "" was entered for fields that were not strings. This error would only occur if "Strict Grammar Checking" option was enabled. This bug has now been fixed. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7089 19)[Problem] The 4.5 Parser Engine would not report errors when incorrect escape sequences were present in messages when the "Strict Grammar Checking" option was enabled. This bug has been fixed in the 5.0 Parser Engine. To enable the 5.0 parser engine, go to the "Options" window, and click the "Misc" tab. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7208 20)[Problem] The Message Browser would incorrectly display warnings for missing fields when the fields were not actually required. This bug occurred when the "Strict Grammar Checking" option was enabled. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7351 21)[Problem] When opening a new VMD file, clicking "Cancel" in the Save As dialog window would result in the same behavior as clicking "No". [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7386 22)[Problem] Double-clicking "Message" in the Segment Grammar or Table Grammar panels caused the tree view to collapse. This made it appear as if there was no data present in the message definition. This bug has been fixed so that the root node of the segment or table is no longer collapsible. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #4745 23)[Problem] When the Debug window was docked, undocked, resized and then closed, this caused an access violation. In Chameleon 5.0, the Debug window will stay open and its contents will be retained unless they are explicitly cleared. [Severity] Low [Affected Releases] Chameleon 4.5.1 and below. [Tracking Numbers] #7824 *********************************************************************** * Version 4.5 * Build 1 * Date August 6, 2007 *********************************************************************** Chameleon 4.5 is a substantial release. It contains significant new features but should be a simple upgrade from either of the 4.0.7 or 4.1.3 releases. Still, please read the change log carefully to learn about all the new features and user interface changes. This page also provides details about all the other additions, changes and bug fixes. ************************************************************************ Outstanding Known Issues ************************************************************************ ------------------------------------------------------------------------ #6809 ------------------------------------------------------------------------ 1) [Description] The field names for sub-subfields are displayed incorrectly in the Message Browser. [Severity of Problem] Low [ETA of Fix] January 2008 [Affected Releases] All Chameleon releases. ------------------------------------------------------------------------ #6706 ------------------------------------------------------------------------ 2) [Description] The Message Browser does not throw an error when performing field length checks for invalid fields when "Strict Grammar Checking" is enabled. [Severity of Problem] Low [ETA of Fix] January 2008 [Affected Releases] Chameleon 4.0-4.5 ------------------------------------------------------------------------ #6942 ------------------------------------------------------------------------ 3) [Description] There's a bug in Chameleon that results in an access violation when performing the following steps: * Open a new project in Chameleon. * Ensure the "Auto Parse" option is turned off in the Message Browser. * Paste a message that contains at least three segments into the Message Browser. * Click "Parse". * Right-click the message node and choose "Expand All". * Type in a new segment without any fields or delimiters between the two segments with fields. * Click "Parse" again. Clicking "Parse" causes an exception, producing a floating point error message. [Severity of Problem] Low [ETA of Fix] January 2008 [Affected Releases] Chameleon 4.5.1 ------------------------------------------------------------------------ #6919 ------------------------------------------------------------------------ 4) [Description] The Message Browser displays inconsistent messages for count of repeat errors in the "Segment View" and "Table View" tabs when "Strict Grammar Checking" is enabled. Note that this only affects the 4.5 parser engine (versions 3.211.245 to 4.5). In all cases the "Table View" displays the correct output; the "Segment View" output should be disregarded. [Severity of Problem] Low [Workaround] Use the 5.0 parser engine found in Chameleon versions 5.0 and later. [Affected Releases] Chameleon 4.5.1 and below. *********************************************************************** Additions *********************************************************************** 1) [Feature Description] The "Message Browser" window had been redesigned and now includes many new intuitive and useful features, including: * Auto Parse option; * Segment View tab (Message View and Grammar View); * Table View tab (Grammar View and Text View); and * Show Warnings checkbox. The "Complete Parse" option is now called "Text View" and can be found under the "Table View" tab. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #3393 2) [Feature Description] A context highlighter for HL7 data has been added to the Message Browser, which makes it easy to locate and fix problems when parsing messages. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5883 3) [Feature Description] "Auto Parse", "Auto Transform" and "Auto Translate" options have been added to the Message Browser, Transformation Window and XML Translation Window. When enabled, Chameleon will parse, transform or translate messages automatically every two seconds, or when a new message is pasted into the top pane of the respective window. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #6158 4) [Feature Description] A new "Error/Warning Pane" has been added to the "Message Browser." This error pane only appears when there are errors during message parsing. Warnings only appear if "Show Warnings" is enabled. This error pane makes it easy to troubleshoot mapping issues. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5871 5) [Feature Description] A new "XML Translation" Window has been added to Chameleon, which replaces the XML translation functionality in the Message Browser. This separate window allows you to interactively test out the available XML translation options. This new window makes it easy to convert HL7 messages to and from XML. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5702, #5853 6) [Feature Description] A "Database Table Importing Wizard" has been added to Chameleon that allows you to quickly import existing database table definitions from your database. This wizard is a significant productivity enhancement since it allows you to automatically define tables in seconds, rather than manually entering column names and data types. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #1091 7) [Feature Description] Chameleon is now supported on 64-bit Linux platforms. Although 64-bit Windows is not supported at this time, iNTERFACEWARE plans to offer support for it once there is a demand from customers. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5655 8) [Feature Description] A "status bar" has been added to Chameleon that tracks the parsing, translation and transformation progress of messages in the Message Browser, XML Translation Window and Transformation Window. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #6201 9) [Feature Description] Additional help for selecting the lowest and highest escape characters has been added to the "Options" window from the "Characters" tab. When a pre-defined choice is selected from the list, the up/down arrows will be disabled. They will only become enabled when you choose "custom" from the list. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5626 10)[Feature Description] Thread ID checks have been added to Chameleon's networking components. When calling a function for a component for the first time, the function will save the thread ID. If you attempt to use a component on a non-matching thread, you will receive an error. This feature makes it easier for you to confirm you are using the networking components correctly. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5712 11)[Feature Description] A host property has been added to the LlpServer object in the networking components. This allows the LlpServer to bind to a specific host. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #2800 12)[Feature Description] A unique id() function has been added to the LlpConnection object that allows you to identify multiple connections from the same source. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5622 13)[Feature Description] Dynamic API and XML/HL7 examples for .NET C# (2003 and 2005) have been added to Chameleon. The examples are accessible from the "New Project" window. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5782, #5788 14)[Feature Description] The "MD5" and "thread" Python modules on POSIX are now supported by Chameleon. [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5934 *********************************************************************** Changes *********************************************************************** 1) [Description] The legacy NETDLL.dll networking components have been added to the standard installation again to help customers with older applications still in circulation. Since these components are considered "legacy" and have since been replaced with NETDLL2.dll, iNTERFACEWARE cannot offer support for these components should you encounter problems with your applications. If you are creating a new application, please use the networking components described in chapter 11-7, "Chameleon Networking Components" (NETDLL2). [Severity] High [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5920 2) [Description] New registration functions were added to Chameleon: * To get the Machine ID; * To fetch a key from the registration server with the Machine ID; and * To register the host with a given code. These functions make it possible to automatically register a machine that is not directly connected to the Internet. [Severity] High [Affected Releases] Chameleon 4.5 [Tracking Numbers] #6283 3) [Description] The "Import From Library" windows have been slightly redesigned. It is now possible to import message definitions, segments and tables from local VMD files using the Import From Library windows. [Severity] Moderate [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5659 4) [Description] For new Chameleon installations, the "HL7 Simulator's" default message input directory has been changed to C:\Program Files\iNTERFACEWARE\Chameleon\messages.txt and default port number has been changed to 5123. [Severity] Moderate [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5360 5) [Description] In previous releases, all networking objects must be created and executed on one thread. A change has been made so that Chameleon applications can use multiple threads, each with its own set of networking objects. Note that each networking object must still be created and executed on only one thread. [Severity] Moderate [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5945 6) [Description] "Messages" are now referred to as "Message Definitions" throughout the Chameleon user interface, except for the toolbar. [Severity] Minor [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5959 7) [Description] The number of files shown in the "Reopen" menu (accessible from the "File" menu) has been reduced to six files. [Severity] Minor [Affected Releases] Chameleon 4.5 [Tracking Numbers] #5835 8) [Description] The Chameleon and Chameleon/Iguana installers have been changed so that .NET components are selected by default if a version of the .NET framework is detected on the machine. Command line switches have been added to Chameleon that explain how to turn the .NET component "on", or "off", since the default behavior can now be either. [Severity] Minor [Affected Releases] Chameleon 4.5 [Tracking Numbers] #6028 *********************************************************************** Bug Fixes *********************************************************************** 1) [Problem] When loading a VMD file failed, the "Save As" dialog window would not display any file types. This has now been fixed. [Severity] Moderate [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5315 2) [Problem] There was a bug in the "Message Browser" that occurred when a new segment was added, it would not be recognized when translating the message to XML. This bug has now been fixed. [Severity] Moderate [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5086 3) [Problem] There was a bug in Chameleon that resulted in an access violation when segment fields were displayed in the "Message Browser" and a segment was deleted. [Severity] Moderate [Affected Releases] Chameleon 4.0.7 - 4.1.1 [Tracking Numbers] #5658 4) [Problem] There was a bug in Chameleon with regards to null strings for some JNI interface calls. Putting null strings through certain function calls would result in access violations and VM crashes. A thorough check was performed of the JNI Java APIs to ensure that null strings are being correctly passed through the interfaces. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #6094 5) [Problem] There was a bug in Chameleon that resulted in an access violation when performing the following steps: * Open the "Debug Window." * Perform a "Complete Parse of the message in the "Message Browser." * Close the "Debug Window." * Perform another "Complete Parse" of the same message. This bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #6147 6) [Problem] There was a bug where importing messages or tables from the library caused all open windows to close. This bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #4748 7) [Problem] There was a bug in the HL7 Simulator and Listener when setting the port to a value greater than 32000. After closing and reopening the utilities, the port number would not be remembered correctly. This bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5610 8) [Problem] There was a bug in which the "Import Unrecognized Segments" message would always appear when Z-segments were not defined. As a result, the "Create Message Definition Wizard" would never be accessible. This bug has now been resolved. [Severity] Minor [Affected Releases] Chameleon 4.1.1 - 4.1.3 [Tracking Numbers] #5656 9) [Problem] There was a bug in which a renamed segment's new name would not get saved if it was already in the segment grammar. This has bug has now been resolved. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5679 10)[Problem] There was a bug in Chameleon when calling the silent installer using "chameleon_windows.exe /CHAMELEON=0". When calling the installer, "config.tbn" would not be installed, therefore, creating an engine would cause an exception. This has now been fixed. [Severity] Minor [Affected Releases] Chameleon 4.0-4.1 [Tracking Numbers] #6258 11)[Problem] There was a issue in which the trailing repeat delimiter was not cleared in the "Transformation Script" after the transformation was performed. This bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5979 12)[Problem] Changing the order of segment or table fields within the "Segment Definition" or "Table Definition" windows would cause existing inbound/outbound Python scripts to be invalid until the VMD file was saved and reloaded. This bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #6131 13)[Problem] There was a bug in Chameleon when using the "Identity" window. When clicking the "Field" ellipsis button, the field's state would be changed to the first field, even after clicking "Cancel." This minor bug has now been fixed. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #5845 14)[Problem] When using the "Transformation Window", invalid date/time formats would appear as blank fields. This bug has now been fixed so that date/time format errors are easier to locate. [Severity] Minor [Affected Releases] Chameleon Pre-4.5 [Tracking Numbers] #6015 *********************************************************************** * Version 4.1 * Build 1 * Date April 16, 2007 *********************************************************************** Chameleon 4.1 is a minor release. Please read the change log carefully to learn about all the new features and user interface changes. This page also provides details about all the other additions, changes and bug fixes. *********************************************************************** Additions *********************************************************************** 1) [Feature Description] A new window, called "Import Unrecognized Segments", has been added to Chameleon. This window can be accessed by copying and pasting an HL7 message into the top pane of the Message Browser. When parsing, any unrecognized segments can be immediately imported from Chameleon's built-in library or from an existing VMD. [Affected Releases] Chameleon 4.1 [Tracking Numbers] #1556 2) [Feature Description] A "Create Message Wizard" has been added to Chameleon, which allows you to automatically define a message and its identity directly from the Message Browser. The wizard will automatically create a new message, add an MSH segment to the segment grammar and define basic identity matching rules for your message. [Affected Releases] Chameleon 4.1 [Tracking Numbers] #5402 3) [Feature Description] Adding or deleting a configuration now results in localized "diffs". When a VMD.xml file is diffed with a previously saved VMD.xml file, a single change will now show up as one change instead of several. This means XML files saved with previous versions of Chameleon are not compatible with this version. The XML VMD file format continues to be experimental and is subject to change. Customers should continue to use the binary VMD format for production uses. [Affected Releases] Chameleon 4.1 [Tracking Numbers] #4795 4) [Feature Description] A "Message Matching Order" window has been added to Chameleon, which allows you to define the order in which messages are identified. This is useful for determining which messages you want matched first in the event that two messages share the same identity and matching rules. This window can be accessed by choosing 'Workspace' > 'Message Matching Order' from the main menu. [Affected Releases] Chameleon 4.1 [Tracking Number] #4897 5) [Documentation Description] The API documentation was significantly improved. More information has been added for various methods for each supported language. For more information, see "Language API Documentation" (ch 3-12). [Affected Releases] Chameleon 4.1 [Tracking Numbers] #4572 6) [Feature Description] The 'translate to/from XML' methods are now much more consistent across all supported languages. Any duplicate methods were also removed. All methods used to translate messages to and from xml now use the XML translation scheme saved in the vmd file. As a result, you may have to modify your application code to use the new methods. [Affected Releases] Chameleon 4.1 [Tracking Number] #5552 7) [Feature Description] The "Characters" tab in the Option window has been slightly redesigned and now includes two additional features, making it easier to escape standard ASCII characters and extended ASCII characters. [Affected Releases] Chameleon 4.1 [Tracking Number] #4786 8) [Feature Description] A "Print" button has been added to all Python Script and Python Summary windows. This allows you to print a hard copy of your Python scripts for any script associated with your VMD file. [Affected Releases] Chameleon 4.1 [Tracking Number] #4773 9) [Feature Description] A "VMD File Description" field has been added to the 'Misc' tab in the 'Options' window. It allows you to enter a short description of the VMD or enter a quick note, which will get saved as a property of the file. This allows you to easily distinguish between different versions of the file. [Affected Releases] Chameleon 4.1 [Tracking Number] #5191 10)[Documentation Description] The documentation for using the ChameleonDateTime object in Java has been significantly improved. For details, see the Java API documentation. [Affected Releases] Chameleon 4.1 [Tracking Number] #5385 ******************************************************************** Changes ******************************************************************** 1) [Description] Chameleon now offers support for special highlighting sequences: * \H\ * \N\. Other formatting sequences and character set codes are also supported. See "Special Escape Sequences" for details. [Severity] Moderate [Affected Releases] Chameleon 4.1 [Tracking Numbers] #3203 2) [Description] The "Identity" window has been redesigned. Along with a Description field, it now features two additional fields called "Name" and "Matched". "Name" refers to the name of the message, while "Matched" opens the new Message Matching Order window. [Severity] Moderate [Affected Releases] Chameleon 4.1 [Tracking Number] #5434 3) [Description] When a new blank message is added to Chameleon, the grid in the Identity window will be unavailable. To display the grid, there must be at least one segment defined in the Workspace. [Severity] Moderate [Affected Releases] Chameleon 4.1 [Tracking Number] #5510 4) [Description] The Message Browser is now automatically opened when starting an empty project. [Affected Releases] Chameleon 4.1 [Tracking Number] #5621 5) [Description] The "getRemoteHostName" method has been added to the current networking components. If possible, this method resolves the removeIpAddress to the host name using the operating system. For details, see the API documentation for your specific language. [Severity] Moderate [Affected Releases] Chameleon 4.1 [Tracking Numbers] #5606 6) [Description] Identities are now shown with a "^" delimiter between values, rather than a "-". [Affected Releases] Chameleon 4.1 [Tracking Number] #5498 7) [Description] Support for 2-digit years in the Date Time format has been discontinued. [Severity] Minor [Affected Releases] Chameleon 4.1 [Tracking Number] #5379 8) [Description] The methods that were previously used to set the incoming and outgoing configuration indexes have been removed for all supported languages. [Severity] Minor [Affected Releases] Chameleon 4.1 [Tracking Number] #5431 *********************************************************************** Bug Fixes *********************************************************************** 1) [Problem] There were issues with the way that Chameleon handled special formatting sequences, specifically with regards to "\.". In previous versions, Chameleon would leave these types of sequences alone. This was changed so that Chameleon only allows known HL7 formatting sequences to be passed through escaped/unescaped. [Severity] High [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #5051, #4786 2) [Problem] There were two issues related to this tracking number: * There was a bug with the LlpServer where a call to StopMessageLoop() would not stop the blocking call to RunMessageLoop(). As a result, the server thread would never terminate. This issue has now been resolved for all languages. * Instantiating an LlpServer on its own thread, then destroying the server and thread, and then creating a second LlpServer on a new thread would result in an exception. This bug was fixed for .NET. [Severity] Moderate [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #4868 3) [Problem] There was a bug where null strings were not being allowed for table values in .NET. This bug has now been fixed. [Severity] Moderate [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #4883 4) [Problem] There was an issue in which users could not accurately identify multiple LlpServer connections from the same source. To fix this issue, a unique ID function was added for all connection objects. For details, see the API documentation for your specific language. [Severity] Moderate [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #5622 5) [Problem] Generating stubcode when the VMD contained one table with data and a second table with no data caused Chameleon to produce a fatal exception message. This has been changed so that nothing is outputted for the second table and a warning message appears instead. [Severity] Moderate [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #5101 6) [Problem] There was a bug in Chameleon that resulted in an access violation when the grammar root of a table containing mappings was deleted. This bug only occurred when the table mapping window was open. [Severity] Moderate [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #5126 7) [Problem] The .NET stubcode example erroneously used the "short" type for the port variable. This prevented users from entering port values greater than the maximum positive int16. The example has since been changed to use the "ushort" type for C# and "integer" type for .NET. This allows users to select larger port values for the client and server. [Severity] Minor [Affected Releases] Pre-Chameleon 4.1 [Tracking Numbers] #5593 *********************************************************************** * Version 4.0 * Build 7 * Date December 1, 2006 *********************************************************************** Chameleon 4.0 is a major release. Please read the change log carefully to learn about all the new features and user interface changes. This page also provides details about all the other additions, changes and bug fixes. *********************************************************************** Additions *********************************************************************** ----------------------------------------------------------------------- Major Improvements ----------------------------------------------------------------------- 1) [Documentation Description] Documentation for the new networking components was significantly improved. The new networking components are described in chapter 11-7, "Chameleon Networking Components" (NETDLL2). Language API documentation for each supported language has also been added to the manual and is described in chapter 11. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3292, #3288, #3290, #3159, #3287, #3289, #2501, #3291, #1515 2) [Feature Description] The Table Grammar and Segment Grammar windows have been combined into one window, called the Message Grammar window; all functionality remains the same. The Message Grammar window can be accessed by clicking its icon in the Message Definition. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #2715 3) [Feature Description] The new Table Grammar panel (as a part of the Message Grammar window) provides warning and error message information in the Error/Warning Message Display. This makes it easier to troubleshoot mapping problems. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3218 4) [Feature Description] The Global Python Overview is a textual summary of all Python functions (global, messages, tables and segments) for a specific configuration within a vmd file. A "Find" function has also been added to all Python Overview and Python Editing windows. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #1689 5) [Feature Description] Tab Control has been added to the Chameleon interface, allowing the simple management of all open windows in the Working Area. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3068 6) [Feature Description] The Strict Grammar Checking feature has been completely redesigned so that more descriptive error messages are displayed. When this option is turned on, error messages that provide some context are given when a complete parse is performed. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3754, #3746, #3665, #3756 ----------------------------------------------------------------------- Moderate Improvements ----------------------------------------------------------------------- 1) [Feature Description] The Global Outbound Post Process Script is now run after converting a message to XML in the Message Browser. This allows post processing and manipulation of the data to be performed at this point. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #4020 2) [Feature Description] The Data Type columns in the Segment, Composite, Table, Mapping and Date Time windows have been redesigned and now feature new icons and more intuitive behavior. This improvement fixes issues with the previous combo box control not handling large numbers of items well. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #2726 3) [Feature Description] Proxy support has been added to Chameleon's registration library. For customers using a proxy for external internet access, this allows them to perform an automated Chameleon registration. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #1126 4) [Feature Description] It is now possible to remove table rows via Table Python scripts. This prevents your application from processing the row, or Iguana from adding the row to the database. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3571 5) [Feature Description] Column index numbers have been added to the Mapping window. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3359 6) [Feature Description] Multiple Transformation windows can now be opened in the Workspace, instead of having only one opened at a time. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #2163 7) [Feature Description] When you switched configurations in previous versions, Chameleon would close any open Composite, Segment and/or Date Time windows automatically. In version 4.0 any open windows will remain open, and their contents will be updated to display any configuration specific information (e.g. Python scripts). [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3481 ----------------------------------------------------------------------- Minor Improvements ----------------------------------------------------------------------- 1) [Feature Description] The Mapping window has been slightly redesigned. There is an "Edit" button that is used to create or edit mapsets. The current Grammar Root is also displayed and can be changed using the ellipsis button. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #4101 2) [Feature Description] The Chameleon interface now features new or redesigned icons for every window, such as the Message Identity, Stubcode Generation, Options and Transformation windows. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3164, #3051 3) [Feature Description] The Segment Validation Rules window can now be resized. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3631 4) [Feature Description] The TCP/IP error messages for the LlpClient and LlpServer have been improved to provide more informative error messages. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #3638 5) [Feature Description] It is now possible to add a new custom segment to a vmd file, even if no composites exist. However, Chameleon will prevent you from adding new segment fields for a segment definition until at least one composite is created because each segment field must have a pointer to a composite. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2823, #4428 6) [Feature Description] Chameleon now asks you if you want to save your changes if the "Escape" key is pressed from the Python Editing Script window. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2978 7) [Feature Description] When the Grammar Root Selection window is opened, the currently selected grammar root is highlighted. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2580 8) [Feature Description] The version and build numbers now appear in the Chameleon title bar. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2549 9) [Feature Description] More descriptive and useful sample messages are now generated for each client project in Java, C++, C#, Delphi, VB.NET and VB 6.0. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2546 ******************************************************************** Changes ******************************************************************** -------------------------------------------------------------------- High Importance -------------------------------------------------------------------- 1) [Description] Support for Borland BCB Builder and AIX platforms has been discontinued. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3786, #1795, #3785 2) [Description] Support for VB.NET and C#.NET 2002 has been discontinued. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Number] #4148 3) [Description] The legacy message queue components have been removed from the C++ library. The queue itself had been removed earlier. [Severity] Medium [Affected Releases] Chameleon 4.0 [Tracking Number #4145 4) [Description] The legacy NETDLL.dll networking components are deprecated and have been removed from the standard installation. All of these deprecated networking components have been replaced with the newer networking components described in chapter 11-7, "Chameleon Networking Components" (NETDLL2). Please note that any applications being upgraded to version 4.0 must be altered to use the new components. [Severity] High [Affected Releases] All Chameleon releases. [Tracking Numbers] #1806, #2635, #3515, #4892 [Details] The following [C#] networking components are deprecated: * Client * Server The following [C++] networking components are deprecated: * CHMhl7ClientSocket * CHMhl7ServerSocket The following [Delphi] networking components are deprecated: * TCHMclientSocket * TCHMhl7ClientSocket * TCHMhl7ServerSocket * TCHMllpWrapper * TCHMqueueHandler * TCHMserverSocket The following [Java] networking components are deprecated: * Client * ClientSocketListener * Connection * Hl7ClientSocket * Hl7ServerSocket * Server * ServerSocketListener * TransportTcpIpClient * TransportTcpIpServer * QueueHandler * QueueLog * QueueTransport The following [Visual Basic] networking components are deprecated: * NEThl7ClientSocket * NEThl7ServerSocket * NETllpConnection These are the new supported components: [C#] * LlpClient * LlpConnection * LlpServer [C++] * CHMllpClient * CHMllpConnection * CHMllpServer [Delphi] * TCHMllpClient * ICHMllpConnection * TCHMllpServer [Java] * LlpClient * LlpConnection * LlpServer [Visual Basic] * CHMllpClient * CHMllpConnection * CHMllpServer 5) [Description] Terminology for Python "functions" and "equations" has been changed to "scripts" throughout the Chameleon user interface and the manual. [Severity] Medium [Affected Releases] Chameleon 4.0 [Tracking Numbers] #4004, #3865 6) [Description] The installation directory structure has completely changed in version 4.0 in Windows. Although most of the changes are transparent, it is important that you read the applicable manual chapter called "Upgrading to Chameleon 4.0 in Windows" before upgrading. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #4044, #3932 7) [Description] The Chameleon and Iguana compiled help manuals have been merged into one manual. The new manual is placed into a separate "doc" directory (default directory is C:\Program Files\iNTERFACEWARE\doc). [Severity] Medium [Affected Releases] Chameleon 4.0 [Tracking Number] #3089 8) [Description] The character set string handling logic in Chameleon has been completely redesigned. This is in response to strings in Java, C# and XML not being converted correctly when messages are received. A new section in the manual, called "Character Sets" was added to explain the changes you may need to make to your application code. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3918, #4498 9) [Description] The multibyte code page in the "Characters" tab of the Options window has been removed. Since the character set string logic has been redesigned, this page was no longer required. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #4519, #4349 10)[Description] The Segment Identity and Segment windows have been combined into one window, called the Segment Definition window; all functionality remains the same. [Severity] Medium [Affected Releases] Chameleon 4.0 [Tracking Number] #3216 11)[Description] "Passthru Mapping" is now referred to as "Scripted Transformation" throughout the Chameleon user interface and manual. The "Message Function" is now called "Transformation Script" and has been moved to the "Message Definition" in the Workspace. [Severity] Medium [Affected Releases] Chameleon 4.0 and above. [Tracking Number] #3216 12)[Description] The "Insert" menu has been renamed "Workspace" and has been redesigned. From this menu it is possible to create new messages, tables, segments, composites and date time formats. In addition, messages, tables or segments can be imported from the built-in libraries. [Severity] Medium [Affected Releases] Chameleon 4.0 and above. [Tracking Number] #3589 13)[Description] The Delphi query component (querycom/qry_transport.dll) has been removed from the Chameleon installation. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Number] #2655 14)[Description] Major changes were made to the internal structure of VMD files in Chameleon version 4.0. All vmd files are now saved in an earlier format, resulting in faster serialization. [Version 4.0 Users] Any new vmds created with version 4.0 are automatically saved in the new file format. If you are using Chameleon 4.0 in a test environment and load the vmd into any 3.3 version, please review the user implications below under [Version 3.3 Users]. To avoid any unexpected problems, iNTERFACEWARE recommends that you use Chameleon 4.0 in both test and production environments. [Version 3.3 Users] Any vmd files built with any 3.3 version but saved in version 4.0 will be automatically converted to the new file format. Please also note the following: * Saving a 3.3 vmd in 4.0 will result in a larger vmd file size since it is not compressed. * Saving a 3.3 vmd in 4.0, and then re-opening it in 3.3 causes three fields to be automatically set to default: * "Disable the Python None object..." By default this is checked (introduced in 3.3.155). * "Maximum Repeat Mapping Limit." This will default to 2 (introduced in 3.3.166). * "Global Outbound Post Processing Script." This will be set to empty (introduced in 3.3.160). * All 3.3 files cannot be opened in version 3.2. [Pre-3.3 Users] All pre-3.3 users can load and save any vmds created with version 4.0. [Severity] High [Affected Releases] All Chameleon releases. [Tracking Number] #4364 15)[Description] The Transformation Window has been redesigned. The window now features radio buttons that show that two types of transformations are available: "Graphical" and "Scripted". The "Transform from" and "Transform to" options are only enabled when "Graphical Transformation" is selected. In addition, note that when the "Scripted Transformation" is selected in this window, it is set globally across all configurations. For more information on the Transformation window, see the "HL7 <-> HL7 Transformation" chapter in the manual. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #4418, #2163 16)[Description] The Unix tarball directory layout has changed. The following table describes the differences between the old and new packages enclosed in the tarball: [Old Tarball] [New Tarball] [Description] No directory existed package/bin Contains the command line utilities that come with Chameleon No directory existed package/lib Contains the static libChameleon.a library - needed for C++ package/classes.jar package/java Contains classes.jar and the shared object for the platform package/admin package/admin Contains the makefiles for the platform package/CHM package/CHM Contains the C++ CHM library header files package/lib package/python_lib Contains the Python library files. The Unix documentation has been updated accordingly as a result of the directory structure changes. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Numbers] #3966, #4656, #4785 ----------------------------------------------------------------------- Moderate Importance ----------------------------------------------------------------------- 1) [Description] The XML conversion now escape characters with ASCII values in ranges of 0-32 and 127-255. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #2669 2) [Description] The VB.NET stubcode example has been improved to properly reflect which configuration is active in the vmd when the forms are first loaded. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3932 3) [Description] The C#.NET stubcode example has been improved to display the correct configuration and to start up with the same default configuration selected. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3931 4) [Description] The C++ stubcode example has been improved to show correct indentation and better overall coding practice. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3636 5) [Description] The HL7 Listener's port range value has been extended to 65535; previously it was just 0-32000. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #2900 9) [Description] The Java stubcode example has been improved, concentrating on a simpler design and better overall coding practice. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #3187 10)[Description] The csv.py and UserList.py files were added to the lib directory and are now included in a standard Chameleon installation. These modules make it possible to bring in Python subroutines to parse comma-delimited lists in Python code in the vmd file. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #4296 11)[Description] Support for legacy table passthru mapping has been discontinued. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #4390 12)[Description] The "KeyColumnIndex" property has been removed from the table and table definition objects in C++. [Severity] Moderate [Affected Releases] Chameleon 4.0 [Tracking Number] #4451 13)[Description] When a "Regular Expression" or "Regular Expression Pair" validation rule is not properly configured, it is not invoked when a message is validated. [Severity] High [Affected Releases] Chameleon 4.0 [Tracking Number] #4376 ----------------------------------------------------------------------- Minor Importance ----------------------------------------------------------------------- 1) [Description] The Delphi stubcode example has been modified so that the server does not start listening when it is first launched. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #4125 2) [Description] The generated Java stubcode example has been modified so that it uses table grammars more intelligently. A detailed error message has also been added that would arise when a separator character is required for an undefined level of nesting. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2497 3) [Description] All "DateTime" instances have been changed to "Date Time" throughout the Chameleon user interface and manual. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #3838 4) [Description] The Font option has been removed from the "View" menu. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #3828 5) [Description] The following legacy components have been removed from the Chameleon installation: DirectDB, SVC, ControlPanel, SVC_Viewer and queuecfg. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #4111 6) [Description] The expat.dll file has been removed from the Chameleon installation since it is now statically linked to CHM_LIB3.dll. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2736 7) [Description] The error messages for table and table group naming errors has been improved to provide better context and information. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #3275 8) [Description] The width column in the Segment Grammar Definition window has been removed. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #3254 9) [Description] The "Show Field Number" checkbox has been removed from the Message Browser. The field numbers are now always 'on' by default. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #2662 10)[Description] The "Configuration" drop-down menu has been replaced with an ellipsis (...) button in the Table Mapping window. The ellipsis button allows you to add, remove or rename a mapset. In addition, the "Set Grammar Root" button has been replaced with an ellipsis(...) button, which allows you to set or change the grammar root. The current grammar root is also displayed in a text box. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #4161 11)[Description] The "Field Regular Expression" and "Regular Expression Pair" windows have been slightly redesigned, making it easier to set regular expressions and regular expression pairs. Each window also features a status bar that displays the missing characters for any invalid regular expressions. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Numbers] #4712, #4677 12)[Description] In 3.x releases of Chameleon, the "Key" column for Table definitions could be set differently across configurations. In Chameleon 4.0, the "Key" column is set globally across all configurations. [Severity] Minor [Affected Releases] Chameleon 4.0 [Tracking Number] #4474 *********************************************************************** Bug Fixes *********************************************************************** ----------------------------------------------------------------------- High Severity ----------------------------------------------------------------------- 1) [Problem] Parsing a valid XML message after parsing an invalid one would cause an access violation and an error would be thrown. This was fixed by re-instantiating the XML parsing engine after an invalid message is parsed. [Severity] High [Affected Releases] 3.3.184 and below. [Tracking Numbers] #3154, #3165 ------------------------------------------------------------------------ Moderate Severity ------------------------------------------------------------------------ 1) [Problem] There was a bug in the Linux sample client/server in which it produced an incorrect message: "Consider setting $PYTHONHOME to [:]". $PYTHONHOME is no longer required to be set; instead, use CHM_PYTHON_HOME to where the Python libraries are located for Chameleon. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #1976 2) [Problem] There was a bug in the Chameleon interface which caused the Workspace to flicker whenever a key was pressed. Chameleon's MVC architecture has been improved to fix this problem. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Numbers] #2421, #3219 3) [Problem] Invalid regular expressions in message and segment identities would prevent a vmd from being saved and loaded. This issue has been resolved. Invalid regular expressions appear in red in the Message and Segment Identity windows. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Numbers] #3834, #3694 4) [Problem] Chameleon did not allow you to open a vmd file with invalidly formatted Python code in the "Transformation Script" (formerly the Message Function). If the file was saved and closed, Chameleon would display the Python syntax error and would not continue to load the file. This issue has been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #2012 5) [Problem] Switching configurations caused Chameleon to not re-initialize each message identifier's regular expression. This caused valid message identifiers to be invalid when testing graphical transformations in the "Transformation" window. This issue has been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3976 6) [Problem] Using Java and the DynamicEngine to translate railtrack messages into XML caused a Chameleon exception. This issue has now been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3486 7) [Problem] When the parent's grammar root is changed Chameleon would change the root but the child's table root would not be cleared. This bug has now been fixed so that the child and grandchild table grammar roots are cleared if the parent's table grammar root has been changed. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3112 8) [Problem] Sending an empty message to the HL7 Listener raised an exception. This issue has now been resolved, so that the following error is raised instead: "Message is too short. It needs to be at least 8 characters to fit the header segment and encoding characters." [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3637 9) [Problem] When generating stubcode in Java the incorrect CLASSPATH and PATH were displayed in the Stubcode Generation window. More specifically, random characters or text fragments would be displayed. To fix this the PATH is no longer displayed and the CLASSPATH display has been modified to be more accurate. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3930 10)[Problem] When using the "Import All Fields" feature in Chameleon, any primitive data types would create invalid mappings. This bug has now been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3675 11)[Problem] There was a bug with regular expression pair validations in which Chameleon stored the incorrect dependent field after the rule was created. This bug has now been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3619 12)[Problem] There was a problem in Chameleon in which the difference between 0 and Null in an HL7 message could not be distinguished in Java, Delphi and C#. This was fixed by adding an isNull function. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #2464 13)[Problem] Renaming a table in the Workspace and then pressing the "Delete" key would cause an access violation. This has now been fixed. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #2499 14)[Problem] There was an issue in which external Python modules would not be re-loaded by the Message Browser when a message was parsed. This caused errors during message parsing if an external library was referenced. This issue has now been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3240 15)[Problem] When importing a message from the library into Chameleon, the message's date time dependencies would not be properly imported. This issue has now been resolved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3916 16)[Problem] When loading some vmds built with Chameleon 3.3 and below, Chameleon would throw a pre-condition error. This bug has now been fixed. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #2960 17)[Problem] Run.bat uses the current CLASSPATH to set the new CLASSPATH which can cause problems when using third party applications. This has been resolved by not including the current setting for CLASSPATH in the new CLASSPATH. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #3490 18)[Problem] Setting the "XML Translation Scheme" in the Options window to "Table - Short Tags", saving the changes and then changing the translation to "Table - Long Tags" would result in the following: "Table - Short Tags" would instead be saved as the "XML Translation Scheme". This bug has now been resolved so that the correct translation scheme is always saved. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Number] #4339 19)[Problem] Chameleon would treat field values containing an "&", followed by a "." as an HL7 formatting sequence. This meant that the correct behavior was to leave the data untouched and not escape it. This would result in erroneous messages when parsing. This bug was resolved so that when a "." is found after a character that could be escaped, it will be properly formatted using the HL7 escape character (i.e. "\"). [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Numbers] #4790, #4786 20)[Problem] There was a problem where the output from the Python log statements was not always available for the supported languages. This bug has now been fixed so that log statements are always available in C++, C#, Delphi, VB 6.0 and Java. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Numbers] #3841 21)[Problem] There was a bug in Chameleon that occurs during message generation, given the following conditions: * A table's grammar root is a field; * The first one or more columns are not mapped; * At least one other column is mapped; and * The fields have all been assigned values. When a message was generated, the sub-fields would be given a value from the wrong column in the table. This bug has now been fixed so that the sub-fields are given the values from the correct columns in the table. [Severity] Moderate [Affected Releases] 3.3.184 and below. [Tracking Numbers] #4093, #3903 ----------------------------------------------------------------------- Low Severity ----------------------------------------------------------------------- 1) [Problem] Text was missing from the instructions for the first "Import Message From Library" screen (formerly called the "Chameleon Message Wizard"). This was fixed by adding an improved description, making it easier to import a message to a vmd file. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #3031 2) [Problem] When deleting a mapset currently in use, Chameleon would display an exceptions dialog window instead of an error window. This issue was fixed by adding an error message that indicates the following: (1) the mapset cannot be deleted because it is currently being used; (2) which message is using the mapset. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #4009 3) [Problem] When generating a project from the "Stubcode Generation" window (formerly called the "Stub File Generation" window) for Linux, clicking open would display the incorrect section in the help file. This issue has now been resolved. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #4096 4) [Problem] There was a small bug occurring with double "Do you wish to save your changes to Untitled.vmd" confirmation dialog windows. This bug occurred when attempting to create a project, making a change, clicking new project, answering "no" to the first dialog and then attempting to create a new project. A second confirmation dialog window would then appear. This bug has now been resolved so that the second confirmation dialog no longer appears. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #4006 5) [Problem] Renaming a repeating or optional segment group in a message's segment grammar would result in extra "{", "[" or "<" characters being embedded in the group's name. This was fixed by eliminating any unnecessary extra characters. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #2667 6) [Problem] Pressing "F1" to display the context-sensitive help file for some screens in the Chameleon interface caused one of two things to occur: (1) the incorrect file was displayed; (2)no screen to be displayed. This functionality has now been restored. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #3379 7) [Problem] Opening a previously minimized window from the workspace while other windows were already open would cause two things to occur: (1) the window would be maximized, but (2) the wrong window would be brought to the forefront. This minor bug has been resolved so that the correct window is brought to the front. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #3228 8) [Problem] The graphics used in the windows below were incorrectly sized, causing them to appear pixelated. This minor issue has been fixed: * Import Message From Library (formerly the "Chameleon Message Wizard"); * Import Segments From Library (formerly the "Chameleon Segment Wizard"); and * Import Table From Library (formerly the "Chameleon Table Wizard") windows. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #3052 9) [Problem] After importing a segment from the library, the "Save" button would not become enabled. This has now been fixed. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #2664 10)[Problem] Pressing the "Escape" key for any window in Chameleon would not exit/cancel the windows. This functionality has been now been fixed. [Severity] Low [Affected Releases] 3.3.184 and below. [Tracking Number] #2596 11)[Problem] Choosing "Custom Configuration" in the Message Delimiters tab in the Options window, clicking "Apply", and then choosing "HL7" would result in the following: (1) All fields would reset to their defaults, but (2) the configuration would still be displayed as "Custom". In addition, the "output Segment Newlines" field would be partially cut off. This minor bug has now been resolved. [Severity] Low [Affected Releases] 3.3.184 and below [Tracking Number] #4346 ************************************************************************ * Version 3.3 * Build 184 * Date Mar/23/06 ************************************************************************ 1) More documentation added to CHMnet networking components CHMllpClient, CHMllpServer and CHMllpConnection. #1515 #2284 #2374 2) Tables, messages and segments are decorated with an asterisk if they have python code. #1689 3) A bug was fixed in the 'validation rule' dialog box whereby clicking "Cancel" and/or "Help" had the same effect as clicking "Ok". #2440 4) Fixed an obscure bug whereby after rearranging table rows, a drag/drop of table columns would be off-by-one. #2332 5) Improved readability of python equation errors. #2340 #2339 6) Listener tool now flushes log file to disk so that log file can be inspected without having to close the Listener, improving usability. #2335 7) Fixed a bug whereby Delphi 2005 compiler was incorrectly being launched. Delphi 2005 is now supported. #1685 8) New python functions have been added to the Chameleon environment: escape_char(), repeat_char(), set_escape_char() and set_repeat_char(). #2337 9) A right-click context menu was added to the python equation edit window. #2353 #1970 10) A bug was fixed in the Java stub code generation whereby arrays were mistakenly being indexed by 1 instead of 0. #1800 11) A Transorm button has been added to the toolbar, improves usability. #2288 12) A busy-wait hourglass has been added during loading examples projects, improving usability. #2220 13) A ui quirk was fixed whereby, e.g., initiating a rename of a message and then invoking insert message would cause unexpected results. #2290 14) A bug was fixed whereby changing the passthru checkbox would not cause the .vmd file to be considered changed. #2280 15) Improved exception handling in RTFtoTXT.py to catch exceptions for undefined escape chars. #2275 ************************************************************************ * Version 3.3 * Build 183 * Date Mar/09/06 ************************************************************************ 1) loadFromMemory is now fixed. Can load ARC and TREBIN files. #1390 2) Misc UI enhancements (menu enhancments, more busy cursors, etc...). #2302 #2220 ====================================================================== Chameleon 3.3 build 182 (GA) ====================================================================== ************************************************************************ * Version 3.3 * Build 182 * Date Mar/03/06 ************************************************************************ 1) Include change_log.txt release notes. ************************************************************************ * Version 3.3 * Build 181 * Date Mar/03/06 ************************************************************************ 1) Minor misc UI bug fixes; #2222 #2220 #1692 #2183 #2250 ************************************************************************ * Version 3.3 * Build 180 * Date Mar/01/06 ************************************************************************ 1) Fixed a number of UI holes that allowed creating invalid message definitions, mostly having to do with duplicate names. #2130 #2172 #2188 #2189 #2222 ************************************************************************ * Version 3.3 * Build 179 * Date Feb/27/06 ************************************************************************ 1) Chameleon IDE now handles compile errors in python code in a more graceful manner. #2012 2) Chameleon IDE now supports Visual Studio .NET 2005 and .NET Framework 2.0. #1170 #1332 #1807 3) The Chameleon build number is now accessible via Windows File Explorer's 'File Properties' dialog box under the 'Version' tab. #1989 4) Fixed bug in passthru functionality. #2042 5) Chameleon IDE now supports Borland Developer Studio 2006. #1857 6) Fixed bug in msgtransform. #1824 7) Fixed bug in simulator having to do with repeating MSH segments. #1794 ************************************************************************ * Version 3.3 * Build 176 * Date Feb/01/06 ************************************************************************ 1) A start/stop/restart bug was fixed in the new server networking component. [#1908] 2) Generating Linux C++ from Chameleon IDE now generates stub code against the new network components. [#1928] ************************************************************************ * Version 3.3 * Build 173 * Date Jan/23/06 ************************************************************************ 1) change_log.txt now contains list of known issues. [#1449] 2) Chameleon now uses Nullsoft Installer System (instead of WISE installer). [#1808] 3) The password field in the Options->DB tab is now masked. [#1566] 4) There is a new license registration component that allows a client to programaticaly license and register a Chameleon installation over the Internet. [#1119 #1724] 5) A bug was fixed that caused the server network components to occasionally crash the Visual Basic IDE in design mode. The fix in build 171 only fixed the client components. [#1353] ************************************************************************ * Version 3.3 * Build 171 * Date Jan/12/06 ************************************************************************ 1) Update: The LoadFromMemory function was erroneously removed from build 3.3.144. This function has been restored. Tracking Number: #1390 2) Problem: Using VB6 networking components would periodically cause the VB IDE to crash. Symptoms: 1. Running the client.vbp causes the connection to hang. 2. A timeout occurs after a few seconds. 3. Closing the client causes the VB IDE to crash. Status: Fixed Tracking Number: #1353 3) Update: Added dialog window to warn users that VMD files created in 3.2 (and lower) will no longer be compatible once saved in 3.3. 4) Documentation: Chameleon troubleshooting section was updated to reflect the above change. 5) Update: Added right-click Properties option for any object in the workspace. Tracking Number(s): #1379, #1252 ************************************************************************ * Version 3.3 * Build 170 * Date Nov/24/05 ************************************************************************ 1) Update: Added RTFtoTXT.py file for converting a string var containing RTF to plain text. 2) Problem: Long data strings are truncated when transformed in the Test Mapping window. Symptoms: 1. Long data string parses correctly in the Message Browser but not in the Test Mapping window. 2. Defining and applying a Python equation for the segment still does not parse the field correctly. 3. Using Python does not return a string greater than 983 characters. Status: Fixed Tracking Number: #1365 3) Update: The Legacy tab in the Options window has been removed. All Legacy tab functions have been moved to the Misc tab. Tracking Number: #1371 4) Documentation: DB and Misc tab sections were updated. Tracking Number: #1371 5) Documentation: More FAQs were added to the troubleshooting section. Tracking Number(s): #637, #652, #946, #956, #1196, #1229 and #1231 6) Fix: The msgdiff tool now generates html that is Mozilla Firefox compatible. 7) Fix: Issue where Python functions may not run with VMD files in multiple configurations. 8) Fix: Issue where HL7->XML conversion could result in invalid characters prefixing data. ************************************************************************ * Version 3.3 * Build 169 * Date Oct/24/2005 ************************************************************************ 1) Fix: IDE is opened after the "dynamic wizard" has run. This does not affect opening after stubcode generation. ************************************************************************ * Version 3.3 * Build 167/168 * Date Oct/17/2005 ************************************************************************ 1) Fix: New VMD files will have Python 'None' functionality in table equations disabled by default. 2) Fix: ODBC error messages from the Python database object did not throw meaningful error messages if the messages were from binding. ************************************************************************ * Version 3.3 * Build 166 * Date Sep/30/2005 ************************************************************************ 1) Fix: Resolved issue where Python namespace could be shared across multiple engine instances resulting in potentially shared Python variables between the engine instances. 2) Fix: Exposed parameters for errors in Java (this is used in Validation Rules). 3) Fix: Mapping repeating fields from a segment where the grammar root was set at the segment level, would allow mapping only from the first two (2) repeats. This limit is now configurable in the GUI, under the Options->Misc tab. 4) Fix: When doing passthru-mapping, within the global inbound function, performing "value = xx" would have no effect on the message, therefore inbound message strings could not be pre-processed before being passed to the passthru-mapping Message Function. ************************************************************************ * Version 3.3 * Build 164/165 * Date Sep/8/2005 ************************************************************************ 1) Fix: Deadlock issues with multiple engines and multiple threads loading vmd files, related to a previous fix (see changes in 3.3 Build 149) 2) Feature: Added support for MySQL 5.0 ************************************************************************ * Version 3.3 * Build 162 * Date Aug/31/2005 ************************************************************************ 1) Fix: POSIX NETDLL2 (new networking components) support added. (See 3.3.146) ************************************************************************ * Version 3.3 * Build 161 * Date Aug/30/2005 ************************************************************************ 1) Fix: Fixed issue where python functions may not be compiled ************************************************************************ * Version 3.3 * Build 160 * Date Aug/24/2005 ************************************************************************ 1) Fix : Memory leak issue in the Delphi interface, where the Message object is not freed if an exception is encountered. ************************************************************************ * Version 3.3 * Build 160 * Date Aug/24/2005 ************************************************************************ 1) Feature : Added Outgoing Post Process Function, which runs Python code after a message has been generated. ************************************************************************ * Version 3.3 * Build 155 * Date Jul/27/2005 ************************************************************************ 1) Feature : New (empty) vmd files will disable legacy (i.e. enable new) features by default, such as table python equation nullness behavior, and python validation rules. See the Legacy tab in Options. 2) Fix : The cursor automatically appears in the Python editor window now. Previously, users tend to click in the editor window to get the cursor to appear, except the cursor appears in the column where you clicked, which is usually bad due to space-sensitivity. 3) Fix : Issue where segments that were imported may cause an exception if a message using them was deleted. 4) Fix : The Python 'None' feature for table equations is now optional. This was done because the feature is not backwardly compatible. 5) Fix : Simulator and Listener made more robust by using the new networking components. (See 3.3.146 for description of new networking components) 6) Fix : Memory leak in simulator since memo control was not truncating data. 7) Fix : Issue where invalid or empty python code was mistaken for compiled code, which caused errors in the python interpreter, resulting in shutdowns and access violations. 8) Fix : Issue where C# stub code generation compiler output was not redirected to callback when an error occurs. 9) Fix : Memory leak issue in the Delphi interface, where the table object is not freed if an exception is encountered during parseMessage ************************************************************************ * Version 3.3 * Build 154 * Date Jun/29/2005 ************************************************************************ 1) Fix : Issues with registration to allow for more tolerant registration code entry (strip white spaces, etc) 2) Fix : A bug where the field name in the error report was not properly being indexed. 3) Fix : Issue where the Message Browser did not reload python modules, making editing and testing of external python modules very difficult. Now, every "Parse"/"Complete Parse" in the Message Browser reloads all python modules before performing the parse. ************************************************************************ * Version 3.3 * Build 152 * Date Jun/23/2005 ************************************************************************ 1) Fix : Memory leak where the XML translation component would leak memory on reload of a vmd file. 2) Fix : Issue where table, message and column names allowed special characters which caused problems with stub code not compiling and SQL statements being invalid (in context of Iguana). The rules for this replacement of special characters are: i) Only allow alpha numeric and underscores. ii) Replace spaces in center with underscores and strip either end. This is applied when the user edits a name and when the VMD file is loaded. NOTE THAT THIS CHANGE WILL TRANSPARENTLY CHANGE THE NAMES OF TABLES AND COLUMNS IF INVALID CHARACTERS ARE PRESENT. If there are any concerns as to the validity of table and column names in the vmd file it is safest to: i) Load the vmd file, save it again. ii) Regenerate your stub code and recompile. 3) Feature : Save AS XML functionality has been added. This feature is experimental. 4) Fix : Issues with Save As, so that vmd files and XML files cannot mix extensions. Saving a file as test.vmd as XML should result in a test.xml file being saved instead (and the reverse is true for .xml->.vmd files). 5) Fix : Issue where Machine ID could be incorrectly generated for Solaris ************************************************************************ * Version 3.3 * Build 151 * Date Jun/10/2005 ************************************************************************ 1) Fix : Issue in java where strings were always assumed to be in UTF8, instead of using the current code-page which may not be UTF8, resulting in null strings being generated instead of an exception. 2) Fix : Issue where new networking interface would not inherit socket handles between sub processes and the parent process. (See 3.3.146 for description of new networking components). ************************************************************************ * Version 3.3 * Build 149 * Date Jun/6/2005 ************************************************************************ 1) Fix : Access violations now will end the program instead of pronouncing "Unhandled Exception" as an exception. This allows use of an external debugger to report errors to iNTERFACEWARE. 2) Fix : Major issue where some static objects were not thread locked, this would mean that initialization of these objects could conflict if more than one thread created the first instance of an engine, or load a vmd file, at the same time. 3) Fix : Removed naming of chm_python.dll since it is possible for some applications to require the use an installed Python (python.dll), which would result in 2 python dll's loaded, which causes errors with initialization and running of python code. Reverted to naming python.dll. The loading of python is now dependent on which python.dll appears first in the PATH environment variable. ************************************************************************ * Version 3.3 * Build 147/148 * Date Jun/2/2005 ************************************************************************ 1) Fix : Issues with LLP parsing to allow parsing of very short messages (multiple LLP messages per socket read call). The fix is only effective when using the new networking components (See 3.3.146 for description of new networking components). 2) Fix : Access violation that would happen when one thread creates a window, and another tries to destroy it as can be done during initialization and shutdown of C# applications 3) Fix : Changed naming of python.dll to chm_python.dll to prevent usage of external python dll (eg, Winnt/System32/python.dll) ************************************************************************ * Version 3.3 * Build 146 * Date May/26/2005 ************************************************************************ 1) Feature : New networking components: To handle several issues with networking, a new set of LLP network components have been developed. These have the features of: * No networking thread, windowed applications will receive events on the same thread as the window event loop (this is true for C#, C++ windowed apps, VB6, Delphi). This reduces thread related issues. * Non-windowed applications will have to run a runMessageLoop function that dispatches the events. * LLP wrapper characters are now redefinable. Hence, components have changed from the form hl7serverSocket/hl7clientSocket to llpClient/llpServer across all languages. This does NOT break functionality of older components, however, fixes and features will only be applied to the newer components. In order to see these new components, please open a vmd file and generate an entire project, and review the generated code. Documentation for the new components are also available in the manual, under Language Api Documentation -> Chameleon Networking Components. 2) Fix : Added code to convert embedded NULL characters into spaces for LLP messages. 3) Fix : Issue where crashes occurred in VB COM usage because of reference counting problems. 4) Fix : A bug that could occur when changing a message's segment grammar where multiple copies of a segment could appear. 5) Fix : Engine.Log issue where log was using a global instance instead of a per-engine instance. These are affected changes to Delphi, C++ and java. 6) Fix : The Data Type drop-down box, which previously displayed the available data types in a random order, now displays them alphabetically. This change applies to the mapping window, the segment and composite definition windows, the table window, and the message identity window. It does not apply to the DateTime definition window, since those types are already sorted in a sensible order. 7) Fix : An exception that would be thrown whenever the user tried to move rows in tables, segment or composite definitions, or mappings in the Chameleon GUI. 8) Feature : Added colorized Python Editor for editing of all Python code. ====================================================================== Chameleon 3.3 build 143 (GA) ====================================================================== * Version 3.3 * Build 143 * Date May/9/2005 ************************************************************************ 1) Fix: Resolved issues in the XML translation with 'Table - Short Tags' and 'Table - Long Tags' XML formats. 2) Fix: Resolved some issues that prevented VMD files with multiple configurations from loading properly. 3) Fix: Python equations would not work until the VMD file was saved and reloaded when importing a table. * Version 3.3 * Build 142 * Date April/13/2005 ************************************************************************ 1) Fix: Fixed a memory leak with the implementation of the toString() method located on the Table object in the C# stub code interface. * Version 3.3 * Build 141 * Date April/12/2005 ************************************************************************ 1) Fix: Fixed user permissions issue so that non-admin user accounts on Windows can safely invoke Chameleon. 2) Fix: Resolved a backward compatibility issue with the new serialized VMD file format. * Version 3.3 * Build 140 * Date March/24/2005 ************************************************************************ 1) Documentation: Added two brand new Chameleon tutorials. One for receiving HL7 and one for generating HL7. These have replaced the old tutorial. 2) Fix: Backward compatibility issues with old VMD files have been resolved. 3) Fix: Improved performance of Message Browser. Large messages are now editable. 4) Fix: Issues surrounding multiple mapsets for a single table existed in the last major release. These have been rectified. 5) Fix: Multiple configurations were not working properly in the last major release. Deleting configurations and members of configurations could impact the behavior of other, supposedly unrelated, configurations. These issues have been resolved. 6) Fix: Resolved error when selecting to create a new VMD project with an existing one already open. 7) Fix: The 'Strict Grammar Checking' algorithm now correctly identifies an error when the number of field/segment repeats is greater than the maximum allowed. 8) Fix: When importing a message from the library, the segment grammar window did not properly display the word "Message" in its label. * Version 3.3 * Build 135 * Date January/7/2005 ************************************************************************ 1) Fix: Initial File->Save occasionally resulted in an error message being displayed instead of the expected Save As dialog. The root cause of this issue has been identified and the defect has been removed. * Version 3.3 * Build 134 * Date January/6/2005 ************************************************************************ 1) Fix: The "Clear Mapping" context menu item used to clear an existing table mapping was not working correctly. This has been resolved. * Version 3.3 * Build 128 * Date November/26/2004 ************************************************************************ 1) Fix: Expanded XML format now does escaping of HL7 like \\T\\. 2) Fix: Previously a repeating field's data would only be retrieved if the repeat count was set at -1 or >0. Now, it is always retrieved, unless strict grammar checking is on, and the grammar repeat value is smaller than the actual number of repeats. * Version 3.3 * Build 65 * Date October/8/2004 ************************************************************************ 1) Feature: Improved performance of the makeMessagePrintable() method. Was seeing less than optimal performance with the old implementation in the Java stub-code. Note that this method is no longer a static member of the Engine. 2) Fix: Fixed bug where Chameleon was not able to correctly read the PATH variable if it was greater than 1024 bytes This meant it didn't detect the JDK. 3) Fix: An issue with the Lower Layer Protocol character buffer had the potential to result in one byte of lost data from incoming HL7 messages has been identified and resolved. 4) Fix: The HL7 Simulator tool was not handling non-HL7 data gracefully when expecting an ACKnowledgement message. This issue has been resolved. * Version 3.3 * Build 24 * Date September/15/2004 ************************************************************************ 1) Fix: Fixed bug with command line generation of Delphi code. It is now possible to do this generation quietly without any prompt dialogs. 2) Fix: Bug in pull-down selection menu item used for inserting segments in the User Interface has been discovered and remedied. * Version 3.3 * Build 1 * Date September/1/2004 ************************************************************************ 1) Feature: The internal data structures used to represent the contents of a Visual Message Definition file (in memory and on disk) have been completely revamped so as to maximize Chameleon's extendability and to optimize its performance. These internal changes will not effect the external workings of the application (user tasks are to be carried out as they would be in the regular release version). Every effort has been made to make these changes backwardly compatible. You will still be able to open files from older versions of chameleon. However, files saved with this version cannot be opened by older versions of Chameleon. 2) Fix: Issue in generated stub code for Visual Studio C++ .NET 2003 has been resolved. 3) Feature: Ability to save VMD file in an XML format instead of the normal binary format. 4) Feature: Can import tables from existing VMD files. * Version 3.220 * Build 174 * Date August/27/2004 ************************************************************************ 1) Fix: Added two functions to fix Borland C++ Builder 6 linker issue * Version 3.220 * Build 166 * Date August/24/2004 ************************************************************************ 1) Fix: Resolved minor issues with resize behavior in the validation rules dialog box. 2) Feature: Added connection 'hard close' method to the HL7serverSocket class. * Version 3.220 * Build 153 * Date August/20/2004 ************************************************************************ 1) Fix: Adjusting certain delimiter values in the options dialog had the potential to result in access violations in the user interface. The issue has been resolved. * Version 3.220 * Build 72 * Date July/27/2004 ************************************************************************ 1) Feature: More efficient implementation of LLP over TCP/IP. 2) Feature: Improved C# generated example. 3) Fix: Fixed error that would occasionally result in an exception when starting Chameleon. * Version 3.220 * Build 18 * Date July/12/2004 ************************************************************************ 1) Feature: Addition of two Python methods to the Environment object that allow for conversion date/time values (which are represented as a double) between the double representations and string representations. See Python documentation for details. 2) Feature: Generated stub code DLL for .NET which used to always just be called CS_STUB.DLL are now named using the specified stub code generation prefix. This allows you to reference multiple sets of stub code from a single .NET application. However, existing customers who regenerate their stub code using this release (and above) will have to take this name change into account. * Version 3.212 * Build 530 * Date June/22/2004 ************************************************************************ 1) Feature: Added two methods to the Python Environment object to allow conversion of a date value (stored internally as a floating point number) to a string value. See Python documentation for details. * Version 3.212 * Build 525 * Date June/18/2004 ************************************************************************ 1) Feature: Added support for native Oracle interface so that Python code can now access your Oracle database natively. * Version 3.212 * Build 481 * Date May/26/2004 ************************************************************************ 1) Feature: Ability to execute queries (select, update, etc.) against a database from within Python code added. See the Python section of the manual. Start by reading about the Environment variable and continue to read about the new Database object. 2) Fix: Bug in XML generation associated with empty composites and escaping resolved. 3) Documentation: Added documentation on the Python Environment variable used in passthru mapping, database manipulations. * Version 3.212 * Build 360 * Date April/15/2004 ************************************************************************ 1) Fix: Updated networking interface so that it is fully backward compatible with the old TCP/IP architecture (ie. clients who have developed code against the old TCP/IP implementation do not need to modify their code) * Version 3.212 * Build 356 * Date April/12/2004 ************************************************************************ 1) Fix: Chameleon was hanging during C# stub code generation. 2) Fix: Outputting of XML short and long table format was not working correctly due to an error in the date/time formatter. 3) Documentation: Corrected some typo-s in the documentation. 4) Feature: can now get the machine ID for Chameleon from the GUI's about box. 5) Feature: mapping the first repeat of a repeating field no longer results in an alarming red message on the mapping. * Version 3.212 * Build 332 * Date March/30/2004 ************************************************************************ 1) Fix: Ensured escaping of group names in full tree xml schema generation. * Version 3.212 * Build 330 * Date March/29/2004 ************************************************************************ 1) Note: Machine IDs on Unix-based systems may be different from previous releases. Contact iNTERFACEWARE at support@interfaceware.com for new registration codes. 2) Fix: Disallowing invalid characters from appearing in XML tag names (affects XML generation) 3) Fix: Issue with lost tags resolved in XSD generation * Version 3.212 * Build 323 * Date March/25/2004 ************************************************************************ 1) Feature: Chameleon now available for Mac OS X. 2) Fix: Making it so that the msgdiff tool will work correctly with repeating fields inside a segment. * Version 3.212 * Build 313 * Date March/17/2004 ************************************************************************ 1) Fix: Resolved issue of group tags not generating on XML Standard Version 2. 2) Documentation: Added section to the manual on migrating from the old C++ interface to the modified one. * Version 3.212 * Build 312 * Date March/16/2004 ************************************************************************ 1) Feature: C++ interface has been simplified. This will require users who implement using the C++ stub code interface to adjust their code accordingly. We've removed all stream objects and stream related functions and replaced them with functions that deal with CHMstring objects. Ex. printOn() methods have been replaced with dump() methods. This change was performed due to changes in the ANSI standard regarding support of ostreams, which has been deprecated by most major compilers. * Version 3.212 * Build 301 * Date March/9/2004 ************************************************************************ 1) Feature: Altered the behavior of full tree validation when generating XML. No longer uses the message identification information for the root node tag name. * Version 3.212 * Build 294 * Date March/9/2004 ************************************************************************ 1) Fix: Resolved issue when setting python values programmatically. * Version 3.212 * Build 291 * Date March/8/2004 ************************************************************************ 1) Fix: Strings sent from Java stub code to our core C code are now explicitly null terminated. No longer rely on Java layer to do this. 2) Fix: If a value was set to equal "" in the outgoing equation, the generated message would be invalid. Issue resolved. * Version 3.212 * Build 282 * Date March/1/2004 ************************************************************************ 1) Feature: Internal restructuring to further streamline code base implementation. Dynamic vs. static linking against core libraries. 3) Fix: There was an error with setting the value of a 0 index subfield in the Python outbound equations. This issue has been resolved. 4) Feature: Java documentation now being regenerated for each new build. * Version 3.212 * Build 241 * Date Feb/4/2004 ************************************************************************ 1) Fix: Double types were improperly formatted in the last few builds (using scientific notation) - this formatting issue has been resolved. 2) Fix: Streamlining modifications carried out in build 209 resulted in spurious access violations - issue resolved. * Version 3.212 * Build 228 * Date Jan/30/2004 ************************************************************************ 1) Feature: Added method to the Java API to allow for programmatically setting a Python variable: setPythonKeyValuePair * Version 3.212 * Build 227 * Date Jan/30/2004 ************************************************************************ 1) Fix: Chameleon was handling segment field repeats set to -1 incorrectly. The correct behaviors is to treat such fields as having no upper limit on repetition. Since this was not happening, mapping from HL7 2.5 segments (which has many fields set to -1 repeat value) was sometimes producing erroneous results. 2) Feature: Improved file I/O handling. Used for logging and in the HL7 simulator and listener tools. * Version 3.212 * Build 209 * Date Jan/22/2004 ************************************************************************ 1) Feature: Considerable memory management optimizations in the parsing engine. 2) Fix: Resolved parsing problem. If a non-repeating segment occurred inside a repeating group, it used to be possible for this to be erroneously represented as a repeating segment. This only effected users who had the "allow orderless parsing" box checked under options. 3) Documentation: Added section on how to map values out of repeating fields. * Version 3.212 * Build 196 * Date Jan/12/2004 ************************************************************************ * Version 3.212 * Build 190 * Date Jan/07/2004 ************************************************************************ 1) Feature: Revised the example Java code that's created by the code generation wizard. Now uses the new networking architecture. * Version 3.212 * Build 186 * Date Jan/06/2004 ************************************************************************ Listed below are some of the improvements (in addition to low-level optimizations) found in the current release, not found in the previous version of the product: 1) Fix: Removed tooltips from the message browser tree. Tooltips were obfuscating tree items. 2) Documentation: registering Chameleon from the command line. 3) Documentation: generating ACKs with special delimiters. 4) Fix: Updated the Delphi interface to expose XML translation capabilities. 5) Feature: Added extra functionality to handle conversion from UTF8 encoded strings if conversion to native code page fails. This fixes string conversion issues in Java on windows and unix platforms. 6) Feature: Added HL7 2.5 standard to the message library. 7) Feature: Introduced a "Standard Version 2" XML conversion flavor that is in line with the HL7 organization's most recent XML encoding standard. Is set as the default translation type. 8) Feature: New command line tool, msgxml, to handle xml translation tests. This functionality has been removed from the msgtransform tool to provide for a more streamlined implementation. 9) Fix: Improvement of the TCP/IP infrastructure. 10) Fix: Removed problem associated with character escaping during XML generation. 11) Documentation: Enumeration of the supported Python libraries. 12) Feature: Provision of additional diagnostic information, such as the build number, to generated exceptions. 13) Fix: Delphi stub code improved to better handle exceptions. 14) Fix: Removed bug in XML translation logic. Each engine instance now maintains independent conversion information. 15) Feature: DB direct can now parse messages that contain segment and group repetition. That is, table groups and multiple rows are permitted during inbound processing. 16) Feature: Support added for programmatically setting the Python library search path on the C++ Engine object interface. 17) Fix: Various minor operational improvements with respect to the DB Direct component. 18) Feature: Improved exception reporting inside Python functions. 19) Feature: Improved file format handling in the Simulator application. Is a lot less specific about the form (as far as delimiters - carriage returns Vs. line feeds etc.) of the input file. 20) Feature: No longer have to restart system on silent install. 21) Fix: Changed the generation methodology so that required segments are generated even if they have no data. 22) Documentation: Added Delphi X12 837 parsing example. 23) Documentation: Added Java X12 837 parsing example. 24) Documentation: Added documentation on building a BCB 6.0 application. 25) Feature: Added a setPythonVariable method to the C++ Engine interface. 26) Feature: Added support for situational python validation. See documentation in product manual. * Version 3.211 * Build 292 * Date Sep/11/2003 ************************************************************************