openUTM automatically restarts the screen for terminals in the following cases:
If a screen output took place at the last synchronization point in a service and the user has signed on at the application again following the interruption to the service, e.g. after:
the application has been terminated normally without terminating the service
the application has terminated abnormally
KDCOFF within a service
connection loss
This screen restart is only performed when the user signs on again if the user ID or, in applications without user IDs, the LTERM partner, was generated with restart.
To do this, you set the operand RESTART=YES in the USER or LTERM statements at generation (see openUTM manual “Generating Applications”).
Following the end of an application then, in the case of standalone UTM applications, a screen restart is only possible in UTM-S applications.
during a service, an asynchronous message was output to the screen and the user did not issue a KDCDISP command to continue the dialog, i.e. the user attempts to input the message into the asynchronously output screen content (only command entries are possible).
within a service, after a follow-up transaction has been rolled back by MPUT RM, KCDF = KCRESTRT and PEND RS and screen output has taken place at the last synchronization point in the service.
when certain operating errors occur on BS2000 systems (e.g. terminal switched on or off, AM key).
Screen restart is only possible because openUTM stores the data on the last screen structure, initially in a buffer in the process-specific system storage area. At the end of the transaction, openUTM writes this information to the restart area in the page pool of the KDCFILE, see also the openUTM manual “Generating Applications”.
When formatting output on BS2000 systems, openUTM writes the entire screen contents to the restart area if the entire screen is to be restructured (KCDF= REPLACE, change of format). During a screen update, only the fields which are also overwritten at the terminal are updated in the restart area. Similarly, during input formatting nly the fields received from the terminal are updated in the restart area.
If you use a formatting system on a BS2000 system, openUTM automatically performs the setup, modification and storage of the restart area in interaction with the formatting system. However, if you use -formats and write the formatting routine yourself, openUTM will save the restart area, but the setup and modification of the area are the responsibility of the formatting routine programmed by you (see chapter "Event exit FORMAT (BS2000 systems)").