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 Important Changes

Important information concerning HL7Connect versions 1.01-012 or greater

There have been various code changes to the product which are listed below.
This includes some improvements, and importantly script changes.

Please take note of the script changes as these may impact scripts that have previously been compatible with older versions of HL7Connect.

Like any upgrade to a production system, it is important to test your current setup with the new version. Since there is some scripting API changes within this upgrade, this is especially the case. We suggest you review the changes outlined below and thorughly test scripts before upgrading the live production HL7Connect.


  1. The syntax for IsElement has changed.

    In the past, if you wanted to require that the element you were looking at was the 3rd field of the second PID, you would use the following:


    This format is no longer supported and you must use the following syntax:


    Note that there is a proper separator. It is also possible to use the following formats:

    isElement('OB?-3') // any segment with first 2 chars OB

    isElement('Z*-3') // any z segment

    isElement('*-3') // any segment

  2. There is an issue in the Standard with regard to escaping fields that are not of the type IS, ST, CF, TX (and a couple of others). It's not clear what it means to say that only these fields are escapable. In the past, the underlying HL7 library only converted escape sequences when reading fields that were supposed to be escaped. This has now been changed so that HL7Connect always converts escape sequences when reading HL7 messages, whether the field is supposed to be escaped or not.

  3. Simple Validation now checks that the table code was valid for ID data types.

  4. XML reading and writing robustness improved.

  5. There has been some changes to the scripting API. We have tried to keep these as minimal as possible.

    The following methods/properties have been removed:
    • 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

    • THL7Message.Encode and THL7Message.Decode parameters have changed
    • THL7DictTable properties have been reorganised
    • THL7DictSegmentGroup replaces THL7SegmentGroup, THL7DictSegmentMapGroup, THL7DictSegmentMapNode and THL7DictSegmentMapSegment