GDDM V3R2 Base Application Programming Reference
Previous topic | Next topic | Contents | Index | Contact z/OS | Library | PDF | BOOK


ASREAD

GDDM V3R2 Base Application Programming Reference
SC33-0868-02



Function


To perform device output and input.


   ASREAD      (attype, attval, count)

APL code 101 GDDM RCP code X'0C100000' (202375168)


Parameters


attype (returned by GDDM) (fullword integer)
The type of attention interrupt received. Possible values are:


0 ENTER key

1 PF key

2 Light pen
Changes to all other types of field are lost.

3 Magnetic stripe (badge) reader
The magnetic stripe record field (the one containing the cursor) has special characters from the magnetic stripe reader replaced by blanks if the operation was a success. This operation causes a refreshment of the display at the next interaction with the display.

4 PA key
Changes to all fields are lost.

5 CLEAR key
This operation causes a refreshment of the display at the next interaction with it. Changes to all fields are lost. If mapping, the mapgroup option may say "Refresh Screen" and repeat the ASREAD call automatically instead of returning attype=5.

6 Other
The interrupt received from the device does not belong to any of the defined categories; attval and count values are undefined.

7 Output-only device
The primary device only accepts output, and does not return input; attval and count values are undefined. A warning message is issued to emphasize this situation.

10 The buttons on a mouse, tablet or four-button cursor device
This is only returned if the mouse or tablet is enabled for use with interactive graphics functions. An FSENAB call to enable graphics input must have been issued for graphics input to be available with ASREAD.

attval (returned by GDDM) (fullword integer)
The value, if any, associated with attype, as follows:

1
PF key number
3
0 = success, 1 = failure
4
PA key number
10
Button number.

count (returned by GDDM) (fullword integer)
The number of modified fields after execution of the function.

If the GDDM page is a mapped page, count returns the number of modified mapped fields in that page, even if there are modified procedural alphanumeric fields in that page. If the GDDM page is not a mapped page, count returns the number of modified procedural alphanumeric fields in that page.

If the GDDM page contains high-performance alphanumerics, count is always 0.

If attype=2, count contains the number of modified light-pen fields.

If multiple partitions (real or emulated) are in use, the operator can move the cursor from one partition into another during the ASREAD call. If this happens, ASREAD returns the number of modified fields in the new current partition; that is, the partition that now contains the cursor. If real partitions are in use, only data from the active partition is input. The terminal user's changes in other partitions are not available.

Description


Performs all outstanding output, and for an interactive device, requests input from the device. The ASREAD call is completed when an attention interrupt from the device is received and the attention information is returned to the caller.

Restrictions exist on the use of some keys, depending on the operating environment. For further information, see the GDDM Base Application Programming Guide.

In a windowing environment, it is possible for an attention interrupt to be pending, in which case the call is completed immediately.

A pending attention interrupt is created as follows; the device for which the ASREAD call is to be performed must be associated with an operator window of a windowed device, and the operator window must have a zero coordination exit; for more information on coordination exits, refer to "Special-purpose programming in GDDM" in topic 22.0.

When the WSIO call is issued for the windowed device, and the end user interacts with the operator window, a pending attention interrupt is created. If an attention interrupt is already pending, it is replaced by the new pending attention interrupt. The pending attention interrupt is removed by the ASREAD call, or by any other input/output function.

If the primary device is a queued printer (family-2), a system printer (family-3), or a page printer (family-4), the action of ASREAD is as described under FSCOPY. In this case, the function is not allowed if graphics retrieval is in progress; see GSGET.

By default, only procedural, mapped, and high-performance alphanumeric input is available with an ASREAD call. However, an FSENAB call can be used to enable graphics or image input to be entered in response to the ASREAD call.

For a plotter, pressing the Clear key on the attached workstation while ASREAD is executing cancels the output.

When running in CICS transaction-independent pseudoconversational mode, the ASREAD call only receives input from the device. It never sends output to the device.

For CICS transaction-dependent pseudoconversational applications, when the pseudoconversational mode is in use, the first ASREAD call in a sequence only performs its input function; it does not perform output. Subsequent calls to ASREAD work in the usual way.

However, there are two exceptions to this rule:

  1. The mapgroup requests automatic processing of the CLEAR key. In this case, the ASREAD call performs in the usual way, that is, output is bypassed and the input data is processed, after which Mapping signals a screen refresh.
    
    
    The result of this will be as if a second ASREAD call had occurred, that is, the screen contents are output again, and the transaction waits for input.
    
    
  2. A GDDM line output error message occurs before an ASREAD call. In this case, the screen contents have been destroyed and therefore, for GDDM to continue, the screen contents have to be recreated.
    
    
    Therefore, the ASREAD call performs in the usual way, that is, output is performed, a "wait for input" state is entered, and the transaction becomes Conversational for this invocation.
    
    

Principal errors


ADM0179 E
INVALID FUNCTION DURING GRAPHICS RETRIEVAL
ADM0233 W
SYMBOL SET IS NOT LOADED
ADM0270 E
SCREEN FORMAT ERROR
ADM0273 W
PS OVERFLOW
ADM0275 W
GRAPHICS {(IMAGE) }CANNOT BE SHOWN. REASON CODE n
ADM0276 W
DEVICE IS OUTPUT ONLY
ADM0498 E
PRINT TERMINATED. RETURN CODE X'xxxxxx' FROM DEVICE
ADM0909 W
NO GRAPHICS FIELD
ADM0911 W
COMPOSED TEXT BLOCK OVERLAPS PAGE BOUNDARY. TEXT IGNORED
ADM0920 E
CLEAR KEY PRESSED. PLOTTING IS TERMINATED
ADM2850 W
DBCS CHARACTERS IN AN SBCS FIELD ARE CONVERTED TO BLANKS
ADM2864 W
PICTURE IS TOO LARGE FOR 5080 DISPLAY LIST BUFFER
ADM3004 E
FIELD LIST n1, ERROR n2 AT ARRAY ELEMENT (n3,n4)
ADM3005 E
DATA BUFFER n1, ERROR n2 AT INDEX n3
ADM3010 E
BUNDLE LIST n1, ERROR n2 AT ARRAY ELEMENT (n3,n4)
ADM3173 W
GRAPHICS CANNOT BE SHOWN. CELL WIDTH OR DEPTH EXCEEDS LOADABLE LIMIT
ADM3178 W
PATTERNS CANNOT BE SENT TO DEVICE. AREA SHADING MAY BE INCORRECT
ADM3179 W
IMAGE CANNOT BE SHOWN. REASON CODE n
ADM3281 W
GRAPHICS MAY BE VISIBLE WITHIN OPAQUE ALPHANUMERIC FIELDS
ADM3282 W
AMOUNT OF DATA EXCEEDS THE STORAGE CAPACITY OF THE DEVICE

Go to the previous page Go to the next page



Copyright IBM Corporation 1990, 2012