./D command

Use the ./D command to define the device to be simulated as the I/O PCB logical terminal and to specify the device formatting facility that is to be used for logical terminal output.

Usage note

The values specified in the ./D command remain in effect until they are reset by another ./D command.

Format

For running with no special device formatting facility:

 ./D      [DDOF=         NONE]

          [EOM=          $ | character]

          [EOS=          * | character]

          [LINE=         DELIMIT | MSG | SEG]

          [LTERM=        IOPCB | name]

For running with the BTS-supplied 2740 Typewriter Output Formatting:

 ./D                DDOF=          27401z

          [EOM=          $ | character]

          [EOS=          * | character]

          [LINE=         DELIMIT | MSG | SEG]

          [LTERM=        IOPCB | name]

For running with the BTS-supplied 3270 Formatting Facility when using formats defined with symbolic types for 3270 devices:

 ./D      SIZE=          (lines,columns)

          TYPE=          symbolic_device_type

          [EOM=          $ | character]

          [FEAT=         7F | code]

          [LIMIT=        0 | count]

          [LINE=         DELIMIT | MSG | SEG]

          [LTERM=        IOPCB | name]

          [TRSOSI=       YES | NO]
For running with the BTS-supplied 3270 Formatting Facility when using formats defined as 3270-1 or 3270-2:
 ./D      DDOF=          3270mc

          [EOM=          $ | character]

          [FEAT=         7F | code]

          [LINE=         DELIMIT | MSG | SEG]

          [LTERM=        IOPCB | name]

          [TRSOSI=       YES | NO]
For running with an LU6.2 device:
 ./D      DDOF=          LU62

          [CONVTYPE=     M | B]

          [EOM=          $ | character]

          [EOS=          * | character]

          [LINE=         DELIMIT | MSG | SEG]

          [LUNAME=       DFSLU | luname | netwkid.luname]

          [SYNCLVL=      C | N]

          [TPNAME=       DFSASYNC | tpname]

Keywords and operands

CONVTYPE=
Specifies whether the conversation type is basic (B) or mapped (M). If not specified, the default value is M. If the DDOF=LU62 is not specified, the CONVTYPE= operand is ignored.
DDOF=
Specifies the device-dependent output formatter used for terminal output.

DDOF=NONE indicates that no special formatter is used. The output messages are presented as they appear in the user I/O area at the time of insertion to DL/I. The output is presented in the same format as it would appear at the device. The default value is DDOF=NONE.

DDOF=3270mc indicates that the BTS-supplied 3270 Formatting Facility is used to format output inserted to the logical terminal name specified by the LTERM= operand.

m
Is 1 for 3270-1 and 2 for 3270-2.
c
Is the limit count option and has the same values and meaning as the LIMIT operand.

DDOF=27401z indicates that the BTS-supplied 2740 Typewriter Output Formatting Facility is used to format output inserted to the logical terminal name specified by the LTERM= operand. The BTS-supplied 2740 Typewriter Output Formatting Facility offers line feed, carriage return, and skip-to-tab features. The type of output formatting is specified by the DDOF=27401z operand, where:

2740
Is the terminal type
1
Must always be 1, whether it is a 2740 Model 1 or Model 2.
z
Is one of the following values:
0
The output is to be formatted with the IMS Batch Terminal Simulator header and trailer, but without the I/O area of the application program.
1
The output is to be formatted with the IMS Batch Terminal Simulator header and trailer, and with the I/O area of the application program.
2
The output is to be formatted without the IMS Batch Terminal Simulator header and trailer, and without the I/O area of the application program.
Note: The BTS-supplied 2740 Typewriter Output Formatting Facility assumes a record length of 131 bytes on the BTSOUT data set (1 byte for carriage control plus 130 bytes for text). When the BTSOUT logical record length is not 131, formatted output might appear distorted.

DDOF=LU62 indicates that I/O PCB receives the incoming message from an LU6.2 destination.

EOM=
Specifies the graphic character that is interpreted by IMS Batch Terminal Simulator as the end-of-message indicator and is used to delimit input messages. The indicator is not included in the data passed to the application on GU or GN message calls. Comments can follow the end-of-message indicator.
EOS=
Specifies the graphic character that is interpreted by IMS Batch Terminal Simulator as the end of terminal segment indicator and is used to delimit input message segments. The indicator is not included in the data passed to the application on GU or GN message calls.
FEAT=
Specifies the device feature indicator values, in hexadecimal, that correspond to the device features that were specified in the message descriptor (MOD or MID) when the Message Format Service control blocks were generated.

IMS Batch Terminal Simulator uses the feature code specified with device type and format name to locate the correct IMSVS.FORMAT library member.

The default value of 7F corresponds to FEAT=IGNORE as coded in the Message Format Service control blocks.

Related reading:
  • See Device feature indicator values for the meaning of the device feature indicator values.
  • For information about the indicator values and determining the hexadecimal indicator values that corresponds to the features that are specified in the control blocks that are being used, see IMS Application Programming APIs.
LIMIT=
Specifies the number of simulator statement errors allowed before the application is terminated. The default value is LIMIT=0. The limit count option is coded as follows:
0
The application program is to be terminated immediately upon detection of any statement error.
1 - 9
The limit count is multiplied by 10 resulting in a value in the range of 10 - 90. It is decremented by five for severe errors; otherwise, it is decremented by one. Severe errors also cause the rest of the current input message to be disregarded. When the limit count is decremented and a negative value is the result, the application is terminated. No more processing is allowed until a ./D command is entered to reset the limit count value.
Examples of severe statement errors (message numbers with an A suffix) are:
  • Unrecognized action keywords
  • Invalid position reference
  • Invalid IDCARD length
  • Unmatched apostrophes
Other statement errors (message numbers ending with W) might include:
  • An attempt to detect a undetectable field
  • An attempt to enter data in a protected field
LINE=
Specifies how the input line is used.
DELIMIT
Indicates that the graphic characters that the EOM and EOS keywords specify are used to delimit the input line. The default value is LINE=DELIMIT.
MSG
Indicates that the entire input line, including any delimiters, is used as an input message. IMS Batch Terminal Simulator processes the line as if an end-of-message indicator is placed at the end of each line. The end-of-message indicator is not included in the data passed to the application on GU or GN message calls.
SEG
Indicates that the entire input line, including any delimiters, is used as an input segment. IMS Batch Terminal Simulator processes the line as if an end-of-terminal-segment indicator is placed at the end of each line. The end-of-terminal-segment indicator is not included in the data passed to the application on GU or GN message calls.
LTERM=
Specifies the logical terminal name for the I/O PCB. The default value is LTERM=IOPCB.
LUNAME=
Specifies the input LU name for LU6.2 conversation. If the LU name is a network qualified name, it can be up to 17 characters long and consists of the network ID of the original system followed by '.' and LU name (for example, netwkid.luname). The LU name and the network ID must be a 1- to 8-character name. The default value is DFSLU. If the DDOF=LU62 is not specified, the LUNAME= operand is ignored.
SIZE=(lines,columns)
Specifies screen image size in lines (screen image height) and columns (screen image width). The two numeric values must be separated by a comma. For example, a 24 x 80 character screen image would be specified as SIZE=(24,80).
SYNCLVL=
Specifies whether the APPC/IMS sync level is confirmed (C) or not (N). If not specified, the default value is C. If the DDOF=LU62 is not specified, the SYNCLVL= operand is ignored.
TPNAME=
Specifies a 1- to 64-character name of the inbound TP. If not specified, the default name is DFSASYNC. If the DDOF=LU62 is not specified, the TPNAME= operand is ignored.
TRSOSI=
Indicates the options for shift out (SO) and shift in (SI) character translation in the 3270 formatted screen image.
YES
Indicates that SO and SI characters are to be translated to X'40'. The default value is TRSOSI=YES.
NO
Indicates that SO and SI characters are not to be translated.
TYPE=3270-An
Specifies the symbolic device type, where n is a value in the range of 1 - 15. This operand must be entered exactly as coded in the TYPE keyword in the MFS DEV macro for the device that is being simulated.

Examples

Example 1 for ./D command
Assume that the application checks the PCB name field of its I/O PCB as part of its processing logic, and that a message from TERM1 is followed by a message from TERM2. Also, assume that the data in the input message contains dollar signs ($). Two ./D commands are required in your input stream:
 ./T TC=TESTIT MBR=TEST                              1 

 ./D LTERM=TERM1 EOM=#                               2 

 TESTIT $99.99 CR #                                  3 

 ./D LTERM=TERM2 EOM=#                               4 

 TESTIT $99.99 CR #                                  5 

where:

 1 
Default values of PSB=TEST, LANG=ASM, PLC=1 are acceptable.
 2 
No special formatting routine is used.
 3 
The first input message is from TERM1.
 4 
Defines the next terminal and restates EOM=#.
 5 
This input message is from TERM2.
Example 2 for ./D command
When TYPE=3270,1 or TYPE=3270,2 is used in the generation of your formats, then DDOF=32701c or DDOF=32702c are used for the ./D command.
Related reading: For a description of TYPE=3270 used in the DEV statement, see IMS Application Programming APIs.
 ./D LTERM=BTS3270 DDOF=327021
Example 3 for ./D command
Assume all the terminals for your application are 2740, and you want the complete report that is produced by your SUMMARY transaction to appear in your output. Your input stream might contain:
 ./T TC=SUMMARY MBR=SUMMARY                          1 

 ./D DDOF=274011                                     2 

 SUMMARY    ITEM1*
            ITEM2*
            ITEM3*

 REPORT $

where:

 1 
Defines the transaction code and application to process it.
 2 
Specifies the BTS-supplied 2740 Output Formatting Facility, 1 for Model 1 or Model 2, and option 1 to include IMS Batch Terminal Simulator header, trailer, and user I/O area. Defaults of LTERM=IOPCB, EOS=*, and EOM=$ are acceptable.
Example 4 for ./D command
Assume the application processes input from an IBM® 3277 Model 2 and the input must be formatted by IMS Message Format Service before it is acceptable to the application program. The required ./D command is:
   ./D    TYPE=3270-A2 SIZE=(24,80) LIMIT=0
The command explicitly states that the device for which a formatter is to be used is a 3270 with a 24 x 80 screen image size, and that the application is to be terminated if the input to the application and the available screen image formats disagree (as indicated by a limit count value of zero). The input stream might contain:
 ./T  TC=SAMPLE MBR=SAMPLE                           1 

 ./D  TYPE=3270-A2 SIZE=(24,80) LIMIT=0

 /FOR SAMFORM  $                                     2 

 L01C10 '12345'  'ABC'  'SAMPLE' $                   3 

where:

 1 
Defines the transaction code and the application to process it.
 2 
Specifies the format command for the screen image defined by the Message Format Service MOD named SAMFORM.
 3 
Specifies the data fields to fill in on the MID named SAMFORM screen image: ('12345' is the modifiable field that starts at or spans line 1 column 10).

'ABC' is the next modifiable field. 'SAMPLE' is the next modifiable field.