System variables


Scope/Lifetime

Live in the profile (and not in other profiles) during the profile run/test.


Most system variables automatically get a value assigned and, in contrast to the profile variables, they are already initialised in phase 2.

The prerequisite for this is that the system variables are defined in the profile. Many system variables are already created in new profiles by default, but not all. System variables are defined at the same place in the profile, where profile variables are defined.

Note: When profiles are transported (manually or with Transport Manager), system variables are not transported to the target system with them.


Variable name

Type

Content

AMQP_091BASIC_CONTENT_TYPE
AMQP_091BASIC_CONTENT_ENCODING
AMQP_091BASIC_MESSAGE_ID
AMQP_091BASIC_TIMESTAMP
AMQP_091BASIC_EXPIRATION
AMQP_091BASIC_APP_ID
AMQP_091BASIC_USER_ID
AMQP_091BASIC_TYPE
AMQP_091BASIC_PRIORITY
AMQP_091BASIC_CORRELATION_ID

String

Only relevant for AMQP 0.9.1. See Response "AMQP" .

AMQP_<name of the Message Property>

String

These variables can be used to set message properties (for JMS and AMQP) in a Response "AMQP/JMS".

AMQP_JMS_TEXTMESSAGE

Boolean

By default, the Response "AMQP/JMS" transfers data to the receiving server as byte message. To change this, since some servers cannot cope with this, the variable AMQP_JMS_TEXTMESSAGE can be created in the profile with value "true". The data will then be transferred as text message. In addition, the encoding in the Response must be set to "UTF-8".

AMQP_JMS_CORRELATIONID

String

Sets the JMS m essage header " JMSCorrelationID" . Important note: The variable only works for the new (current) JMS connection method.

AMQP_JMS_EXPIRATION

String

Sets the JMS m essage header " JMSExpiration" . Important note: The variable only works for the new (current) JMS connection method.

AMQP_JMS_PRIORITY

String

Sets the JMS m essage header " JMSPriority". Important note: The variable only works for the new (current) JMS connection method.

AMQP_JMS_REPLYTO

String

Sets the JMS m essage header " JMSReplyTo". Important note: The variable only works for the new (current) JMS connection method.

AMQP_TTL

String

Sets the JMS m essage header " JMSTimeToLive". Important note: The variable only works for the new (current) JMS connection method.

AMQP_TYPE

String

Sets the JMS m essage header " JMSType". Important note: The variable only works for the new (current) JMS connection method.

AMQP_SYS_<name of the Message Header>

String

These variables can be used to set AMQP message headers in an "AMQP/JMS" Response if you are using an AMQP connection of version 1.0 (and only there).

AMQP_SYS_BodyType

String

Specifies the body type in Response "AMQP/JMS" . Allowed values: " data" , " sequence" , " value" . Default: " value" .

AMQP_SYS_ContentType

AMQP_ContentType

String

For AMQP connections of version 1.0 (and only there) the message header "ContentType" is set with the value of system variable AMQP_SYS_ContentType.

The message property "ContentType" is set with the value of system variable AMQP_ContentType.

Example value: "application/json".

(JMS_JMSCorrelationID)

String

(deprecated) Can be used to set the corresponding JMS message header "JMSCorrelationID". Important note: The variable only works for the old JMS connection method.

(JMS_JMSExpiration)

String

(deprecated) Can be used to set the corresponding JMS message header "JMSExpiration" (timestamp in ms). Important note: The variable only works for the old JMS connection method.

(JMS_JMSPriority)

String

(deprecated) Can be used to set the corresponding JMS message header "JMSPriority" (0-9). Important note: The variable only works for the old JMS connection method.

KAFKA_<keyname>

String

You can use variables of this form in Responses of type "Kafka" and in function "send Kafka message()" to pass header properties (key, value). Note: Since only byte arrays can be specified as the value for a header property, UTF-8 is always used as encoding!

KAFKA_PARTITION

Integer

If the variable is defined and has a value >=0, the value is passed as the partition of the topic to be used in the Response of type "Kafka".

KAFKA_TOMBSTONE

Boolean

If the variable is set to "true", a tombstone record is sent (this can be used to prematurely delete records in certain topics).

MQTT_<keyname>

String

In MQTT version 5, you can use variables of this form in Responses of type "MQTT" to pass user properties (key, value).

MQTT_SYS_CONTENTTYPE

String

In MQTT version 5, you can use variables of this form in Responses of type "MQTT" to set the (optional) Content Type, e.g. "plain/text".

MQTT_SYS_CORRELATIONDATA

String

In MQTT version 5, you can use variables of this form in Responses of type "MQTT" to set the Correlation ID, which can be used to match requests and responses. For details, please refer to the documentation of your MQTT server.

MSG_CALL_<name of parameter in uppercase letters>

String

In Lobster Integration's role as HTTP server, these variables can be used to read HTTP request parameters.

MSG_CALL_HEADER_HTTP_<name of header in uppercase letters>

String

In Lobster Integration's role as HTTP server, these variables can be used to read HTTP request headers.

MSG_CALL_HEADER_HTTP_METHOD

String

In Lobster Integration's role as HTTP server, this variable is filled with the method of the HTTP request (e.g. GET or POST).

MSG_CALL_HEADER_HTTP_PROTOCOL

String

In Lobster Integration's role as HTTP server, this variable is filled with the protocol that was used for the request (HTTP or HTTPS).

MSG_CALL_HEADER_HTTP_QUERY

String

In Lobster Integration's role as HTTP server, this variable is filled with the query parameters of the HTTP request.

Example: Assume the complete request is "http://example.com/dw/Request/get_orders?from=20170101&to=20170630". The variable would then contain the value "from=20170101&to=20170630".

MSG_CALL_HEADER_HTTP_REMOTE_HOST

String

In Lobster Integration's role as HTTP server, this variable is filled with the address of the client.

MSG_CALL_HEADER_HTTP_URI

String

In Lobster Integration's role as HTTP server, this variable is filled with the partial path after "/dw/Request" resp. "/dw/Trigger" of the requested resource.

Example: Assume the complete request "http://example.com/dw/Request/get_orders?from=20170101&to=20170630". The variable would then have the value "get_orders".

MSG_CALL_HTTP_AUTH_USER

String

In Lobster Integration's role as HTTP server, this variable is filled with the user name used if an authentication has taken place. See also system variables VAR_SYS_TRIGGER_HTTP_CHANNEL_ID , VAR_SYS_COMM_CHANNEL_ID, VAR_SYS_COMM_CHANNEL_TYPE.

MSG_CALL_HTTP_MULTIPARTn_NAME

String

Content of part n + 1. See Input Agent "HTTP" (event) (→ "Multipart").

MSG_CALL_HTTP_MULTIPARTn_VALUE

String

Content of part n + 1. See Input Agent "HTTP" (event) (→ "Multipart").

MSG_CALL_HTTP_MULTIPARTS

Integer

Number of parts. See Input Agent "HTTP" (event) (→ "Multipart").

MSG_CALL_HTTP_PATH_DATA

String

The variable is filled if the Input "Agent HTTP" (event) uses option "Treat as REST interface". So if the URL of the Input Agent is "http://localhost/dw/Request/example", the variable would have the value "orders" resp. "invoice/test" for the requests "http://localhost/dw/Request/example/orders" resp. "http://localhost/dw/Request/example/invoice/test".

MSG_CALL_KAFKA_KEY

String

If this variable is defined , the key of a Kafka message is stored in this variable when the message is received in an Input Agent of type "Kafka".

MSG_CALL_MQTT_CONTENTTYPE

String

In MQTT version 5, you can use this variable in Input Agents of type "MQTT" to read out the Content Type, e.g. "plain/text".

MSG_CALL_MQTT_CORRELATIONDATA

String

In MQTT version 5, you can use this variable in Input Agents of type "MQTT" to read out the "Correlation ID", which can be used to match requests and responses. For details, please refer to the documentation of your MQTT server.

MSG_CALL_REF_IDS

String

If this variable is created, it contains the "Interchange Control References" of all EDIFACT documents merged with the "Content Inspection" module. Example: 339;338;337

MSG_CALL_HTTP_REST_API_PATH_<name of path parameter>

String

Contains the value of the path parameter defined in the event-driven Input Agent "HTTP" (→ see "API variables").

MSG_CALL_var__ci_filename_to_use

(var__ci_filename_to_use)

String

If this variable is set, its value is used in the custom classes (phase 6) ContentInspectionResponse, ContentInspectionResponseAsync, ContentInspectionResponseUTF8 and ContentInspectionResponseUTF8Async to overwrite the file name that is sent to the "Content Inspection" module.

MSG_CALL_VAR_SYS_PORTAL_LANG

String

The variable contains the selected language of the "DataCockpit" module. Language/Code:

German: de

English: en

Spanish: es

French: fr

Italian: it

Danish: da

Dutch: nl

MSG_CALL_VAR_SYS_WF_ID

String

Only relevant in interaction with the "Workflow" module (see there).

MSG_CALL_VAR_SYS_WF_LINK

String

Only relevant in interaction with the "Workflow" module (see there).

MSG_CALL_VAR_HTTP_<name of header in uppercase letters>

String

In Lobster Integration's role as HTTP(S) client, these variables can be use to read the HTTP response headers from the response of the server.

MSG_CALL_VAR_HTTP_STATUS_CODE

Integer

In Lobster Integration's role as HTTP(S) client, this variable can be use to read the HTTP status code from the response of the server.

MSG_CALL_VAR_HTTP_STATUS_LINE

String

In Lobster Integration's role as HTTP(S) client, this variable can be use to read the HTTP status line from the response of the server.

VAR_AUTH_CERT_ID

String

The non-empty content of this variable is interpreted as the ID of a local certificate in the partner administration. See also section HTTPS Client.

VAR_AUTOSERIALIZE_DATA

String

See functions " serialize map/list()" and " deserialize map/list()" .

VAR_ERROR

String

Error message in case of an error.

VAR_FILENAME

String

Original file name. If no file name exists, the variable receives one of the following values.

If the profile uses a time-driven Input Agent of type "DB", the variable gets the value "db_query".

If the profile uses a time-driven Input Agent of type "Custom class", the variable gets the name of the used class.

"unknown" in all other cases.

Note: See also system variables VAR_FILENAME_PREFIX, VAR_FILENAME_SUFFIX and VAR_SYS_ATTACHMENT_NAME.

VAR_FILENAME_PREFIX

String

Original file name without file extension. Example: Contains value "test" for original file name "test.txt".

Note: See also system variables VAR_FILENAME, VAR_FILENAME_SUFFIX.

VAR_FILENAME_SUFFIX

String

File extension of original file name. Example: Contains value "txt" for original file name "test.txt".

Note: See also VAR_FILENAME, VAR_FILENAME_PREFIX.

VAR_FILESIZE

Integer

Number of bytes of the input file. Note: When testing a profile, the variable gets the value "0".

VAR_IS_NOT_TEST

Boolean

Is "false" in a test run. Note: See also system variable VAR_IS_TEST.

VAR_IS_TEST

Boolean

Is "true" in a test run (restart dialogue, "Upload file" and checkbox "Is test run"), otherwise "false" (restart dialogue, button "Start Cron"). Note: In a mapping test, the variable gets value "true" as well. Note: See also system variable VAR_IS_NOT_TEST.

VAR_JOBNR

(MSG_CALL_VAR_JOBNR)

String

Current job number. Note: When testing a profile, the variable gets the value "-1".

For subprofile calls with the functions "call profile()" and "trigger profile(a,b)" the job number of the calling profile can be retrieved in the called profile with the system variable MSG_CALL_VAR_JOBNR.

VAR_MAILSUBJECT

String

Contains the subject if the input data of the current job is an email, X.400 mail, or AS2 message. If you restart a profile, the variable can only be filled with the subject if the checkbox "Keep input information" (on "Main settings/General") in the profile was set during the first run of the profile.

Note: When testing a profile, the variable receives no value.

VAR_ORIGINATOR_JOBNR

String

If input data is delivered in an archive, each of the files extracted from the archive is processed in a separate job. This system variable then contains the job number of the originating job in all subsequent jobs. See GUI page "Main settings/General".

If a profile with the time-driven Input Agent "Mail" is triggered by another profile, subsequent jobs also receive the job number of the originating job (which had triggered). See section Distribution rules (mail).

VAR_PROFILENAME

String

Is filled with the name of the profile.

VAR_PROFILE_VERSION

String

Is filled with the version of the profile.

VAR_RECORDS

Integer

The variable contains the number of records in the mapping. If there has been no mapping, it will have the value "0".

VAR_RESPONSE_HTTP_HEADER_<name of response header>

String

In Lobster Integration's role as HTTP server (see details in the corresponding variants), these variables can be used to set HTTP response headers.

VAR_RESPONSE_HTTP_HEADER_RESP_STATUS

String

In Lobster Integration's role as HTTP server (see details in the corresponding variants), this variable can be used to set the HTTP response status.

VAR_RESPONSE_MAIL_HEADER_<name of the mail header>

String

If the corresponding variables have values, the email headers are set with these values in the Responses of type "Mail (SMTP)". Note: The evaluation of the header name is case-sensitive. The email header is set as written in the variable. You should stick to the RFC notation of the header

If you send via the ASM module, these variables are forwarded to ASM and then used there.

VAR_SENDER

String

Contains the sender of the input data if the input data of the current job is an email, an X.400 mail, an (S)FTP(S) message, an OFTP message, a FAX, an AS2 message or an SMS message.

In form profiles (module DataCockpit), the variable contains the value "WebMonitor:<login name>".

In running workflows (module), the variable contains the name of the Lobster Integration or DataCockpit (prefix "WebMonitor:") user who started the workflow.

Note: Before an error email is sent, the variable is re-evaluated.

Note: If a profile is restarted, the variable can only contain the sender if the profile had an active option "Keep input information" (on "Main settings/General") at its first run.

Note: If the profile is tested, the variable does not contain a value. It contains the user name for a profile restart.

VAR_SYS_ARCHENTRY_PATH

String

Is filled with the path of the current archive entry (if it is in a subfolder of the received archive).

VAR_SYS_ARCHIVE_NAME

String

The variable contains the name (without path) of a received archive file (e.g. "MyZip.zip").

VAR_SYS_ARCHIVE_ENTRY_n

String

The name of the file in an archive of the Response with the position number "n" (in the list of Responses) can be set with this system variable.

VAR_SYS_AS2_MIME_TYPE

String

MIME type of a received AS2 message.

VAR_SYS_ASM_RESPONSE[1..n]

String

If one of these variables has a value, the ASM module entry in the Response with the number "[1..n]" will be overwritten with the value of the variable. Example: "VAR_SYS_ASM_RESPONSE1" overwrites the ASM entry with the value of the variable in the Response with the number "1".

VAR_SYS_ATTACHMENT_NAME

String

If a time-driven Input Agent of type "Mail" ("POP3", "IMAP", "X.400") or a time-driven Input Agent of type "SMTP" is used, the variable will contain the original name of the attachment file. This is useful because the system variable VAR_FILENAME would only return "asdf.pdf" for an attachment named "test/asdf.pdf".

VAR_SYS_BACKUP

String

This system variable contains the name of the backup file of the input data of the current job, e.g. "Job_25995". Note: When testing a profile, the variable gets the value "Job_-1". Note: See also functions get path of backup-file() and read env-file().

VAR_SYS_CHANNEL_NAME_RESPONSE[1..n]

String

Name of the partner channel. See also system variables VAR_SYS_CHANNEL_RESPONSE[1..n] and VAR_SYS_TRIGGER_CHANNEL_ID.

VAR_SYS_CHANNEL_RESPONSE[1..n]

String

If "> 0", the ID of a channel of the Response with number "[1..n]" is replaced by the value of this variable. This applies to all Responses that can specify a channel. See also function "find channel()".

If the variable does not have a value > 0, an attempt is made to determine a suitable partner channel from the combination of the values of the variables VAR_SYS_CHANNEL_NAME_RESPONSE[1..n] and VAR_SYS_PARTNER_NAME_RESPONSE[1..n]. This is only done if these variables have values (i.e. a partner or partner channel name). A case-sensitive search is used. If no valid partner channel is found, the partner channel set in the Response is used.

VAR_SYS_CLIENTNAME

String

Name of the currently selected client.

VAR_SYS_COLLECTED_MSGS

String

In this system variable the contents of variable VAR_SYS_MESSAGE are accumulated for each erroneous/skipped record. See section Skip Record in Case of Error.

VAR_SYS_COMM_CHANNEL_ID

BigInteger

If authentication via a channel took place in an Input Agent, you will find the ID of the channel in this system variable. Note: Does not apply to profiles with a time-driven Input Agent triggered via HTTP. See system variable VAR_SYS_TRIGGER_HTTP_CHANNEL_ID in that case. Note: See also system variable MSG_CALL_HTTP_AUTH_USER .

VAR_SYS_COMM_CHANNEL_TYPE

String

If authentication via a channel took place in an Input Agent, you will find the type of the channel in this system variable , e.g. the value "HTTP" . Note : Does not apply to profiles with a time-driven Input Agent triggered via HTTP. Note: See also system variable MSG_CALL_HTTP_AUTH_USER .

VAR_SYS_CTRL_FILE

String

The variable contains the content of the control file during a data transfer via FTP. See time-driven Input Agent "FTP".

VAR_SYS_CURRENT_RECORD

String

The variable contains the number of the current record in the case of an error in phase 3, otherwise, the value will be "0".

VAR_SYS_DMZ_ID

String

This system variable may contain the factory ID of the DMZ server (from ./etc/factory.xml) that received the message. This is helpful if there are multiple DMZs. You can also see if the message came via DMZ or not. Does not apply to pure HTTP requests (via "/dw/Request/").

VAR_SYS_ENABLE_SEMANTIC_CHECK

Boolean

See section Semantic check.

VAR_SYS_EXCEL_SHEET_NAMES

String

List of all Excel sheets, separated by "\n".

VAR_SYS_EXCEPTION

(MSG_CALL_VAR_SYS_EXCEPTION)

String

This system variable contains the error message of the exception in the event of an error.

When using profile calls with the functions "call profile()" and "trigger profile()", exceptions that occur because the MessageService is not available will only cause the functions to return "false", but the exception message can be retrieved via the system variable MSG_CALL_VAR_SYS_EXCEPTION (if it is defined).

VAR_SYS_EXCEPTION_STACKTRACE

String

This system variable is filled if in phase 4 (SQL) or in the functions " call db procedure" , " select-statement" , " select into map()" an error occurs.

VAR_SYS_FILE_PATH

String

The variable contains the path of the input file (without file name) for profiles with time-driven Input Agent of type "File". The value of the variable corresponds to the value in the field "Directory" of the Input Agent.

VAR_SYS_HAS_INVALID_RECORD

Boolean

The value of this system variable is "true" if the processing of at least one record in phase 3 failed.

VAR_SYS_HAS_SQL_ERROR

Boolean

The value of this system variable is "true" if during the processing of at least one dataset in phase 4 an SQL error occurred.

VAR_SYS_LAST_IN_ARCHIVE

Boolean

This system variable has the value "true" if the current input file is the last file of an archive (e.g. ZIP file).

VAR_SYS_LASTINBULK

Boolean

The variable gets the value "true" if an input file was the last file of an SSH, OFTP or FTP transmission. The variable will only be filled if checkbox "Process received data on logout" is set in the respective Input Agent. The Content Inspection module also sets this variable to "true" when the last file of a file compound is processed.

VAR_SYS_LINES

Integer

The variable contains the number of lines processed of input files of the type "CSV", "Excel", "IDOC" and "Fixed-length".

VAR_SYS_MAIL_ARCHIVE

String

If the archiving of emails and X.400 mails is active, the variable contains the path of the archived email file.

VAR_SYS_MAIL_ATTACHMENTS

Integer

Number of attachments of a (X.400) mail.

VAR_SYS_MAIL_BODY

String

This system variable contains the mail body when receiving emails if there is no profile with active option "Use mail body" in Input Agent "Mail (SMTP)".

VAR_SYS_MAIL_HEADER_<name of mail header in uppercase letters>

String

This system variable contains a value if Input Agents "Mail" ("Imap"/"Pop3") or "Mail (SMTP)" are used. Note: You have to use uppercase for all characters.

Example: The system variable "VAR_SYS_MAIL_HEADER_DATE" contains the original string value of the email header "Date". The mail header line "Date: Wed, 6 Sep 2017 13:50:01 +0300" leads to the variable content "Wed, 6 Sep 2017 13:50:01 +0300".

VAR_SYS_MAIL_RECIPIENTS

String

This system variable contains a list of the recipients (and CCs, but not BCCs) if the input data of the current job is an email or an X.400 mail. If a profile is restarted, the variable can only contain a value if the profile had an active option "Keep input information" (on "Main settings/General") at the initial run.
Note: The variable must be explicitly defined. When testing a profile, the variable receives no value.
Note: The variable will only contain simple email addresses. If it should contain the full addresses, the Integration Server has to be started with the start option "-Dhub.datawizard.fullMailAddress=true".

VAR_SYS_MESSAGE

String

The variable collects relevant information for the record whose processing has failed.

VAR_SYS_MESSAGE_ID

String

The variable contains the message ID of an email, an X.400 mail, an AS2 message, or an OFTP message.

For an Input Agent "SAP ALE", the variable contains the value "<DOCNUM>@<TID>". For grouped IDocs this is always the last DOCNUM received.

For an event-driven Input Agent " HTTP" , the variable contains a UUID.

Note: The variable must be explicitly defined.

VAR_SYS_OFTP_FILE_COUNTER

String

See Input Agent "OFTP".

VAR_SYS_OFTP_ORIGINATOR

String

The variable is filled with the originator of an OFTP message. This may differ from the sender of the message.

VAR_SYS_OFTP_SFID

String

The variable is filled with the destination address of an OFTP message. This may differ from the recipient of the message.

VAR_SYS_PARTNER_NAME_RESPONSE[1..n]

String

Name of a partner channel. See description of system variable VAR_SYS_CHANNEL_RESPONSE[1..n].

VAR_SYS_PROFILECALL_PATH

String

Used internally when calling subprofiles in the target structure.

VAR_SYS_RESPONSE_WORKFLOW_<Response position number>

String

These system variables can be used to set the display name of workflows that are started with one of the custom classes (phase 6) WorkflowResponse or WorkflowResponseWithoutAttachment .

VAR_SYS_RESTART

Boolean

The variable has the value "true" if the current job was started by restarting an error job.

VAR_SYS_SAP_TID

String

For a Response of type "SAP ALE", this system variable (if defined) contains the TID that was used for sending (automatically created). The TID can also be created manually with function "create-sap-tid()" and then assigned to the variable.

VAR_SYS_SEMANTIC_FORMAT

String

See section Semantic check.

VAR_SYS_SEMANTIC_TYPE

String

See section Semantic Check.

VAR_SYS_SOAP_FAULT

String

Contains web service error message. See also functions "call SOAP-WebService()" and "call SOAP-WebService without template()".

VAR_SYS_SYSTEM_TYPE

Integer

The value encodes the type of Lobster system ("0" = prod, "1" = test, "2" = standby, "3" = DMZ). See also function "get system-type()".

VAR_SYS_TRIGGER_CHANNEL_ID

or

MSG_CALL_VAR_SYS_TRIGGER_CHANNEL_ID

Integer

If > "0", the channel in a time-driven Input Agent is replaced by the channel with this ID. If = "0" or if the variable is not defined, the channel selected in the Input Agent is used (or none if no channel is set). See also function "find channel()".

VAR_SYS_TRIGGER_HTTP_CHANNEL_ID

String

In profiles with time-driven Input Agent triggered via HTTP , this system variable is filled with the ID of the channel if an authentication has taken place via this channel.

VAR_SYS_VALIDATION_ERRORS

Integer

Function "dump validation data ()" stores the number of errors in this system variable.

VAR_TIMESTAMP

TimeStamp

Timestamp of the backup file or email.

If checkbox "Keep input information" (on "Main settings/General") is not set, the timestamp of the backup file is used. This is the start time of the original job (also for a restart).

If the checkbox is set, the sending time of an email or X.400 mail is used.

For time-driven Input Agent "File", the last modification of the file is used, in all other cases the starting time of the original job.