Video Demos
Free HL7Connect Videos Did you know that we have some video demonstrations to ease you into HL7Connect?

Click here to see them!




HL7Connect Version History


Click here to return to Trial Download Information page

2.00-063: SQLServer Query Timeout 9/10/2015

  • Add configuration option for setting SQL Server Query Timeout

2.00-062: SSL changes 9/10/2015

  • Due to ongoing tightening of the rules around SSL, HL7Connect no longer offers a "Create a self-signed Certificate". The CA certificates used to sign the certificate must be provided as part of the SSL set up. If you are already using SSL, this will beed to be changed as part of this upgrade

2.00-061: Minor enhancements 5/23/2014

  • IMPORTANT: under some circumstances, the OnInterfaceStop script would not execute (not for TCP/IP interfaces, but for other interface types). This has now been fixed - the interface stop script will always run
  • Added Support for Azure databases (just configure as a MSSQL Server 2012 database using details as provided by Azure system)

2.00-060: Additional bug fixes and minor features 5/23/2014

  • Added the ability to only show interfaces in error status on the home page

2.00-059: Multiple bug fixes and security improvements 5/22/2014

  • Fixed a bug in FindRepeat - was reporting the 2nd repeat as 0 instead of 1 (and all the rest downshifted by one)
  • Both batch headers and footers were being process wrongly (no date in headers, trailing counts repeating fields instrad of updating properly). This has been fixed
  • Updated to the latest version of openSSL, and generally tightened security against SQL injection & cross-site scripting attack by authorised users
  • Added "RetryCount" to a file interface - the number of times to try handling each derived message before giving up and going onto the next one. That is, given that a message can be extracted from the file, how many times will the kernel try to process it before moving onto the next one? Default value is 0, which was the only possible value prior to this
  • Fixed logic for firing notifications - in the past, the notification would fire if the fail count exceeded the value set (in send control) - if it wasn't 0. So there was no way to get notified on the first failure. From now on, the notification will be fired when the count hits the specified value, not when it exceeds it
  • Added the ability to specify a batch file as the script. Procedure name is the default folder when the script is executed
  • Added the ability to run a script when downloading messages (can be very slow)
  • fixed a bug in navigation if more than 10,000,000 messages exist in the database

2.00-058: Allow for SMSCentral to use a proxy 6/17/2012

  • Added the ability to configure a proxy when sending SMS messages via SMS central

2.00-057: Script on Notification 5/30/2012

  • Added the ability to have a script respond to a notification

2.00-056: Scheduling Interfaces, Add new User privilege level (Monitor) + IE10 fix 3/14/2012

  • Added a new user privilege (Monitor). Users of this kind can monitor interface status and start and stop interfaces. Users at this level can be restricted to only see some interfaces
  • Add the ability to schedule interfaces - interfaces can now be configured to run only at certain times of the day
  • Minor fix for IE10 support
  • Added TDateAndTime.ReadDateStrict to allow dates not be fixed if they are before AD100

2.00-055: Bug fixes + add salt to hashed password 3/8/2012

  • Added Filename to OnConvertEvent to access the original name of the file being converted
  • Fix timezone correction bug in .AsDateTime on v2 content, fix error where AsDate includes time information when it shouldn't
  • Passwords were stored in an encrypted form, but this form had become quite weak since first implemented. Updated password storage to latest standards (salted, hashed)

2.00-054: Upgrade Procedure Patch for very old versions of HL7Connect 11/3/2012


2.00-053: ATNA Service Implementation 10/8/2012

  • HL7Connect can now act as an ATNA service (See global configuration)

2.00-052: Support Version 2.7 + CDA Extensions 9/29/2012

  • Add support for v2.7, fix other minor issues in the v2 definitions
  • Fix bug in HL7Message.ChangeVersion (works now)
  • Add support for sending messages from development environment in server mode
  • Add support for CDA extensions

2.00-051: OID Synchronisation 7/19/2012

  • Introduce OID subscription service (see global options).

2.00-050: Fix bug in path 7/9/2012

  • The option "mmm" in a file path date specifier failed for Dec. Fixed.

2.00-049: Minor new option in File Paths 7/7/2012

  • Added new syntax to use sub-strings in a file path

2.00-048: Minor bug fixes 6/12/2012

  • This version of HL7Connect introduces several new stability related features, including stability related bug fixes, and notifications in the logs when the database server goes down
  • The notification list that should occur when an interface fails had become unhooked. Fixed
  • From now on, double clicking a file in Windows Explorer will not start a new instance of the developer if one is already running
  • Bug 72 (File processing messages in the log): New option added to suppress the internal file process messages from the debug log

2.00-047: Added Conversions (see under Administration) + bug fixes 4/23/2012

  • Conversions are scripts that convert from one format to another without consideration of the transaction context. Because they don't know anything other than what is in the message, or document, they can be a little restricted in functionality. However for the same reason, they are easy to use, and can be executed directly using an http call to HL7Connect - a way to get HL7Connect to do pure format conversions lightly
  • Added "DisplayForCode" as a shortcut to CommonDataCell in the HL7 scripting library. If a component or field attached to a table has a code that is in the HL7 table, this will return the defined display or print name for the code
  • Updated the MySQL connection layer to support recent changes to MySQL protocol ("bad handshake" error)
  • Fixed a bug where the database server going down (with some MSSQL configurations) would cause HL7Connect to get into a state from which it couldn't recover

2.00-046: Support for reading/writing XML files + Bug fixes: Unicode safety, file overwrite mode, GuidAsOid 3/17/2012

  • This version introduces direct support for reading and writing XML files. The XML files need to be converted to and from HL7 v2 messages by a script. The script uses the msxml IXMLDOMDocument2 interface to interact with the XML.
  • In order to work around differences between Unicode and HL7 v2 ASCII (which are encountered inside the scripting engine), any characters with ASCII values < 32, (except for tab character - #9) will be silently dropped from the contents of a field/component/subcomponent when accessed using .AsString
  • The interpretation of File overwrite/append was backwards. This has been fixed - review existing file interfaces to see whether the interface configuration needs to be fixed
  • An arithmetic bug in the script routine GUIDAsOID routine was found and fixed which changes the values produced by the function. If the old routine of the function is still needed to reproduce old OIDs, it can be accessed using GUIDAsOIDOld
  • Bug 64 (Behaviour of bookmark to "resend" page): The target destination is now remembered when the message selection criteria is changed

2.00-045: Minor Bug fixes 2/27/2012

  • Added support for migrating configuration packs across versions
  • Fixed Bug where interfaces would disappear from the status page if there were two interfaces in the same group spelt with different case (upper/lower case)

2.00-044: SQLServer 2012 support + minor bug fixes/feature requests 2/27/2012

  • Added Support for SQLServer 2012
  • Bug 62 (Line feed missing from end of error log entries): Added line feed
  • Bug 60 (Msg key are filter criteria in Message browser msgbr.ksp): The problem was that the notifications only included message id, and there was no obvious way to get to the message in the UI. Notifications now include the message id
  • Bug 67 (procedure SendEmail can not specify a custom SMTP port): Added SendMailEx and tested with GMail
  • Bug 11 (Tighter Integration between Development and Service): You can now generate new test cases directly off the interface configuration

2.00-043: Important Bug Fixes - take note 2/22/2012

  • Introduced new properties and methods on TReceiveMessageEvent: SetErrorCode and ResponseCode
  • Found and fixed two bug that would lead to corrupted memory.

    • Anytime a browser disconnected from HL7Connect when it was sending an image, if and only if the headers had already been sent
    • When messages were rejected, and held for resending, tracking memory could become corrupt

    These bugs have existed from the earliest beta versions of HL7Connect.

  • Bug 69 (HL7Connect wrongly returns AE instead of AR if there is an internal exception.): This bug is fixed, but the fix CHANGES default behaviour. In the past, when HL7Connect had an internal exception, it would return an AE code. This occurred in both incoming interfaces, and also internal exceptions on outgoing interfaces, where the code is returned to HL7Connect, or to the source interface in pass-through mode. The default behaviour is now conformant with the HL7 standard - to return an AR code (see bug details). This means that the behaviour of existing interfaces will change on this upgrade. You can change back to the old behaviour by setting the "Ack Code for Internal Errors" flag on HL7 v2 interfaces

2.00-042: SMS Subsystem complete 2/4/2012

  • HL7Connect can send and retrieve SMS messages, and scripts can be used to integrate SMS message flows into HL7Connect. Unfortunately, because there is no web/SMS gateway standard, each SMS message service provider must be implemented seperately. Contact support@hl7connect.com to discuss support for additional providers.

2.00-041: Enhanced Status Page 2/3/2012

  • Add ability to specify which interface audit events to log
  • Enhanced status page, suitable for when there are many interfaces
  • Bug fix: fixed virtual queue sending to outgoing interface (wasn't working) + added ability to perform this from web interface (used to be only in scripts)
  • Add ability to write to a custom log file from a script (for longer retention). See the script routines WriteToCustomLog and DefineCustomLog on the Kernel object
  • Bug 61 (Global Message Expiry settings and settings on outgoing interfaces are being ignored): Fixed. Improved documentation regarding how expiry dates are interpreted on outgoing interfaces.

2.00-040: SMS Subsystem development 12/11/2011


2.00-039: SMS Subsystem development 10/10/2011


2.00-038: SMS Subsystem development 10/1/2011


2.00-037: Support for multiple versions of Snomed, Loinc, UCUM, HL7, and DICOM definitions 7/14/2011

  • This version introduces support for multiple versions of Snomed, Loinc, and UCUM terminologies, and also the HL7 v2 and DICOM definitions. See the Definitions tab in the manager

2.00-036: SMS Subsystem Introduced 7/14/2011

  • Added Code Templates support - In the script editor, right click and choose "insert code template"
  • DICOM is starting to become quite obvious in the scripting API, but is still undergoing production testing

2.00-035: Handling of invalid \Xdd\ escape lengths 5/12/2011

  • Up to this version, HL7Connect has always rejected messages that have an odd length \X escape. As of this version, there is a flag on incoming interfaces to allow HL7Connect to accept odd length \Xd\ escapes by prepending a 0. The parser has been updated to accept odd length escapes throughout the rest of the suite, including in the scripting. There is a new decoding function on IHL7Message called "DecodeOptions" that can be used to reject messages with this kind of invalid escape.

2.00-034: Better tracking of archiving/deletion 3/19/2011


2.00-033: Support for Duplex Connections (Continued) 3/19/2011

  • Add support for reidentifying messages.

2.00-032: Support for Duplex Connections 3/16/2011

  • Add support for Duplex TCP/IP Connections.
  • Fix deadlock in shutdown code.
  • Fix bug introduced in v2.00-028 which meant that scripting would eventually terminate HL7Connect.

2.00-031: Web services reorganisation 2/20/2011

  • The web service interfaces (http://[hl7connect]/wsdl) are becoming more important and more widely used in applications. This version reorganises the web service interfaces considerably to make them easier to navigate and administer. Also, this version adds new control on a per user basis over what interfaces particular users can access. Note that it's possible to define users that only have access to the web services.

2.00-030: Fix for handling invalid acknowledgements 2/17/2011

  • Bug 53 (Invalid ACK causes interface to fail): Invalid ACKs still cause the interface to fail, but the error message is much improved now

2.00-029: Install manages service details + more bug fixes 2/12/2011

  • Bug 52 (Include MRN option on msg select for delete from queue not working): Fixed.
  • Bug 48 (Ability to set expiry on message generated via script): New Kernel method NewMessageWithExpiry

2.00-028: More Bug Fixes 2/1/2011

  • HL7Connect now no longer needs to be exempt from DEP.
  • Added more checking to HL7 v2 scripting interface to prevent fatal memory corruption when deleting segments, repeats and cell contents
  • Bug 34 (Ability to use wild cards and tokens to define log path and file name): Can now use $D() to specify date parts as part of log name. See Documentation

2.00-027: Several Bug Fixes 12/20/2010

  • Bug 50 (Ability to clear error tally without re-starting the interface): New link at the bottom of the interface error list
  • Bug 49 (Ability to choose different skin/colour scheme): See new settings in Administration..Configuration..General
  • Bug 31 (Enhancement Request - Database Connection Alert): See new settings in Administration..Configuration..General
  • Bug 32 (Delete button doesn't work browsing messages): fixed

2.00-026: Minor Bug Fixes and Script Enhancements 12/20/2010

  • Added Kernel.IsTestSystem and SendMessageToInterface to many more events
  • Fixed issue where setting the message id in a script was ignored
  • Prior to this version, HL7Connect would reject any message with a length > 1MB as a denial of service measure. From this version, the limit has been lifted to 236MB
  • Fixed underlying parser where "decode" on a field or component would ignore the last character of the decoded content

2.00-025: Add Imaging support to script API 10/4/2010


2.00-024: Support for Internet Explorer 9 9/25/2010

  • Added support for IE 9

2.00-023: Internal Storage Changes for DICOM 8/20/2010


2.00-022: Add new Interface modes 8/12/2010

  • Prior to this version, you could run interfaces in one of two modes: store and forward, or pass-through.

    • Store And Forward: HL7Connect accepts messages and stores them in the database, then forwards them to other systems as configured. Responses from other systems are ignored unless specified otherwise in scripts
    • Pass-Through Mode: HL7Connect passes messages straight through to designated outbound interface, and returns the response directly to the sender. No messages are stored. There must be one and only one route for each message (if no routes are found, the message is simply stored)

    This Version adds two new modes:

    • Store, Forward, And Dispose: Like Store and Forward mode, but messages are disposed of as soon as they have been delivered to their destinations
    • Pass-Through with Store: Like Pass-Through mode, but incoming messages are stored, along with responses if the outbound interface is so configured

2.00-021: Improved Response Tracking, and File Interface bug fix 8/9/2010

  • You can now configure outgoing interfaces to record response messages in the database. This will mean that they are visible when browsing the messages in the store. Note that usually, with HL7 v2, interesting response messages are passed through HL7Connect without ever being stored, but this will change
  • Two bugs have been fixed in the file interface code. File interfaces would fail to function if the incoming files were marked as read only, and transactions were used (inappropriately) on network drives

2.00-020: Add script execution time tracking 7/30/2010


2.00-019: Add better tracking of Message/Document turn around 7/28/2010

  • HL7Connect now tracks the turn around time of messages and documents

2.00-018: Able to specify alternate port SMTP hosts + Bug Fix 7/26/2010

  • HL7Connect now supports specifying an alternate port to 25 for the global SMTP host, and on email interfaces (both SMTP and POP server)
  • Fixed a bug where an invalid response message could cause HL7Connect to report a useless and misdirecting error report ("Attempt to access rawContent when complex content exists")

2.00-017: Fix important scripting bug 6/24/2010

  • Prior to v2.00-008, scripts were loaded and compiled each time. Post v2.00-008, HL7Connect caches the compiled script (for performance reasons). Since that time, the caching has been too aggressive: once loaded, the script is never reloaded. From this version on, the script will be reloaded whenever the interface is started

2.00-016: Content compression + Bug fixes 6/17/2010

  • Messages and Documents are now compressed before storage. This has no effect on the functionality of the product - only saves storage space, but because a few users use the database directly, it can be turned off through the HL7Connect Configuration page
  • This version rolls up a number of bug fixes, including the occasionally reported "Catastrophic Error", several test case related errors, bugs restoring messages from the archive or audit trail, and some broken links in the documentation.

2.00-015: Improved Database Schema Checking 6/16/2010

  • HL7Connect will now check that the database schema is correct prior to starting, and will not start until it is correct. The schema should be correct, but variations in version history may mean it is not. This upgrade includes fixes for known past database issues, but if these fail, you will need to consult HL7Connect.com. As always, we recommend upgrading a restored backup prior to upgrading your production system

2.00-014: File Interface Change 6/3/2010

  • This version clears up some confusion to do with file interfaces of type "Plain HL7 (1 Msg per File)". The problem is that the definition of the interface says 1 message per file, but there was no way to configure an outgoing interface to actually produce 1 message per file unless every filename is unique. As a consequence, for outgoing file interfaces, existing outgoing file interfaces with file format "Plain HL7 (1 Msg per File)" will be changed to "Serial Messsages (No delimiters)". This will no cause any change in behaviour to existing interfaces.

2.00-013: Fix for interface naming 6/3/2010

  • Up to this version, interface names have been treated as if they are unique, without ensuring that this is so. As of this version, duplicated interface names will be disambiguated in the logs etc

2.00-012: Daily Stats + Bug Fix 5/25/2010

  • The most difficult aspect of administering HL7Connect is preventing the database size from growing out of control. HL7Connect now tracks daily usage stats to help make this manageable
  • The IP Mask/Restriction functionality on the TCP/IP interfaces had somehow become unhooked. This functionality is now restored.

2.00-011: TCP Keep-Alive Support 5/24/2010

  • There is now a flag on TCP/IP interfaces to use the TCP Keep-alive Socket option to keep interfaces that cross firewalls alive when there is no traffic

2.00-010: UCUM Support 5/18/2010

  • UCUM support has been added - you can use UCUM to fix units in HL7 OBX segments as well as CDA Observations

2.00-009: Additional Notification 5/3/2010

  • You can now configure any interface so that notifications are generated when it fails unexpectedly

2.00-008: Cumulative Bug Fix release, and new SDK 4/29/2010

  • First release of the COM And .Net APIs
  • HL7Connect will now use the Windows Kernel Transaction Manager for file system transactions (Vista, Windows 7, Windows Server 2008). This applies to the internal configuration files, and also to internal file handling for file-based interfaces

2.00-007: Record all notifications to assist with troubleshooting 3/19/2010

  • Email notifications are getting increasingly hard to set up due to all the security features of email systems. From now on, HL7Connect logs all notifications to remove any doubt about whether they were sent or not. If you are having trouble sending email notifications from HL7Connect, check this useful discussion: http://www.codinghorror.com/blog/2010/04/so-youd-like-to-send-some-email-through-code.html

2.00-006: Change to file interface processing 3/13/2010

  • Until this version, when configuring incoming file interfaces, you would need to configure a working directory and an archive directory.Due to the implementation of cluster support, the way HL7Connect uses the file system has been rationalised, and these directories are no longer a configurable item.

    They are now found in the HL7Connect Data Storage, which is chosen when installing HL7Connect, at \files\f[i]\*, where i is the primary key for the interface (appears in the urls). There is a flag for whether to archive files or not in place of the directory setting.

    Note: if you are upgrading, existing file interfaces will be reorganised to this new set up, and existing archived files will be copied. If you do not have enough space, move the archived files into a different directory before the upgrade continues.


2.00-005: Interface Packaging and transfer 3/3/2010

  • You can now download an entire configuration for an interface - including scripts - and apply it to some other HL7Connect installation.

2.00-004: Change order of events on incoming interfaces 2/17/2010

  • Prior to this version, message validation occurred prior to the incoming script executing. As of this version, the script executes first, so that messages or documents may be fixed to become valid.

2.00-003: System OID Identifier 2/8/2010

  • Define master system OID (globally unique)

2.00-002: XDS Affinity Domain Aspects 2/6/2010

  • Add Annotations for XDS affinity domain properties

2.00-001: CDA Major Upgrade! 2/1/2010

  • Important!: This is a major conversion, and includes a rebuild of the main message store. Expect this process to take a long time (maybe many hours!) on large operational databases. If this upgrade is interrupted by a failure such as running out of transaction log, you can cleanup as required, and then start the upgrade again - it will pick up where it left off.


2.00-000: CDA Preparation 2/1/2010

  • This version adds CDA/CCD support to the existing support for HL7 v2 messaging. There are changes across the board to reflect the enhanced functionality. Fundamentally, CDA documents are handled like HL7 v2 messages. The most important difference is that the acknowledgement semantics are different, and therefore the transports supported are different.

    As part of the CDA work, there has been a substantial overhaul of the scripting documentation for CDA support, with enhancements across the board in the documentation, and the addition of the Kernel.notify routine. The list of events that support KScript and XSLT has been revised, and the KScript support substantially enhanced for use generating CDA documents.


1.06-002: Fix bug in Message Encoding 12/4/2009

  • A bug in the way OBX-5 is encoded has been fixed. OBX-5 is unique in that the data type for the field is specified in OBX-2. The encoding of the field is performed consistently with the datatype specified in OBX-5. If the second component was valued, and then a data type was chosen which made the second component have sub-components, the component value would be ignored when the message was encoded (say, after scripting). This is now fixed - the component will picked up in place of the sub-component

1.06-001: Response Suppression 11/19/2009

  • Added support for suppressing some or all responses on a TCP/IP interface. Please read the warnings about this in the TCP/IP settings documentation before using.

1.05-004: WScript Equivalent 9/4/2009

  • Added a WScript equivalent for scripts (WScript.ScriptFullName etc)

1.05-003: Direct Script Execution 9/4/2009

  • Added the ability to execute a script directly from the web interface (go to Administration...Utilities)

1.05-002: Routing adjustments for Virtual Queues 9/4/2009

  • In the past, if you set up multiple routes from the same the incoming interface to the same outgoing interface, HL7Connect would ignore them, and only forward the message once (using the translation parameters for the first encountered one, which may have been set in the OnReceiveMessage event using a script). From now on, it will route the message to the interface multiple times as instructed.

1.05-001: Add Virtual Queues 9/4/2009

  • There is a new facility called "virtual queues". A message can be put into a virtual queue, where it will wait to be processed. Virtual Queues can be further partitioned by a string value. You can:

    • Put a message in a virtual queue by defining an incoming route, using a script command, or doing it manually through the web interface
    • Send all or some messages in a virtual queue to an interface using a script command, or doing it manually through the web interface
    • Clear all or some messages from the virtual queue using a script command, or doing it manually through the web interface
    • Download all of some of the messages in a virtual queue.

    This facility is useful for a variety of message flow control purposes. You must define a queue before using it through the web interface (see under Adminstration)


1.04-001: Add Support for Message Annotations 9/4/2009

  • You can now annotate messages with any number of name=value pairs. You can use any name (up to 250 chars long), and the value can be any length. There can only by one annotation per message per name. You can access the annotations in the following places

    • You can see and edit them in the web interface
    • You can filter by them in the web interface (only if the value is < 32 characters long)
    • You can get and set them in incoming and outgoing scripts
    • You can do conditional routing based on them

    This facility is useful for a variety of message flow control purposes.


1.03-002: Change to default behaviour of message sending 6/11/2009

  • In the past, the default behaviour when a message was rejected by the destination system was to accept the rejection and move on, on the basis that rejections are always a problem with the message itself, not a transient issue with the recipient. But this is a little dangerous, because

    • Applications sometimes respond with an AR when they cannot process any messages (i.e. database server is down)
    • It's easy to overlook the occasional dropped message
    • even if the administrator notices and resends the dropped messages, they arrive out of order

    For this reason, the default behaviour is now to keep resending messages when they are rejected. Existing interfaces will not be changed.

    Note that the HL7 standard is rather vague on these matters.


1.03-001: Message Archive 3/19/2009

  • Users often like to store messages indefinitely. Databases containing >10 million messages can easily accumulate. However the cumulative effects of this on the performance of the Store|Queue|Tracking tables in the underlying database can be quite a problem. This version introduces a message archive. Messages can be moved into the archive and maintained there indefinitely without any performance issues except for their impact on database backup time. Archived messages can be retrieved back into the main message store by any combination of source, id, and date received. Note that restoring messages is considerably slower than archiving them - they must be reparsed as they are restored

1.02-006: Improved Mobile Support 3/16/2009

  • Not only does the web interface support mobile browsers (i.e. Safari on iPhone, other webkit based browsers), but there is now a mobile phone client that can administer HL7Connect remotely. For more information, look up 'Mobile Phone' in the HL7Connect documentation. To support the use of remote web services, a specific web services only port can be configured in the manager.

1.02-005: Notification Privacy 3/12/2009

  • For user convenience, HL7 message information is added to the notification messages. However this is a potential problem with regard to patient privacy. There is now a new flag on the notifications to prevent this source information being added to the notification

1.02-004: Better control over interface stopping to allow for automatic restarting 3/6/2009

  • This version introduces a new auto-restart feature on interfaces, so that if they fail unexpectedly, they can be automatically restarted. In order to support this, the kernel has tightened up on tracking why an interface is stopped. So there are new mandatory parameters on THL7ConnectInterface.Stop and THL7ConnectInterface.Restart which may affect any existing scripts that stop and restart interfaces

1.02-003: Referential Integrity Check 3/4/2009

  • Referential Integrity check - Check the internal database; some referential integrity checks are missing on some installs.
  • Add and document web service interfaces

1.02-002: Scripted Message tracking 3/4/2009

  • Track actual message sent when script changes outgoing message

1.02-001: Update for new Microsoft Security Policies 3/2/2009

  • Courtesy of Microsoft, the way HL7Connect uses the registry does not work on Win64 Vista SP1 (security issues). From this version forward, HL7Connect no longer stores configuration information in the registry. Instead, an XML configuration file is used. On WinXP+ it will be found in <Common App Data>\HL7Connect\Configuration. On Win2000 (mostly still supported), the location of the config file is hardcoded to C:\Program Files\HL7Connect\AppData\Configuration (HL7Connect can be installed elsewhere, but the config file will always be found there). Windows 95/98/ME is no longer supported. Note that this means the existing path aliases $script$ and $cert$ will be moved to the application data directory instead of the program files directory.

1.01-019: Null Version for internal upgrades 2/29/2008


1.01-018: Change to RawContent in Scripts (see 1.01-015) 2/27/2008

  • The change introduced in 1.01-015 had a series of negative consequences for existing implementations. To ease with migrating existing solutions, RawContent will no longer raise an exception if complex content such as escapes is present. Instead, it will return the standard vertical bar representation of the content (i.e. \H\).

1.01-017: More Minor Fixes 12/8/2008

    • Support for MS SQLServer 2008
    • Support for IE8, Safari, Chrome, and various mobile browsers including iPhone
    • Added ability to categorise interfaces into groups for easier management
    • Fixes for batch file interface stability
    • Add Support for versions 2.5.1 and 2.6

1.01-016: Some Minor Fixes 7/31/2007

    • Fixed bug where missing record in database created serious memory leak
    • Exposed control over which characters are used for delimiters etc to scripting
    • SSL tab no longer wrongly displayed if database is not ok
    • Add timeout parameter to FTP to prevent FTP hanging when connection is lost
    • Safari supported, but only partially due to a bug in Safari relating to visibility of spans
    • Fix bug in scripting where accessing a property (.IsSimple) works, but accessing it using a method (.IsSimple()) fails
    • Allow $ in passwords
    • Capture email notification errors
    • Fix significant leak when cloning message in scripting
    • Default Subcomponent delimiter if not present, instead of error

1.01-015: Changes to handling content in HL7 FT fields with escape sequences 4/4/2007

  • Note: If you have scripts that deal with fields with escape sequences, this change may affect your scripts

    The HL7 standard defines an escape syntax. There is 3 common uses for this escape syntax:

    • encoding characters such as | when they appear as actual field content using \F\ etc
    • defining appearance characteristics of FT fields using \H\, \.br\ etc
    • defining sequences of bytes unambiguously using \X sequences

    In prior versions of HL7Connect, the underlying library would convert the syntactical escapes to the correct characters so that they were transparent to the application and the scripting environment. the \X sequences would be converted to the equivalent character - but the meaning of this is code page dependent so this wasn't really a perfect solution. For the \H\, \N\, and \.br\ type escape sequences, the \ was replaced with a special character character #1.

    In the new model, each cell stores the cell content as a list of parts. There is four different part types:

    • Null - this represents a field that has "" in it
    • Text - this represents standard text
    • binary - this represents a sequence of bytes (a \X escape)
    • escape - this represents any other escape

    The null part type will always be on its own, otherwise there will be a sequence of either of the other 3 part types.

    Scripts get access to these through the Contents and ContentCount properties on the Cell (Field, Component or SubComponent).

    The existing script functionality is the same in all but one respect. The simple access properties such as AsString, AsInteger, etc, and RawContent will continue to function as they have in the past, except that they will cause an exception to be thrown if they are used on a field that contains escape sequnces.

    You can use the IsSimple property to check whether escape sequences exist.

    There is a set of new routines for managing the contents and easily introducing and deleting escape sequences.


1.01-014: Support for IE7 & SQL Server 2005 5/19/2005

  • Added Support for:
    • Internet Explorer 7
    • SQL Server 2005

1.01-013: Several Minor fixes 5/19/2005

  • Fixed:
    • File Interface: Exception trying to accept files that are still locked by other processes
    • Mesage Browsing: Filter by date fixed; Can browser forwards by default (see general configuration settings)
    • Fixed bug browsing big log files
    • Fixed message selection (downloading or resending) by Msg ID

1.01-012: Several Changes to the scripting interface 4/19/2005

  • The HL7 Library used internally throughout HL7Connect has been completely rewritten in order to prepare it for open-source release in java. As a consequence there have been several changes to the HL7 Library in the scripting API. These changes are summarised below. For further details, consult the Development Environment Documentation.

    Propertiesremoved from existing classes:

    • THL7CommonDataCell.Valid
    • THL7Component.SubComponentList
    • THL7DataElement.Components (use HL7DataElement.Component instead)
    • THL7DataElement.RepeatList
    • THL7DataElement.ComponentByName
    • THL7DataElement.ComponentList
    • THL7Segment.FieldList
    • THL7Segment.FieldByName
    • THL7Message.AppAckRequired
    • THL7Message.View
    • THL7Message.SegmentList
    • THL7Message.EscapeExtendedCharacters - moved to an encoding option
    • THL7Message.AddStructName - moved to an encoding option
    • THL7DictDataType.Escapable paramater AEscapeMode
    • THL7DictStructure.ComponentList

    Classes that are no longer defined

    • THL7DictEvent,
    • THL7Dictionary,
    • THL7DictionaryList - these 3 classes were never accessible anyway

    THL7Message.Encode and THL7Message.Decode parameters have changed

    THL7DictTable properties have been reorganised

    THL7DictSegmentGroup replaces THL7SegmentGroup, THL7DictSegmentMapGroup, THL7DictSegmentMapNode and THL7DictSegmentMapSegment

    Change 1st parameter type on CheckDOBReal

    THL7Batch and THL7File have been changed significantly


1.01-011: Change OpenSSL version 4/14/2005

  • Two new forms of HTTP based transports have been introduced which are easier to configure and manage
  • HL7Connect can now generate certificate requests so that it can used certificates signed by some certificate Authority (i.e. Verisign or an in-house trusted server
  • The OpenSSL version used in HL7Connect was subject to a known flaw. The OpenSSL version used now is openssl-0.9.7e (built using minGW). The openSSL libraries are always used from the directory <install>\ssl but can be replaced with more recent versions of OpenSSL if more recent versions have been released

1.01-010: Fix OnReplyReceived Messages 1/14/2005

  • There was a bug in the way the Event object was built for when the script event OnReceiveReply was built, which resulted in the "SourceMessage" containing the reply message, and the "ReplyMessage" containing the original source message. This has been fixed, and any scripts running on OnReplyReceived will need to be updated accordingly

1.01-009: Fix leaking database connection 1/12/2005

  • Several different interface operations could result in leaking database connection. Eventually HL7Connect would run out of connections. This has been fixed

1.01-008: Change to script error handling 1/6/2005

  • Previously, when a script failed, and the interface was set to shut down on failure, the interface would complete its current message transfer first. This was not appropriate. Now, an error will occur and be reported, as well as shutting the interface down. This should not have any effect on working scripts, just clean up the behaviour when a script fails.

1.01-007: Provisional MySQL Support 1/5/2005

  • MySQL support has been added, tested against MySQL version 4.1.8. Further field testing is required before MySQL (v4.1.8+) is regarded as fully supported

1.01-006: New Staging Release 12/12/2004

  • Re-organise folder structure - add Config folder

1.01-005: New Staging Release 11/29/2004

  • Many small bugs have been fixed, and a new printing system implemented. The development environment will lose its reopen history with this upgrade.

1.01-004: New Element Syntax 9/15/2004

  • The element syntax used by the THL7Message.element routine in the scripting has been extended. As part of this, an old format SEGn-N:I.O.P is no longer fully supported. The syntax SEG:n-N:I.O.P is supported. This means that if there is any calls to element specifying a segment index, you must add a : at the end of the segment code and before the index.

1.01-003: Minor Release 9/3/2004

  • Bug Fix - access violations in Pass Through Interfaces

1.01-002: "Serial Messages" file format 7/19/2004

  • A new file format has been introduced to cater for files consisting of a series of HL7 messages with no delimiters.