• Aucun résultat trouvé

178 CICS/VS APRM(ML)

Dans le document Application Programmer's Reference Manual (Page 190-200)

IOERROR XI 80 1 (Error not

178 CICS/VS APRM(ML)

No

Yes

Initiate transaction specified in Attach FMH

Initiate transaction specified by terminal input AID

Syntax of the DFHTC Macro Instruction

This section shows the syntax of the DFHTC macro instruction available for use with each type of device or logical unit, arranged in numerical order.

The syntax displays for each device and for the 3270 logical unit are followed by information specific to that device or logical unit.

However, information about 3600, 3650, 3767, 3770, and 3790 logical units is given in the CICS/VS subsystem guides.

TCAM SUPPORTED TERMINALS AND LOGICAL UNITS (CICS/OS/VS ONLY)

Under CICS/OS/VS only, because TCAM permits many applications to share a single network, the CICS/VS TCAM interface supports data streams rather than specific terminals or logical units.

Operations for terminals and logical units connected through TCAM use the same operands as the terminals and logical units connected through the other access methods used with CICS/VS.

For input, TCAM supports only the READ And READL operations. For output, TCAM supports only the WRITE and WRITEL operations with the optional use of ERASE. The DEST operand can be specified for all TCAM output operations. (The syntax of the DFHTC macro for TCAM operations is given later in this chapter.)

The 2260 compatibility option is not available for 3270 connected through TCAM.

3650 logical units cannot be connected through TCAM.

BTAM PROGRAMMABLE DEVICES

When BTAM is used by CICS/VS for programmable binary synchronous communication line management, CICS/VS initializes the communication line with a BTAM read initial (TI); the terminal response must be a write initial (TI) or the equivalent. If a user-written application program then issues a read, CICS/VS issues a read continue (TT) to that line; if the application program issues a write, CICS/VS issues a read interrupt (RVI) to that line. If end of transmission (EOT) is not

received on the RVI, CICS/VS issues a read continu-e (TT) until the EOT is received. When TCAM is used, all of this line control is handled by the MCP rather than by CICS/VS.

The programmable terminal response to a read interrupt must be nend of transmission" (EOT). The EOT response may, however, be preceded by writes, in order to exhaust the contents of output buffers; this is provided the input Duffer size is not exceeded by this data. The input buffer size is specified by the system programmer during preparation of the terminal control table. CICS/VS issues a read continue until it receives an EOT, or until the input message exceeds the size of the input buffer ~n error condition).

After receiving an EOT, CICS/VS issues a write initial (TI) or the equivalent (depending on the type of line). The programmable terminal response must be a read initial (TI) or the equivalent.

Chapter 4.2. Terminal Control (DFHTC Macro Instruction) 179

If another write is issued by the application program, CICS/VS issues a write continue (TT) to that line. If the application program issues a read after it has issued a write, CICS/VS turns the line around with a write reset (TR). (CIeS/VS does not recognize a read interrupt.)

When CICS/VS initiates a transaction using the automatic transaction initiation facility, it first of all issues a write initial (TI) or the equivalent. The terminal must respond with a read initial (TI) or the equivalent. Reading from or writing to the terminal can then continue as if the write initial had been caused by a write instruction in the application program.

To ensure that binary synchronous terminals (for example, System/310, 1130, 2180) remain coordinated, CICS/VS processes the data collection or data transmission transaction on any line to completion, before polling other terminals on that line.

The programmable terminal actions required for the above activity, with the corresponding user application program macro instructions and CICS/VS actions, are summarized as follows: switched, the equivalent. The user-written programmable terminal program must issue the equivalent of the BTAM operation shown.

TELETYPEWRITER PROGRAMMING

The teletypewriter (World Trade only) uses two different control characters for print formatting:

<

carriage return,

ex

I 22' in ITA2 code or X 115' in EBCDIC)

- line feed, (X128 1 in ITA2 code or XI 251 in EBCDIC)

The application programmer should always use

<

first; that is

<=

or

<===.,

but never

=.<,

otherwise following characters (data) may be printed while the typebar is moving to the left.

Message Format

aessage B~in: To start a message on a new line at the left margin, the message text must begin with XI1511 1 (EBCDIC). CICS/VS recognizes the XI 17' and changes it to XI 25' (X '171 is an idle character).

Message Body: To write several lines with a single transmission, the lines must be separated by X115251 , or if multiple blank lines are required, by XI 152525 ••• 25'.

Message End before Next Input: To allow input of the next message on a line at the left margin, the preceding message must end with X'1511'.

CICSjVS recognizes X'151 and changes the character following it to XI 25' •

Message End before Next Output: In the case of two or more successive output messages, the message begin and the message end look the same;

that is XI 1511', except for the last message ~ee above). To make the message end of the preceding message distinguishable from the message begin of the next message, the penultimate character of the message end must not be X115 1•

Message Length.

It is recommended that messages for teletypewriter terminals, do not exceed a length of about 3000 bytes or approximately 300 words.

CONNECTION THROUGH VTAM

Both the TWX Model 33/35 Common Carrier Teletypewriter Exchange and the WTTY Teletypewriter (World Trade only) can be connected to CICS/VS through BTAM, or through VTAM using NTO.

If a device is connected through VTAM using NTO, the protocols used are the same as for the 3167 logical unit, and the application program can make use of these protocols. However, the data stream is not translated to a 3167 data stream but remains as that for a TWX iTTY.

Chapter 4.2. Terminal Control (DFHTC Macro Instruction) 181

System/3

r- r---.---~

I I

I DFHTC I TYPE=(READ[,SAVE])

I I

,

,

I

I , DFHTC TYPE=(WRITE[,WAITX ,SAVE][,TRANSPARENT])

I [ ,DEST= {symbolic address I YES} ]->TCA! only

I [,ENDMSG=NO]

L ______ I I~ _ _ _ _ _ ~ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ~

I

I I DFHTC TYPE= {DISCONNECT IRESET}

I L ______ ' - -______ ,~ ____________________________________________________ ___'

TYPE=DISCONNECT applies to switched line System/3s only.

System/370

Support and macro instruction syntax identical to System/3.

182 CICS/VS APRM ~L)

System/7

DFHTC TYPE=(READ[,WAIT][,SAVE]

[ , {TRANSPARENT IPSEUDOBIN} ])

L _______ ~ _______ ~ ________________________________________________________ ~

DFHTC TYPE=(WRITE[,WAIT][,SAVE]

[ , {TRANSPARENT I PSEUDOBIN} ])

[,DEST={symbolic addresslYES} }-->TCAM only

CICSjVS treats the Systemj7 as any other programmable terminal.

Transactions are normally initiated from the System/7 by issuing a

RETURN CONTROL ON INTERRUPT LEVEL 3

TEST FOR SUCCESSFUL COMPLETION

As shown above, the transaction identification is transmitted in BCD application programs for the multipoint System/7 should be designed with the shortest possible execution time.

It is an MSPj7 standard that the first word (two characters) of every message received by the System/7 be an identification word. Note,

however, that all identification words beginning with

"m"

(X'20') are reserved by CICS/VS for future use.

Chapter 4.2. Terminal Control (DFHTC Macro Instruction) 183

When the PSEUDOBIN parameter is specified as part ot an input request (for example, DPHTC TIPE=(READ,PSEUDOBIN», the length of the TIOA

provided by the application program must be at least twice that of the data to be read. If for example, twenty System/1 words (40 bytes) are to be read, the data area of the TIOA must be at least 80 bytes in length.

When the PSEUDOBIN parameter is specified as part of an output request, terminal control always obtains a new TIOA and frees the old TIOA unless SAVE is specified. Therefore, on a DPHTC

TIPE=(WRITE,READ,PSEUDOBIN) request, the application program must reload the TIOA address (from TCTTEDA) to access the input data from the

Systemj7.

In the case of a System/1 on a dial-up (switched) line, the system/7 application program must, initially, transmit a four-character terminal identification. (This terminal identification is generated during preparation of the TCT through use of the DPBTCT TIPE=TERMINAL, TR!IDNT=parameter specification.) CICS/VS responds with either a

"ready" message, indicating that the terminal identification is valid and that the System/7 may proceed as if it were on a leased line, or an INVALID TERMINAL IDENTIFICATION message, indicating that the terminal identification sent by the System/7 did not match the TRMIDNT=parameter specified.

Whenever CICS/VS initiates the connection to a dial-up System/7, CICS/VS writes a null message, consisting of three idle characters, prior to starting the transaction. If there is no program resident in the System/1 capable of supporting the Asynchronous Communication Control Adapter (ACCA), BTA! error routines cause a data check message to be recorded on the CICS/VS (host) system console. This is normal if the task initiated by CICS/VS is to IPL the System/7. Although the data check message is printed, CICS/VS ignores the error and continues normal processing. If a program capable of supporting the ACCA is resident in the System/7 at the time this message is transmitted, no data check occurs.

When a disconnect is issued to a dial-up System/7, the 'busy' bit is sometimes left on in the interrupt status word of the ACCA. If the line connection is reestablished by dialing from the System/1 end, the 'busy' condition of the ACCA prevents message transmission from the System/7.

To overcome this problem, the System/7 program must reset the ACCA after each disconnect and before message transmission is attempted. This can be done by issuing the following instruction:

PiRI 0,8,3,0 RESET ACCA

This procedure is not necessary when the line is reconnected by CICS/VS (that is, by an automatically initiated transaction).

184 CICS/VS APRM(KL)

2260 Display Station

I

I I I I I

DFHTC

DFHTC

TYPE= ({READIREADL} [,WAIT][ ,SAVE])

TYPE= ({WRITE IWRITEL} [,WAIT][ ,SAVE][ ,ERASE]) [,LINEADR={numberIYES} ]

[,DEST={symbolic addresslYES} ]-->TCAM only

L _______ ~ _______ ~ ________________________________________________________ ~

The following is an example of the coding required to write data to a 2260 terminal screen and specify the screen line address at which the write is to begin:

DFBTC TYPE=WRITE, LINEADR=10

WRITE DATA TO A TERMINAL SCREEN

*

STARTING AT THIS SCREEN LINE

The LINEADR operand specifies on which line writing is to begin. The hexadecimal equivalent of a line number in the range 1-12 ~O-FB) must be provided in the application program. This can be done in either of two ways:

1. By including the LINEADR=number operand in the DFHTC macro instruction, as shown above.

2. By coding a single instruction, prior to issuing the DFHTC macro instruction, that places the line number in the TIOALAC field of the current TIOA. If the latter method is used, the LINEADR=YES operand must be included in the DFHTC macro instruction.

The following are examples of the coding required to write data to a 2260 terminal screen and dynamically determine the screen line address at which the write is to begin.

Chapter 4.2. Terminal Control ~FHTC Macro Instruction) 185

I

IFor Assembler Language 1 I MVI TIOALAC,X'FO' 1

I

I I DFHTC TYPE=WRITE, 1 LINEADR=YES I

WRITE STARTING AT SCREEN LINE 1

WRITE DATA TO A TERMINAL SCREEN

STARTING LINE ALREADY SPECIFIED

*

1---

IFor COBOL MOVE 240 TO TIOALAC.

DFHTC TYPE=WRITE, LINEADR=YES For PL/I

TIOALAC=240;

DFHTC TYPE=WRITE, LINEADR=YES

2265 Display Station

NOTE: PLACE STARTIN~ LINE IN TIOA.

WRITE DATA TO A TERMINAL SCREEN STARTING LINE ALREADY SPECIFIED

/*START WRITE AT SCREEN LINE 1*/

WRITE DATA TO A TERMINAL SCREEN STARTING LINE ALREADY SPECIFIED

*

*

Support and macro instruction syntax as for 2260 Display Station except that the hexadecimal equivalent of a line number can be in the range 1 through 15 (pO through FE).

2740 Communication Terminal

I

DFHTC 1 1 TYPE=(READ[,W!IT]) I

~ _ _ _ _ ~ _____ L ______________________________________________________ _

DFHTC TYPE= (WRITE[ ,WAIT][ ,SAVE])

[,DEST=symbolic addresslYES} ]-->TCAM only

186 CICS/VS APRM(ML)

2741 Communication Terminal

DFHTC

DFHTC

TYPE= (READ[ ,WAIT])

,RDATT=symbolic address

TYPE= (WRITE[ , WAIT][ , SAVE]) ,WRBRK=symbolic address

[,DEST=symbolic addressIYES}]-->TCAM only

If 2741 read attention support is included by the system programmer at system generation, a 2741 terminal operator can signal Read Attention by pressing the ATTN key after typing a message. To provide for this, the application programmer must issue a

DFHTC TYPE=READ,

RDATT=symbolic address

*

macro instruction, where symbolic address is the label of a routine to which control is passed if the terminal operator terminates the input by pressing the AT'rN key. (See "Read Attention" below.)

If 2741 write break support is included by the system programmer at system generation, a 2741 terminal operator can terminate the receipt of a message by pressing the ATTN key. To provide for this, the

application programmer must issue a DFHTC TYPE=WRITE,

WRBRK=symbolic address

macro instruction, where symbolic address is the label of a routine to which control is passed if the terminal operator presses the ATTN key while a message is being received. (Write Break support, described below, is not available under CICS/DOS/VS.)

*

Read Attention support may be generated in any CICS/OSjVS or CICS/DOS/VS system to permit a response to the terminal operator pressing the ATTN key (rather than the return key) after typing a

message, or without typing a message if no data is to be entered. Write Break support may be generated in any CICS/OSjVS system to permit a response to the terminal operator pressing the ATTN key while receiving a message. The following features must be installed on the 2741:

• For Read Attention: Transmit Interrupt (7900).

• For write Break: Receive Interrupt (4708).

Chapter 4.2. Terminal Control (DFHTC Macro Instruction) 187

REA D A TTE NTIO N

If the terminal operator presses the Attention key after typing a message, it is recognized as a Read Attention if:

• Read Attention support is generated into the system (CICS/OS/VS or CICS/DOS/VS) •

• The message is read by a DFBTC TYPE=READ,RDATT=symbolic address macro instruction (which has an implied WAIT).

When this occurs, control is transferred to a CICS/VS read attention exit routine, if it has been generated into the system. This routine is a skeleton program that can be tailored by the system programmer to carry out actions such as the following:

• Perform some data analysis or modification on a Read Attention.

• Return a common response to the terminal operator following a Read Attention.

• Return a response and request additional input that can be read into the initial input area or into a new area.

• Request new I/O without requiring a return to the task to request additional input.

When the Read Attention exit routine is completed, control is returned to the application program at the address specified in the DFHTC TYPE=READ macro instruction. The return is made whenever one of the following occurs:

• The exit routine issues no more requests for input.

• The exit routine issues a DFHTC TYPE=READ macro instruction and the operator terminates the input with a carriage return. (If the operator terminates the input with an Attention, the exit routine is reentered and is free to issue another READ.)

If the terminal operator presses the Attention key during a read, it is recognised as a read attention only if read attention support is generated and if the RDATT operand is included in the DFBTC macro

instruction requesting the input. If either or both of these conditions do not exist, the "Attention" is treated as a normal read completion, that is, as if the return key had been pressed.

WRITE BREAK (CICS/OS/VS ONLY)

If the terminal operator presses the Attention key while a message is being received, it is recognized as a write Break if:

• Write Break support is generated into the system (available only in CICS/OS/VS) by the system programmer.

• The write was initiated by a DFBTC TYPE=WRITE,WRBRK=symbolic address macro instruction (which has an implied WAIT).

When this occurs, the remaining portion of the message is not sent to the terminal. The write is terminated as though it were successful, and a new-line character (XI1SI) is sent to cause a carrier return. control

188 CICS/VS APR!! (!L)

Dans le document Application Programmer's Reference Manual (Page 190-200)