HL7 Input


This is a Data capture module, no documents are captured hence output if documents connectors are used. Workflow should consider the process / manipulation / storing of data only.

Capture module HL7 Input allows to capture HL7 input messages, parse them into Workflow data and variables and start the Workflow for processing.

For each message found a backup copy of the original file is created with an extension of .bak, when the Workflow completes the backup copy is deleted, together with the original file, or restored according the success or failure of the Workflow processing.

The backup copies by default are created next to the input file, unless the Custom backup folder is customized below.


Backup files act also a processing lock. If a backup file is left for any reason next to a source file (e.g. a process crash without proper cleaning), the file will not be picked up for processing until the backup file is removed.

The module creates custom variables during processing. Check the Variables list for more details.

The left hand side menu shows the available settings sections. Settings are displayed according the selected section.


Input source
Select the input type where capture HL7 messages from. You can choose either:

  • Pipe messages

Based on the selected type specific fields will be available.

Enter the input source folder or select Browse to browse to the right folder. This is the folder which will be monitored for HL7 messages, dumped on files, to be dropped in.

HL7 message files are normally having an extension of .hl7.


For network paths specify the full UNC path starting with \\. Mapped drives are not allowed because Scanshare is running inside services and Mapped Drives are not existing in services context.


For the network authentication and allowing authentication on virtual UNC shares you would use \# before your UNC path. e.g.: \#YOUR_UNC_PATH.

Import all
If enabled it will import the complete message, e.g. all data contained inside it. Otherwise only the HL7 components specified below will be imported.

When importing all data the HL7 capture module creates automatically a variable for each data value found in the message, with an automatic generic naming convention which can be used during the Workflow.

The variables notation used will be compliant the following structure:

  • HL7_ : Starting prefix always for all HL7 variables
  • HL7_MESSAGE_SEGMENT_COUNT : The number of segments existing in this message
  • HL7_MESSAGE_SEGMENT_X_NAME: Name of the segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_COUNT: The number of the fields existing in the current segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y: Value of the field number Y for the segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y_DELIMITER: Specify a value of 1 if the value of the field number Y for the segment number X will contains any delimiter to be parsed and escaped
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y_COMPONENT_COUNT: The number of components, if existing, in the current field number Y of the current segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y_COMPONENT_Z: Value of the component number Z for the field number Y of the segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y_COMPONENT_Z_SUBCOMPONENT_COUNT: The number of subcomponents, if existing, in the current component number Z of the current field number Y of the current segment number X
  • HL7_MESSAGE_SEGMENT_X_FIELD_Y_COMPONENT_Z_SUBCOMPONENT_K: Value of the subcomponent number K for the component number Z of the field number Y of the segment number X

Count variables can be used to check the existence of a specific segment, field, component and based on the total amount, if existing, all single components can be parsed with their respective variables.

If the variable isn’t existing / created means there was no component to import.

Enter the HL7 components to import from each HL7 message dropped in the above input Folder. Available when the previous Import all checkbox is disabled.

All components to import needs to be specified separated by , (comma) and in the format of:


For example:



When using manual components names of segments, fields and components need to respect the HL7 message structure.

For every component specified a variable with the name provided, prefixed with HL7_, will be created instead of the automatic naming convention specified above for Import all.

For example, assuming the above specified two components:

%HL7_PID.3.1% -> VALUE
%HL7_PID.3.2% -> VALUE

If the specified component doesn’t exist variable will be created with a null / empty value.

Check subfolders
If enabled capture module will scan through all subfolders of the input Folder specified above.

Custom backup
Enter the target custom backup folder or select Browse to browse to the right folder. This is the folder where the backup copy of the original message is created during processing.


Username and Password
Enter a username and password (if needed) or select a variable to access the network input folder.


Authentication is not required on local folders (e.g. starting with a local drive letter). If you specify credentials in such case an error will be generated during storing because Scanshare will attempt to obtain the UNC root authentication point.

Previous Article


Next Article