SPAREAP PL/1 definition

Example 4

/****************************************/
 /* STORED PROCEDURE COMMUNICATION AREA  */
 /****************************************/
DCL 1 COMMPTR               POINTER;
 DCL 1 SPAREA BASED(COMMPTR),
       3  SPHEADER           CHAR(8),
       3  SPRESRVD           CHAR(33),
       3  SPTRCOPT           CHAR(1),
       3  SPSTATUS           CHAR(2),
       3  SPCODE             CHAR(8),
       3  SPFORMAT           CHAR(3),
       3  SPMODE             CHAR(6),
       3  SPRC               CHAR(3),
       3  SPFROM             POINTER ALIGNED,
       3  SPVARTXT           POINTER,
       3  SPVARTAB           POINTER,
       3  SPROWS             FIXED BIN(31) ALIGNED,
       3  SPMAXLEN           FIXED BIN(15) ALIGNED,
       3  SPVARLEN           FIXED BIN(15) ALIGNED,
       3  SPPREFIX           CHAR,
       3  SPMSG              CHAR(100),
       3  SPFILL2            CHAR(3),
       3  SPSQL              POINTER ALIGNED,
       3  SPATTACH           CHAR(8),
       3  SPUSERID           CHAR(8),
       3  SPPWD              CHAR(8),
       3  SPCMPOPT           CHAR(1),
       3  SPIND              CHAR(1),
       3  SPDATE             CHAR(8),
       3  SPTIME             CHAR(8);
       3  SPCONFIG           CHAR(4);
       3  SPSERVER           CHAR(30);
       3  SPFILL3            CHAR(32);
 DCL SPINTO		POINTER BASED(AD_SPFROM);
 DCL SPSQLDA		POINTER BASED(AD_SPFROM);
 DCL SPRECLEN POINTER BASED(AD_SPMAXLEN);
 DCL SPSQL		POINTER BASED(AD_SPSQL);
 DCL (AD_SPFROM, AD_SPMAXLEN, AD_SPSQL) POINTER;
 AD_SPFROM=ADDR(SPFROM);
 AD_SPMAXLEN=ADDR(SPMAXLEN);
 AD_SPSQL=ADDR(SPSQL);