Das Schließen von Programmbibliothekselementen kann über zwei Exit-Punkte überwacht werden:
Am Request Exit kann sich die Systembetreuung Informationen über das Element verschaffen wie beim Return Exit des OPEN auf das Element; der CLOSE auf das Element kann nicht verhindert werden.
Am Return Exit ist das Element bereits geschlossen. Die Systembetreuung erhält hier die volle Identifikation des Elements mit Modifikationsdatum neuerstellter oder geänderter Elemente.
Request Exit (007)
Folgende Informationen werden an die Exit-Routine übergeben:
R1 = A(Exit-Parameterbereich) R12 = A(TPR Program Manager) R13 = A(Sicherungsbereich der rufenden Komponente) R14 = A(indirekter Rücksprung) R15 = A(Exit-Routine)
(siehe „System Exits für Programmbibliotheken“)
Rückkehrinformation:
R15 = X'000000RR' RR = Rückkehrinformation der Exit-Routine 00 kein Fehler 04 CLOSE-Element abgewiesen (von PLAM ignoriert)
Zusätzlich zum Returncode im Register 15 wird das Feld PMCLM versorgt.
Return Exit (008)
Der Return Exit ist identisch mit dem Request Exit.
DSECT
Die DSECT für den Parameterbereich kann mit dem Makro EX007 generiert werden:
name EX007 D[,[prefix],[ALL]] EX007 D IEX007 DSECT DS 0F ***************************************************** * CLOSE PARAMETER LIST FOR PLAM RZ ROUTINES * ***************************************************** PMRC DC F'0' PLAM RETURN CODE PMRC1 DC F'0' PLAM SECONDARY RETURN CODE PMPLV DC CL8' ' VERSION OF PLAM: VZZ.ZBZZ PMLIB DC A(0) A(LIBRARY NAME): CL54 PMLINK DC A(0) A(LIBRARY NAME LINK): CL8 DC CL1' ' DC CL1' ' DC CL1' ' PMCLM DC CL1' ' CLOSE MODE: Y: KEEP * N: DELETE PMTYP DC A(0) A(MEMBER TYPE): CL8 PMNAM DC A(0) A(MEMBER NAME): CL64 PMVER DC A(0) A(MEMBER VERSION): CL24 PMVAR DC A(0) A(MEMBER VARIANT): F PMDAT DC A(0) A(MODIFICATION DATE): CL14: DATE * ,CL8: TIME DC A(0) DC A(0) DC A(0) LEN EQU *-PMRC