Scanner Configuration

Scanner

Defined how the scanner is setup, and which special configurations are enabled for the specific device.

<start>
  ...
  <scanner>
    <type>internal</type>
	<converter enabled="true" type="custom2gs1">
  		<customConfiguration expression="^([\d]{1,14})_([\w\d]{16})$" expressionAis="90,21"/>
	</converter>
 	<filter enabled="true">
		<matchIndex>0</matchIndex>
		<regex>(^[^ ]+)</regex>
	</filter>
    <gs1Support enabled="true">
      <code128 enabled="true">
        <fnc1AsciiNumber>29</fnc1AsciiNumber>
        <startSequence>]C1</startSequence>
      </code128>
      <dataMatrix enabled="true" forceInterpretation="true">
        <fnc1AsciiNumber>29</fnc1AsciiNumber>
        <startSequence>]d2</startSequence>
      </dataMatrix>
    </gs1Support>
    <scanEngineProperties>
      ...
    </scanEngineProperties>
  </scanner>
  ...
</start>

Parameters:

  • <scanner> - Setup scanner capabilities for the device. 
    • <type/> - Most ruggeded devices have a scanner built into them, in which case this configuration parameter can be completely ignored. But the scenario where an external scanner is used is also supported by setting the scanner type appropriately. Accepted values are listed below.
    • <converter> - In order to support custom barcodes that do not adhere to the typical standards, it is possible by configuration to use a converter that transforms the barcode into a format understood by the WMS application. This often requires customer specific development.
      • enabled = "false" - Toggles the converter functionality.
      • type = "" -Define the type of conversion to perform.  
        • pm2ean128

        • h2gs1

        • hbic2gs1

        • hibc2gs1

        • custom2gs1 - Enables defining a regular expression and map the group matches to specified AI's.
    • <filter> - The filter configuration parameter can be used to instruct the application to only use a part of the scanned value. It is important to note that if the filter does not apply, the scanned value is used as is. 
      • enabled = "false" - Toggles the filter configuration.
      • <matchIndex>0</matchIndex - If the regular expression potentially matches multiple parts of the barcode, this value determines which of the values to return. Zero-index based. Default value is 0 if the element is omitted.
      • <regex></regex> - This element defines the regular expression that is used to extract the desired value from the barcode. The following example extracts a value containing all characters until a space is encountered. E.g. ^[^ ]+
    • <gs1Support>
      • enabled = "true" - Toggles support for scanning Gs1 barcodes. 
      • <Code128> - Barcode which can hold multiple values. 
        • enabled = "false" - Enables the Code128 Gs1 support.

        • <fnc1AsciiNumber>29</fnc1AsciiNumber> - This is the character used to separate variable length application identifiers (AI's).
        • <startSequence>]C1</startSequence> - Gs1 barcodes are identified by a special sequence of characters in the beginning of the barcode.
      • <dataMatrix> - The DataMatrix is the squared barcodes, which have a more space preserving format. 
        • enabled = "false" - Enables configuration for the squared barcodes, where Gs1 support can be enabled.
        • forceInterpretation = "false" - This parameter can be used in order to force DataMatrix barcodes to be interpreted according to the GS1 standard, even if the start sequence is not correct in the barcode. This is an app wide interpretation of a DataMatrix barcode.
        • <fnc1AsciiNumber>29</fnc1AsciiNumber> - This is the character used to separate variable length application identifiers (AI's).
        • <startSequence>]d2</startSequence> - Gs1 barcodes are identified by a special sequence of characters in the beginning of the barcode.
    • <supportedBarcodeType> - Defined a set of supported barcode types to support.
      • enabled = "false" - Defines if the supported barcode parameter is used.
      • <codeId></codeId> - Sets a list of supported bar code types. Multiple can be added separated by a ,.
    • <scanEngineProperties> - A way to setup scanner properties specific to the manufacturer. E.g. continuous scan.
      • <scanEngineProperty/> - E.g. enable reading QR codes. 
        • key = "DEC_QR_ENABLED" - The key defined by the manufacturer for controlling a scanner function.
        • value="true" - The value to apply for the given scanner function.
          *A list of codes can be found here.