The Configuration tab enables you to define configuration properties specific to a communication point:

 The options available on this tab depend on the communication point's type and operational mode, for example:

If a property is displayed in grey, it is not applicable for the selected operational mode or implementation. Only properties displayed in black can be configured.

To determine the value of a configuration property that is set to a Rhapsody variable, you can hover over the variable to display a tooltip with its value.

For details on the options available on this tab for a particular communication point, refer to the documentation for that specific communication point.

Configuration Properties

Setting Configuration Properties

There are three ways to set a configuration property that does not offer pre-configured settings, using literals, message properties or Rhapsody variables:

  1. Enter the relevant value directly into the Value field.
  2. Select from one of the communication point's published message properties from the drop-down list, or enter into the Value field a message property that is either route extracted or created, using the $propertyName notation. For example, if the <Patient Name> and <Patient Gender> properties have been identified as Message Definition properties on the route's Properties window, then these fields can be selected for the filename. Refer to Message Properties for details on configuring components with message properties.

    Most configuration properties that can be set using literal values can also accept message properties using the $propertyName notation. There are, however, exceptions. Therefore it is recommended you test your routes to ensure expected behavior.

  3. Search and select from a list of available Rhapsody variables by launching the Select Rhapsody Variable dialog (refer to Rhapsody Variables for details on how to manage Rhapsody variables):

Internal IDs for Configuration Properties

To obtain the internal IDs for configuration properties relevant to your configuration:

  1. Save your configuration to an RLC file (create a backup of the file if you wish).
  2. Change the RLC file's extension to .zip
  3. Unzip the Zip file and open the XML file contained therein. 
  4. The XML file contains the internal IDs for configuration properties, for example:

    <Property>
      <Name>LOCALPORT</Name>
      <Value>$(TCP_Blocking_Port)</Value>
      <Type>ptInteger</Type>
    </Property>

Filename Generation

The generation of a filename is controlled by three properties (Base Filename, Suffix, and Append Date). The name is generated by concatenating the base filename, the current date/time (if the Append Date field is set to True) and the suffix.

If a file already exists with the generated name, a counter is added in parentheses. The file is initially written with a suffix of .tmp and then renamed with its correct name once its creation is complete. Incomplete files (with a .tmp suffix) can therefore be ignored by external applications.

For example, if the following settings are defined for a Directory communication point:

Base Filename

Base

Suffix

.msg

Append Date

True

The following sample filename is generated: Base2008-07-01-10-51-45-666.msg

Wrapper Options

The the message wrapper options are as follows:

  • When message wrapping is set to None, no header or trailer information is included with the message.
  • Minimal wrapping uses a header of \x0B and a trailer of \x1C\x0D, as used by HL7 Minimal Lower Layer Protocol (MLLP).
  • Hybrid wrapping is used for HL7 Hybrid Lower Layer Protocol (HLLP), which is generally only used on unreliable transports like serial connections. It uses a header of \x0BD21\x0D and a trailer of dddddccc\x1C\x0D, where the d is a 5-byte data length in decimal, and c is a 3-byte XOR checksum of the data.
  • With User wrapping, you can set your own header and trailer strings. The endian-ness of binary data that can be placed in these header/trailer strings is set in the Endian-ness properties. These endian-ness properties can be either Big (most significant byte first) or Little (least significant byte first) endian.

The format codes used in the header or trailer strings are as follows:

Format

Description

\xZZ

The byte code ZZ in hexadecimal.

%nC

An n-digit checksum.

%2B

A two-byte representation of the message length.

%2B(n)

A two-byte representation of the decimal value n added to the message length. The (n) suffix can be appended to all message length-related format codes.

%4B

A four-byte representation of the message length.

%nO

An n-digit representation of the message length in octal.

%nD

An n-digit representation of the message length in decimal.

%nH

An n-digit representation of the message length in hexadecimal.

%nI

Ignore the first n characters in the input stream.

Strip Wrapping

Input Mode

Bytes are read from the socket and discarded until a header is received, then the body is read until a trailer is received. If the Strip Wrapping property is set to True, the body of the message is placed in the processing queue. If Strip Wrapping is set to False, the body (including received wrapping) is placed on the processing queue.

Output Mode

Each message is wrapped appropriately and sent out the socket connection.