09.07.2015 Views

z/OS V1R6.0 DFSMS Access Method Services for Catalogs

z/OS V1R6.0 DFSMS Access Method Services for Catalogs

z/OS V1R6.0 DFSMS Access Method Services for Catalogs

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Invoking from ProgramEntry and exit to the access method services processor occur through a module ofthe system adapter. Standard linkage is used; that is, register 1 points to theargument list, register 13 points to a save area, register 14 contains the returnaddress, and register 15 contains the entry point address. On exit from the accessmethod services processor, register 15 contains MAXCC. (See “Processor ConditionCodes.”)The argument list, as shown in Figure 31, can be a maximum of five fullwordaddresses pointing to strings of data. The last address in the list contains a 1 in thesign field. The first three possible strings of data begin with a 2-byte length field. Anull element in the list can be indicated by either an address of zeros or a length ofzero.Processor Condition CodesThe processor’s condition code is LASTCC, which can be interrogated in thecommand stream following each functional command. The possible values, theirmeanings, and examples of causes are:CodeMeaning0(0) The function was successful. In<strong>for</strong>mational messages might havebeen issued.4(4) Some minor problems in executing the complete function wereencountered, but it was possible to continue. The results might notbe exactly what the user wants, but no permanent harm appears tohave been done by continuing. A warning message was issued.8(8) A function could not per<strong>for</strong>m all that was asked of it. The functionwas completed, but specific details were bypassed.12(C)User I/O RoutinesThe entire function could not be done.16(10) Severe error or problem encountered. Remainder of commandstream is erased and processor returns condition code 16 to theoperating system.LASTCC is set by the processor at the completion of each functional command.MAXCC, which can also be interrogated in the command stream, is the highestvalue of LASTCC thus far encountered.User I/O routines enable a user to per<strong>for</strong>m all I/O operations <strong>for</strong> a data set thatwould normally be handled by the access method services processor. This makes itpossible, <strong>for</strong> instance, to control the command input stream by providing an I/Oroutine <strong>for</strong> SYSIN. Standard linkage must be used and standard registerconvention must be followed. See “Processor Invocation” on page 426 <strong>for</strong> anexplanation of standard linkage.A user I/O routine is invoked by access method services <strong>for</strong> all operations againstthe selected data sets. The identification of the data sets and their associated I/Oroutines is through the input/output list of the processor invocation parameter list(see Figure 31 on page 425).When writing a user I/O routine, the user must be aware of three things:1. The processor handles the user data set as if it were a non-VSAM data set thatcontains variable-length unblocked records (maximum record length is 32760Appendix D. Invoking <strong>Access</strong> <strong>Method</strong> <strong>Services</strong> from Your Program 427

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!