ECS provides the following subroutines for writing information to the screen buffer:
EcsTypeString simulates the typing of a string of data on a 3270/5250 terminal keyboard. Characters in the string are entered into the screen buffer starting at the current cursor location. Each character is sent one-by-one as the command is processed. If the string length equals or exceeds the field size, the consequences are identical to what would happen if the user had entered the string directly from a 3270/5250 terminal keyboard.
EcsWriteField copies a string directly to the field number specified, eliminating the need to know where the cursor is at any given time. Query the screen buffer for the field number of the field location before writing the text out to the field. Field locations seldom change, but new fields may be added, or fields may be deleted in the host application. By querying for the field number, based upon row and column, you can safeguard your ESL program from some of the modifications in the host application.
EcsWriteFieldRowCol enables you to dynamically retrieve a field number at runtime to ensure that data is placed in the correct field. This subroutine copies the input string directly into the field location specified by the row and column input arguments.
Field Compression
EcsWriteField and EcsWriteFieldRowCol safeguard your application from field (data) compression on the host. Field compression takes multiple adjacent fields with the same attributes and treats them as one field to save on the overhead of transmitting the attributes for each field. This can cause field number mismatch, unless you develop your application to anticipate and correct for it.