------------------------------------------------------------------------ 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. *********************************************************************** Known Chameleon Issues *********************************************************************** ----------------------------------------------------------------------- #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 *********************************************************************** * 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 ************************************************************************