DR4 - Defining DataInterfaces, SIDMappings and Archive Link Mappings

In order to use tia® Document Router you may provide a configuration file that contains the DataInterface definition, as well as the ArchivingSystem definition and a configuration file that contains the SIDMapping definition.

These three definitions follow a certain structure that will be described in the following sections.

DataInterface definition

The data interface describes the data and positions of data which will be used in the linking process. Index files contain these values and needs to fit the definition. Regularly, the DataInterface is derived from the structure defined from the index file content.

An DataInterface can be defined in 2 types:

  • Separator based (variable length)

  • fixed length

DataInterface for sets with variable length

DataInterface for sets with variable length

[<DataInterface name>]
<Keyname> = <Key type> | <Separator> | <Field Index> | <Default Value>
<Keyname> = <Key type> | <Separator> | <Field Index> | <Default Value>

DataInterface for sets with fixed length

[<DataInterface name>]
<Keyname> = <Key type> | <Position> | <Length> | <Default Value>
<Keyname> = <Key type> | <Position> | <Length> | <Default Value>

When using a DataInterface for sets with variable length, it’s necessary to define the separator, which will be used in order split the value data stream and retrieve the values.

Keyname is the name of the variable defined within a DataInterface. The Key type has to be defined as one of the following types. Separator defines a symbol, that will be used when splitting the index file content. Number in Set defines the position of the value within the index file. Default Value can be defined as a fallback or as a static value when no value was found within the index file.

In case of a set with fixed length Length defines the length in characters of the value expected within the index file.

The following Key types are being supported by tia® Document Router.

Type symbol / Type value

Symbol / Value description

Type symbol / Type value

Symbol / Value description

B

SAP Business Object (e.g. BKPF, VBRK, etc.)

C

SAP Content Repository ID (e.g.: FI, BU, FP, etc.)

D

SAP Archive Document ID

F

Image file name

f

The image filename will be taken the same as the index file.

H

SAP Host

I

Ignores the value

L

SAP Language

M

SAP Client

N

Defines, that the value will not be handed over to the SAP User Link Remote Function

 

From Version 3.1.39 onward :

Defines the Content of the ‘note’ component

O

SAP Object ID

P

SAP Password

S

SAP SystemID

T

SAP ArchiveLink Document Type (Archiving Object)

U

SAP User

X

Defines that this value will be handed over to the SAP User Link Remote Function

Y

SAP System number

b

Barcode

d

Date

g

SAP Group, which is being used in order to load balance the RFC connection

m

SAP MessageServer Host, which is being used in order to load balace RFC connection

n

SAP Client extracted out of the <SAP SID>M<SAP Client>-notation (e.g.: K47M800 will be translated to SAP Client: 800 in SAP SID K47)

p

ISRA-specific parameter which will be handed over to an ISRA interface

s

SAP System, which is being used for load balancing purposes

o

Offset within the image file (F)

l

Length from the offset within the image file

The following separators are being supported.

  • A semikolon → ;

  • A comma → ,

  • A vertical bar → |

  • A hashtag → #

Sample of “DataInterface”-definition

Sample of “DataInterface”-definition

[BASE_INTERFACE]
Filename = F | , | 1 |
ObjectID = O | , | 0 |@Filename
ContRep = C | , | 0 |FI
Objecttype = B | , | 0 |BKPF
DocType = T | , | 0 |FIIPAYMENT

Every row within a DataInterface defines a parameter to be used during archiving or linking. The parameter names can be used in the default value column of other parameters by prefixing them with an @-sign, like in the example above.

Special fields

Fields can reuse values of other fields.

For example in a scenario where no index file exist, all for archive and link relevant information are fetched from file name. So you need to split up the file name an maybe join if you want create additional information for e.g. linking.

Sub-Value by Position

[positionBasedSchema] FileName = f || |0 | ArchiveType = C || |0 |N1 DOC_TYPE = c || |0 | SAP_OBJECT = B || |0 |BKBF AR_OBJECT = T || |0 |ZFILENAME ObjectID = O || |0 |@Filename[1,18] SYS_ID = S || |0 |@Filename[20,22] MANDANT = M || |0 |@Filename[24,26]
  • ObjectID is an sub string of Filename. It uses position 1 until 18 of it.

Sub-Value by Separator

[separatorBaseSchema] ImageFileName = f |, |0 | CONTREP = C |, |0 |@ImageFileName[_,1] ARCHDOCID = D |, |0 |@ImageFileName[_,2]
  • field ImageFileName is split by _ and then position 1 is used for CONTREP and position 2 for ARCHDOCID

Join

[joinSchema] FileName = f || |0 | ArchiveType = C || |0 |N1 DOC_TYPE = c || |0 | SAP_OBJECT = B || |0 |BKBF AR_OBJECT = T || |0 |ZFILENAME ObjectID = O || |0 |@Filename[1,18] SYS_ID = S || |0 |@Filename[20,22] MANDANT = M || |0 |@Filename[24,26] another = X || |0 |@ObjectID@MANDANT
  • here the field another which is used while linking is a concatenation of the contents of ObjectId and Mandant.

ArchiveLink Connection mapping

It’s often necessary to define one or many connections to the archiving system, so tia® Document Router knows how to communicate with the archive and where to exactly archive the processed documents.

For that reason you may want to define the connection parameters for the archiving system.

The definition file has to be placed in config folder. (defined in instance common tab)

The definition file name can be configure in Archiving tab via config item AL Connection Mapping File.

The file follows this format:

Structure of an archive connection definition

Structure of an archive connection definition

[_ARC_<Name of the repository>]
HttpProtocol = <http> or <https>
HttpHost = <Host IP address> or <Host DNS name>
HttpPort = <Port used for the communication with the archiving system>
HttpPath = <Path to the servlet which will be used during the archiving process>
HttpParameters = <Additional parameters in case they are required for the connection>
Security = <0 : Security is not enabled on the repository>
or
<1 : Security is enabled and sent certificates are instantly accepted>
or
<2 : Security is enabled and sent certificates have to be enabled within the SAP system>
LateLocking = <0 : Late locking is disabled> or <1 : Late locking is enabled>

You may define multiple archiving systems in one definition file.

Sample of multiple archiving connection definitions

Sample of multiple archiving connection definitions

[_ARC_FI]
HttpProtocol = http
HttpHost = test.contentservers.kgs-software.com
HttpPort = 1234
HttpPath = /KGSAdmin-CS/contentserver
HttpParameters =
Security = 0
LateLocking = 1

[_ARC_TE]
HttpProtocol = http
HttpHost = 17.59.128.128
HttpPort = 2345
HttpPath = /KGSAdmin-CSV/contentserver
HttpParameters =
Security = 0
LateLocking = 1

This definition was in DR3 hold in SIDMappingDefFile.

SIDMapping definition

In document router 4 the SID mapping for linking does not exist anymore via SID mapping file (SIDMappingDefFile).

Instead you can use in schema definition the S like in this example

Example Schemata
  • here the index files gives mandant and contrep and the LoginCL variable then contains the SAP connector instance id

or this:

  • in this example the index file directly contains the SAP Connector instance id.

As you see, LoginCLis connected to the Variable S. We see it is concatenated from 2 others. So in index file, the concatenation from place 1 and 2 gives the variable value of LoginCL. This value is pointing to an existing SAP-Connector instance with this name.

Real Example

The Document Router is configured with index-Files. Those .idx-Files contain following lines:

Following the previous given Schemata-Example this would mean:

  • Q80 = SYSID

  • 105,103,134 = MANDANT

  • XY,ND,NF = CONTREP

In the Schema above is in Line 5 following configured as “S” (SIDLinking) : @SYSID@MANDANT whereas @SYSID is on place 1 and @MANDANT is on place 2

That means, the DocumentRouter 4.x will concatinate Field 1 and Field 2 and try to find a SAP-Connector-Instance with that Name. In this Example with those three different Index-Files the Document Router tries to call SAP-Connector-Instance:

  • Q80105

  • Q80103

  • Q80134

Means: If those Connections are available (and configured in the SAP-Connector), the DR will Link to those individual SAP-Configurations.