When implementing ETO, to achieve your desired VTAM® terminal network you need
to be aware of certain requirements and aspects of how ETO and VTAM work together as you plan
for and define the physical terminals in the network.
Performing the following actions can ensure that you achieve
your desired VTAM terminal
network:
Assess how often IMS application
programs depend on specific terminal characteristics.
Check the accuracy of each VTAM terminal
definition. For each dynamic terminal, ETO builds a terminal structure
that relies on the VTAM definition
for the characteristics (such as the LU type, screen size, and model)
for that terminal.
Terminal characteristics that are specified
in your IMS system definition
might differ from (and override) those in the VTAM definitions. If these terminal characteristics
in the IMS system definition
are compatible with those of the actual terminal, the discrepancy
is not apparent. 1
Either provide specific node-name logon descriptors or use the
Logon exit routine (DFSLGNX0) for terminals that are not adequately
defined using the default logon descriptor.
Code one of the following two exit routines to determine the device
type:
The Logon exit routine (DFSLGNX0) can determine the device type
by examining the default logon descriptor.
The Signon exit routine (DFSSGNX0) can determine the device type
later in the process by examining the terminal control blocks.
When receiving a request to establish a terminal session, IMS relies on the following information
from VTAM session parameters:
UNITYPE
The unit type of the node that is attempting
to log on. IMS determines the
UNITYPE by using the following fields:
The LUTYPE field of the CINIT 2 request provides part
of the UNITYPE information. The LUTYPE value is usually found in the
first byte of the PSERVIC operand of the MODEENT macro, which is used
to generate the VTAM mode table
entry that is used for a logon. The following figure shows the fields
of the PSERVIC operand in the VTAM MODEENT
macro. Figure 1. VTAM MODEENT macro PSERVIC operand fields that IMS uses
The following table shows the mapping of the LUTYPE value
to the IMS UNITYPE.
Table 1. Mapping for VTAM LUTYPE value to IMS UNITYPE
VTAM LUTYPE
IMS UNITYPE
LUTYPE X'06'
LUTYPE6
LUTYPE X'02'
SLUTYPE2
LUTYPE X'01'
SLUTYPE1 (default) or
NTO
LUTYPE X'00'
3270, SLUTYPEP, or 3600/Finance
If the LUTYPE field is X'00' (indicating that the terminal
is 3270 non-SNA, Finance, or SLU P), IMS must
check the transmission services profile specification in the TS field
of the CINIT request. The TS value is usually found in the TSPROF
operand of the MODEENT macro that is used to generate the VTAM mode table. This LUTYPE value
must match the value in the logon descriptor that IMS selects for a logon.
The following table
shows the mapping of the TSPROF specification to the IMS UNITYPE.
Table 2. Mapping for TSPROF specification to IMS UNITYPE
TSPROF specification
IMS UNITYPE
X'02' or X'03'
3270
X'04'
SLUTYPEP (default) or
3600/Finance
Input RU size
The input RU (request unit) size in the
BIND must be less than or equal to the RECANY buffer size for the IMS (also required for static terminals).
Output RU size
The output RU size in the BIND must
be greater than or equal to the OUTBUF size that IMS determines for the terminal from the selected
logon descriptor. This parameter is also required for static terminals.
Screen size and model number
For non-SNA 3270 and SLUTYPE2
devices, IMS retrieves both screen
size (row and column) and model number from the BIND:
For static terminals, the screen size is the value that was specified
in the system definition.
For dynamic terminals, IMS determines
the screen size from the VTAM definition
or from the Logon exit routine (DFSLGNX0).
Recommendation:
Until the ETO feature was available, IMS ignored
the screen size and model number values in the BIND, because the IMS system definition held this information.
Therefore, check to ensure this definition is accurate.
If
you determine that a VTAM definition is inaccurate, you can use the Logon exit routine (DFSLGNX0) to override the VTAM-provided screen size and model number. For example, use a terminal naming convention or MODETAB definition convention. The Logon exit routine can also assign USER=NODE as a name,
when appropriate.
IMS uses
the values in the PSERVIC operand of the MODEENT macro, which is used
to generate the VTAM mode table
entry that is used for a logon. MFS formats must be available for
all screen sizes that IMS dynamically
builds.
Restriction: IMS does
not use the 3270 Read Partition Query (RPQ) command to determine the
screen size from the device controller.
For more information on the Logon exit routine (DFSLGNX0),
see IMS Version 15.5 Exit Routines.
1 If the actual terminal characteristics do not
match those in the IMS definition
or the VTAM definition, it
is possible that the terminal can function with IMS.
2CINIT is a network services
request sent from a system services control point (SSCP) to a logical
unit (LU), asking that LU to establish a session with another LU and
to act as the primary end of the session.