Please enable JavaScript to view this site.

ESL Documentation

Description:        

Initializes or updates profile information for a conversation that calls APPCStart. This routine can be used with APPCGetInitProfile to query the user for the profile values.

Declaration:

subroutine APPCSetInitProfile(string: PROFILE_NAME,
                              integer:ACTION,
                              string: LOCAL_LU_ALIAS_NAME,
                              string: PARTNER_LU_ALIAS_NAME,
                              string: PARTNER_TP_NAME,
                              string: MODE_NAME,
                              string: SECURITY_PARAMETERS,
                              integer:INACTIVITY_TIMEOUT,
                              integer:BUFFER_SIZE,
                              integer:ASCII_TABLE,
                              integer:EBCDIC_TABLE )

                     library "eslappc"

Arguments:

PROFILE_NAME is a string variable that specifies the name of the profile. This name is the same name specified as an argument to the APPCStart subroutine call. (This argument is case sensitive.)

ACTION is an integer variable that specifies the profile operation to be undertaken. Its values are:

APPC_CreateProfile

(Default) A new profile is being created. If a profile with the same name already exists, the existing profile is not updated and errorlevel is set to indicate that an error has occurred.

APPC_ReplaceProfile

An existing profile is being updated. If the profile does not exist, it is created automatically.

APPC_DeleteProfile

An existing profile is being deleted. The profile entry represented by PROFILE_NAME is deleted from the profile file.

LOCAL_LU_ALIAS_NAME is a string variable that specifies the locally-known name for the logical unit (LU). This name was established during configuration of your communications program. Its maximum length is eight characters. It also must be identified in the Partner LU Profile.

PARTNER_LU_ALIAS_NAME is a string variable that specifies the name of a partner logical unit (LU) profile that was established during configuration. Its maximum length is eight characters.

PARTNER_TP_NAME is a string variable that specifies the name of the partner transaction program (TP). (This argument is case sensitive.) Its maximum length is 64 characters. This is the TP name specified in the partner's configuration using the Remotely Attachable Transition Program Profile. If the partner is invoking an ESL program, the partner TP name must be the same as the profile name specified in the APPCAcceptStart subroutine call, and the partner TP filename must be ESLAPPCA.EXE.

MODE_NAME is a string variable that specifies the mode name. The mode identifies the characteristics of the allocated session. The name must match a mode name established during configuration. Its maximum length is eight characters.

SECURITY_PARAMETERS is a string variable that specifies the parameters used to validate access to a partner transaction program and its resources. The following options may be used:

None

The conversation does not use security.

Same

The user ID is verified locally.

pgm/USERID/PASSWORD

The partner logical unit (LU) validates access with the security information provided. Separate parameters with a forward slash (/). USERID is the ID of the local user; its maximum length is ten characters. (This argument is case sensitive.) PASSWORD is the password of the local user; its maximum length is ten characters. (This argument is case sensitive.)

INACTIVITY_TIMEOUT

is an integer variable that specifies a timer value (in seconds) allowing state switching to occur automatically when a conversation with authority to send is inactive for more than the specified number of seconds. This is a value that may require tuning. (Five seconds is a reasonable initial value.) If set to zero, no check is made to see if the partner application wants to send data between sends. This prevents automatic switching from being initiated by the partner. If automatic switching is disabled, your program, when it has completed sending, must be sure to call the APPCReadyToReceive subroutine, or call the APPCSendString subroutine with the MORE_TO_SEND argument set to APPC_ReadyToReceive. Maximum value is 2,145,600.

BUFFER_SIZE

is an integer between 0 and 65500 (default 2048) that specifies the buffer size (in bytes) to be used to send and receive data. If specified as zero, a default buffer size of 2K bytes is used. The buffer size must be large enough to contain the largest number of characters or bytes of data to be sent in one call.

ASCII_TABLE

is an integer value that represents the ASCII code page used for conversions. If specified as zero, the current system code page is used.

EBCDIC_TABLE

is an integer value that represents the EBCDIC code page used for conversions. If specified as zero, the international code page, 500, is used.

Remarks:

The profile values are used by the transaction program that issues the APPC calls. We have provided a sample program to do profile maintenance (APPCPROF.EAL).

Errors:

APPC_NORMAL_COMPLETION

Normal completion.

APPC_ERR_ON_FILE_OPEN

Error opening file.

APPC_ERR_ON_FILE_WRITE

Error writing file.

APPC_ERR_OUT_OF_DISK_SPACE

Out of disk space.

APPC_ERR_OUT_OF_MEMORY

Out of memory.

APPC_ERR_INV_PROFILE_NAME

Invalid argument: PROFILE_NAME

APPC_ERR_INV_LOC_LU_ALIAS_NAME

Invalid argument: LOCAL_LU_ALIAS_NAME

APPC_ERR_INV_PAR_LU_ALIAS_NAME

Invalid argument: PARTNER_LU_ALIAS_NAME

APPC_ERR_INV_PAR_TP_NAME

Invalid argument: PARTNER_TP_NAME

APPC_ERR_INV_MODE_NAME

Invalid argument: MODE_NAME

APPC_ERR_INV_SEC_PARMS

Invalid argument: SECURITY_PARAMETERS

APPC_ERR_INV_INACT_TIMEOUT

Invalid argument: INACTIVITY_TIMEOUT

APPC_ERR_INV_BUFFER_SIZE

Invalid argument: BUFFER_SIZE

APPC_ERR_INV_ASCII_TABLE

Invalid argument: ASCII_TABLE

APPC_ERR_INV_EBCDIC_TABLE

Invalid argument: EBCDIC_TABLE

APPC_ERR_INV_PROFILE_ACTION

Invalid argument: ACTION

APPC_ERR_PROFILE_ALREADY_EXISTS

Profile already exists when APPC_CreateProfile specified.

Example:

response to start

   call APPCSetInitProfile(Profile,       # "MYPROF"
                           ProfileAction, # "APPC_ReplaceProfile"
                           MyLU,          # "LU1" example name
                           PartnerLU,     # "LU4" example name
                           ReceiveTPName, # "MYPROF"
                           ModeName,      # "TKNRING" example name
                           NoSecurity,    # "none"
                           TimeOut,       # 5 five seconds
                           Buffer_Size,   # 0 use 2K byte buffer
                           ASCII_Table,   # 0 use current code page
                           EBCDIC_Table ) # 0 use code page 500