code

Name
Astradyne (UK) Ltd
Scriptlanguage
Plain Text
Tabwidth
4
Date
Sun, 12 May 2013 15:03:25 +0000
IP
192.168.0.1

This is a simple CL program that calls the Retrieve Spool File Attributes API (QUSRSPLA) to determine if a a spool file exists within a given job. The program returns a value of '1' if the spool file exists, and a value of '0' if it doesn't.

  1.             PGM        PARM(&SPLF &JOB &JOBUSR &JOBNO &RTNC)           
  2.                                                                          
  3. /* Parameter definition... */                                           
  4.             DCL        VAR(&SPLF)    TYPE(*CHAR) LEN(10)               
  5.             DCL        VAR(&JOB)    TYPE(*CHAR) LEN(10)               
  6.             DCL        VAR(&JOBUSR)  TYPE(*CHAR) LEN(10)               
  7.             DCL        VAR(&JOBNO)  TYPE(*CHAR) LEN(6)                 
  8.             DCL        VAR(&RTNC)    TYPE(*CHAR) LEN(1)                 
  9.                                                                          
  10. /* Work Variables... */                                                 
  11.             DCL        VAR(&RCV)    TYPE(*CHAR) LEN(40)               
  12.             DCL        VAR(&RCVLEN)  TYPE(*CHAR) LEN(4)                 
  13.             DCL        VAR(&QUALJOB) TYPE(*CHAR) LEN(26)               
  14.             DCL        VAR(&SPLFNO)  TYPE(*CHAR) LEN(4)                 
  15.             DCL        VAR(&ERROR)  TYPE(*CHAR) LEN(32) VALUE(X'0020') 
  16.                                                                          
  17. /* Call the API to retrieve some spool file attributes... */             
  18.             CHGVAR    VAR(%BIN(&RCVLEN)) VALUE(40)                     
  19.             CHGVAR    VAR(&QUALJOB) VALUE(&JOB *CAT &JOBUSR *CAT &JOBNO)
  20.             CHGVAR    VAR(%BIN(&SPLFNO)) VALUE(-1)               
  21.                                                                    
  22.             CALL      PGM(QUSRSPLA) PARM(&RCV &RCVLEN 'SPLA0100' +
  23.                           &QUALJOB ' ' ' ' &SPLF &SPLFNO &ERROR)   
  24.                                                                    
  25. /* If any error, then spool file does not exist... */             
  26.             CHGVAR    VAR(&RTNC) VALUE('0')                     
  27.             IF        COND(%SST(&ERROR 9 7) = ' ') THEN(CHGVAR + 
  28.                           VAR(&RTNC) VALUE('1'))                   
  29.                                                                    
  30.             ENDPGM                                               
  31.