Please enable JavaScript to view this site.

ESL Documentation

Prototype

subroutine EcsPressENTER(  )

Description

Emulates pressing the ENTER key on a 3270/5250 terminal.   If the AutoWait feature is enabled, then the predefined watch command(s) within the global variables EcsWatchCommandString and EcsTimeLimit are used to attempt a screen synchronisation.

Parameters

NA

Return Value

ECS_E_NOTINIT

Not initialized - command was ignored

ECS_E_NOTCONN

Not connected to an active session

ECS_E_SENDKEY

Failed to send keystroke

ECS_E_INUSE

Session is already in use

ECS_E_BADKEYCODE

Key code is unrecognized

ECS_E_WATCH

Empty or invalid EcsWatchCommandString

ECS_E_MULTWATCH

Multiple watches are not currently supported

ECS_E_BADTIME

Illegal time limit specified (0 < time limit < 1 hour) in EcsTimeLimit

ECS_E_ERRORFREE

No errors were generated

Example

###***************************************

###  Actions to send a key to the emulator

###***************************************

action PressKey is

    if ( Other_RB is checked ) then

        extract from text of Keys_CMB

            skip by 38

            take by number Key_IV

        call EcsPressKey ( Key_IV )

        copy errorlevel to ErrorLevel_IV

        copy "EcsPressKey" to Call_SV

    else

        call EcsPressENTER ( )

        copy errorlevel to ErrorLevel_IV

        copy "EcsPressEnter" to Call_SV

    end if

    if ( ErrorLevel_IV = ECS_E_ERRORFREE ) then

        copy "Key was pressed successfully" to Message_SV

        action DisplayMessage

    else

        action DisplayError

    end if

    make PressKey_DB invisible

    make PressKey_DB temporary