Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
That's a good one, the best I can get is the BPX msg but the last one listed in the latest manual I could find is one short....
Quote:
BPXP017I DEBUGGER IS UNTRUSTED AND IS NOT ALLOWED TO DEBUG A PROGRAM CONTROLLED ENVIRONMENT.
Explanation: The debugger is untrusted (not permitted to BPX.DEBUG) and attempted to debug an environment that must stay program controlled, but is not allowed.
System Action: The request is denied.
User Response: Report the message to your security administrator.
Operator Response: None.
Source: OS/390 UNIX System Services kernel (BPX)
Detecting Module: BPXPRECP
Security Administrator Response: The untrusted user attempted to debug a program controlled environment. Determine if the debugger should be allowed to debug a program controlled environment and if so permit them to the BPX.DEBUG facility class profile with READ access.
//*
//* USE ENTRY 'SAS' FOR SAS VERSION 9.0 OR CHECK WITH YOUR SAS SUPPORT
//PASTEST PROC PREFIX=, HI-LEVEL INDEX OF PROWL DATA SETS
// YYMM=, YEAR & MONTH OF TAPE DISTRIBUTION
// ENTRY='SASXAL', SAS ENTRY POINT NAME
// TUNIT=, UNIT NAME FOR TAPE DEVICE
// TVOL=, VOLSER OF PROWL DISTRIBUTION TAPE
// WUNIT=, UNIT NAME FOR DASD WORK DATA SETS
// SASLIB=, SAS LOAD LIBRARY
// SASAUTO=, SAS MACAUTOS LIBRARY
// SASHELP=, SAS SASHELP LIBRARY
// SASMSG= SAS SASMSG LIBRARY
//* LOUT='*' SAS LOG SYSOUT CLASS
//*
//*********************************************************************
//* *
//* P A S T E S T *
//* *
//* THIS INSTREAM PROCEDURE: *
//* *
//* 1) PRODUCES PROWL REPORTS THAT MATCH THE SAMPLES *
//* IN THE PROWL USER'S GUIDE. *
//* *
//* NOTES: THIS PROCEDURE, WHEN EXECUTED SUCCESSFULLY, *
//* VALIDATES THE INSTALLATION OF THE PROWL SYSTEM. *
//* *
//* FILES 16 AND 18 OF THE DISTRIBUTION TAPE ARE READ *
//* BY THIS JOB. *
//* *
//*********************************************************************
//*
//* PRODUCE SAMPLE REPORTS USING THE PROWL IVP DATA SETS
//*
//PASSAS EXEC PGM=&ENTRY,REGION=4096K,DYNAMNBR=10
//*
//STEPLIB DD DISP=SHR,DSN=&SASLIB
//* USE DD STATEMENT BELOW IF USING SAS V8.1 LIBRARIES
// DD DISP=SHR,DSN=&PREFIX..PAS8.SAS810.LOAD /*PROWL LIB*/
//* USE DD STATEMENT BELOW IF USING SAS V8.2 LIBRARIES
// DD DISP=SHR,DSN=&PREFIX..PAS8.SAS820.LOAD
//* USE DD STATEMENT BELOW IF USING SAS V9.0 LIBRARIES
//* DD DISP=SHR,DSN=&PREFIX..SAS900.LOAD /* PROWL LIB */
//* USE DD STATEMENT BELOW IF USING SAS V9.1.3 LIBRARIES
//* DD DISP=SHR,DSN=&PREFIX..SAS913.LOAD /* PROWL LIB */
//*
//LIBRARY DD DISP=SHR,DSN=&PREFIX..PAS.FORMATS /* PROWL FMTS. */
//*
//CONFIG DD DISP=SHR,DSN=&PREFIX..PAS.PARMS(CONFIG)
//*
//WORK DD UNIT=&WUNIT,SPACE=(CYL,(100,20),,,ROUND)
//*
//SASAUTOS DD DISP=SHR,DSN=&SASAUTO
//SASHELP DD DISP=SHR,DSN=&SASHELP
//SASMSG DD DISP=SHR,DSN=&SASMSG
//SASLOG DD SYSOUT=*
//SASLIST DD SYSOUT=*
//*
//*SASLOG DD SYSOUT=&LOUT,
//* DCB=(RECFM=VBA,LRECL=137,BLKSIZE=141)
//*SASLIST DD SYSOUT=&LOUT,
//* DCB=(RECFM=VBA,LRECL=137,BLKSIZE=141)
//SASPARMS DD UNIT=&WUNIT,SPACE=(400,(100,300)),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=400,BUFNO=1)
//FT15F002 DD UNIT=&WUNIT,SPACE=(400,(100,300)),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=400,BUFNO=1)
//*
//SORTWK01 DD UNIT=&WUNIT,SPACE=(TRK,(100,300))
//SORTWK02 DD UNIT=&WUNIT,SPACE=(TRK,(100,300))
//SORTWK03 DD UNIT=&WUNIT,SPACE=(TRK,(100,300))
//SORTWK04 DD UNIT=&WUNIT,SPACE=(TRK,(100,300))
//*
//FT96F001 DD UNIT=&WUNIT,SPACE=(TRK,(10,30))
//FT97F001 DD UNIT=&WUNIT,SPACE=(TRK,(10,30))
//FT98F001 DD UNIT=&WUNIT,SPACE=(TRK,(10,30))
//FT99F001 DD UNIT=&WUNIT,SPACE=(TRK,(10,30))
//*
//SOURCE DD DISP=SHR,DSN=&PREFIX..PAS&YYMM..SOURCE
//*
//VENDFMID DD DISP=SHR,DSN=&PREFIX..PAS.PARMS(VENDFMID)
//*
//USRFMID DD DISP=SHR,DSN=&PREFIX..PAS.PARMS(USRFMID)
//*
//PARMS DD DISP=SHR,DSN=&PREFIX..PAS.PARMS
//*
//SYSUDUMP DD SYSOUT=*
//*
//MASTER DD DSN=&&PAS, * TEMP TEST DATA BASE*
// DISP=(,PASS),
// UNIT=&WUNIT,
// DCB=(RECFM=FS,LRECL=6144,BLKSIZE=6144),
// SPACE=(TRK,(350,50),RLSE)
//*
//PASIVPI DD DSN=AI.PAS&YYMM..PASIVP, * TAPE -TEST PROWL DATA*
// DISP=OLD,
// UNIT=&TUNIT,
// LABEL=(18,SL,EXPDT=98000),
// VOL=(,RETAIN,SER=&TVOL)
//*
//RUNOPTS DD DUMMY * RUN TIME OPTIONS *
//*
//PROBLEMS DD DSN=&&TEMP, * EXTRACTED PROBLEMS *
// DISP=(,PASS),
// UNIT=&WUNIT,
// DCB=(RECFM=FS,LRECL=6144,BLKSIZE=6144),
// SPACE=(TRK,(30,30))
//*
//SMPPUNCH DD DSN=AI.PAS&YYMM..SMPIVP, * TAPE -TEST SMP DATA*
// DISP=OLD,
// UNIT=AFF=PASIVPI,
// LABEL=(20,SL,EXPDT=98000),
// VOL=SER=&TVOL
// PEND
//*
//* EXECUTE THE PASTEST INSTREAM PROCEDURE
//*
//JS10 EXEC PASTEST,PREFIX=SYS2.PROWL,
// YYMM=0610, YEAR & MONTH OF TAPE DISTRIBUTION
// TUNIT=CART, UNIT NAME FOR TAPE DEVICE
// TVOL=PW0610, VOLSER OF PROWL DISTRIBUTION TAPE
// WUNIT=SYSDA, UNIT NAME FOR DASD WORK DATA SETS
// SASLIB=SYS1.SAS.LIBRARY,
// SASAUTO=SYS1.SAS.AUTOLIB,
// SASHELP=SYS1.SAS.SASHELP,
// SASMSG=SYS1.SAS.SASMSG
//* LOUT='*' SAS LOG SYSOUT CLASS
//*
//PASSAS.RUNOPTS DD *
Joined: 02 Apr 2008 Posts: 2 Location: Yonkers, NY
We found the solution to our abend: the SAS license had expired. Applying the renewal SETINIT resolved the issue. No SAS o/p appeared in the jobs that failed, just the abend. We looked at the last one that ran and saw that the license was expiring.
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
Hello Dick and welcome to the forums,
As with the previous post of this abend, might there be a license renewal problem? Has anyone verified the liecnse is current?
As this is a User abend, there may be more info in one of the sysout datasets or the saslist file.
When posting jcl, control statements, data, etc, it is good to use the "Code" tag (near the top of the reply panel). I've "coded" your post. Notice how it improves readability. "Code"d text is posted with a fixed font rather than a proportional font (like the reply editor). There is a sl a Preview so one may see how their post will appear to the forum. When you are satisfied with the appearance, click Submit (else your post is gone ).
i am getting this error while running the jcl.
The message is as follows..
BPXP018I THREAD 1935988000000002, IN PROCESS 16778097, ENDED
WITHOUT BEING UNDUBBED WITH COMPLETION CODE 000003E7, AND REASON CODE
00000000.
BPXP018I THREAD 1932A76000000000, IN PROCESS 16778097, ENDED
WITHOUT BEING UNDUBBED WITH COMPLETION CODE 040003E7, AND REASON CODE
00000000.
IEF450I NBKJIUE1 MICS CPED0100 - ABEND=S000 U0999 REASON=00000000
TIME=22.57.40
SMF001I COMP=U0999 CPED0100 MICS PGM=MACTL CPU=00:00:00.55
IEF404I NBKJIUE1 - ENDED - TIME=22.57.40
Can anyone please give a faster reply to this one
below is the screen shot of my jcl
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
Hello,
Quote:
below is the screen shot of my jcl
I see no jcl. . .
When posting code, jcl, data, or utility control statements do not use screenshot, but rather use copy/paste and the "Code" tag for alignment and readability. Use Preview to see how your post will appear to the forum and when you are satisfied with the way your post is shown, click Submit. Screenshots typically just make a mess and are usually deleted.
In addition to posting the jcl/control statements, also post any other diagnostic info including the message id's.
/***********************************************************/;
/*********** INCLUDE HLQ TO SELECT *********/;
/***********************************************************/;
%INCLUDE DASDIN(DASDHLQ);
/***********************************************************/;
/*********** INCLUDE LPAR TO REPORT ON *********/;
/***********************************************************/;
%INCLUDE DASDIN(DASDLPAR);
FORMAT CREDATE REFDATE MMDDYY10.;
/***********************************************************/;
/*********** SORT ALL SELECTED RECORDS *********/;
/***********************************************************/;
PROC SORT DATA=WORK1.DEVPOOL;
BY DSNAME CREDATE STORNAME REFDATE RECFM ENV
LRECL BLKSIZE DSORG GROUP TYPE Q1 Q2 Q3 Q4 Q5;
/***********************************************************/;
/*********** SUMMARIZE BY DATASET NAME *********/;
/***********************************************************/;
PROC UNIVARIATE NOPRINT DATA=WORK1.DEVPOOL;
BY DSNAME CREDATE STORNAME REFDATE RECFM ENV
LRECL BLKSIZE DSORG GROUP TYPE Q1 Q2 Q3 Q4 Q5;
VAR DAAALLSP DAAUSESP ;
OUTPUT OUT=WORK1.UNIDEVPL SUM=MBALLOC MBUSED ;
/***********************************************************/;
/*********** DEFINE ALL DATASETS ***************************/;
/*********** CNT + 1 INDICATES OLD '.......1' **********/;
/***********************************************************/;
DATA DEVALL ;
SET WORK1.UNIDEVPL;
MONTH = MONTH(CREDATE);
DAY = DAY(CREDATE);
YEAR = YEAR(CREDATE);
CNT = 0;
FLAG = PUT(1,IB1.);
/* COST OF DASD PER MEGABYTE */ ;
MBCOST = .00455 ;
CDATE=DATE();
DAYS = CDATE - CREDATE;
DAYSREF = CDATE - REFDATE;
DAYCOST = MBALLOC * MBCOST ;
TOTCOST = DAYS * DAYCOST;
DIFF = MBALLOC-MBUSED;
DIFCOST = DIFF * MBCOST;
TDIFCOST = DAYS * DIFCOST;
IF MBALLOC > 0 THEN PER = MBUSED / MBALLOC;
IF MBALLOC = 0 THEN PER = 0;
FORMAT CDATE MMDDYY10. DAYCOST TOTCOST DIFCOST DOLLAR15.2;
/***********************************************************/;
/*********** DEFINE DATASETS THAT ARE INEFFICIENTLY BLOCKED*/;
/*********** CNT + 2 INDICATES OLD '......1.' **********/;
/***********************************************************/;
BESTBLK = 0;
RECLGTH = 0;
BESTBLK = BLKSIZE;
BLKSAVE = BESTBLK;
RECLGTH = LRECL;
IF RECLGTH > 0 THEN ORDER = BESTBLK / RECLGTH;
IF RECLGTH > 0 THEN BESTBLK = INT(27998/RECLGTH) * RECLGTH;
IF RECFM =:'V' THEN BESTBLK = 27998;
IF (ORDER < 1.5 AND DSORG=:'P' AND RECFM ¬=:'U') AND
/* VTOC FOR VOLUME */
(Q2 NE: 'VTOCIX') AND
/* HALF TRACK BLOCKING */
(RECFM =: 'V' AND BLKSIZE NE 27998) AND
/* HOGAN CHECKPOINTS */
((LRECL NE 4096) OR
(Q1 = 'BOST' AND LRECL = 4096 AND RECFM = 'F' AND MBALLOC > .1))
THEN CNT = CNT + 2 ;
/***********************************************************/;
/*********** DEFINE DATASETS THAT ARE LARGE ****************/;
/*********** CNT + 16 INDICATES OLD '...1....' **********/;
/***********************************************************/;
IF MBALLOC > 890 THEN CNT = CNT + 16;
/***********************************************************/;
/*********** DEFINE DATASETS THAT ARE OVERALLOCATED ******/;
/*********** CNT + 8 INDICATES OLD '....1...' **********/;
/***********************************************************/;
IF MBALLOC > 200 AND PER <= .5 THEN CNT = CNT + 8;
/***********************************************************/;
/*********** DEFINE DATASETS THAT ARE OLD *****************/;
/*********** CNT + 4 INDICATES OLD '.....1..' **********/;
/***********************************************************/;
IF (DSORG =: 'P' AND DSORG NE 'PO' AND DAYSREF > 20) OR
(DSORG =: 'V' AND Q1 NE: 'DBIT' AND
Q2 NE 'CICS' AND DAYSREF > 20) OR
(DSORG =: 'V' AND Q2 = 'CICS' AND DAYSREF > 150) OR
(DSORG =: 'V' AND Q1 =: 'DBIT' AND DAYSREF > 150) THEN
CNT = CNT + 4;
CNT = CNT + 1;
FLAG = PUT(CNT,IB1.);
/***********************************************************/;
/*********** PROCESS DATASETS FLAGGED BLOCKSIZE ***********/;
/***********************************************************/;
DATA DEVBLK; SET DEVALL;
IF FLAG = '......1.'B;
PROC SORT DATA=DEVBLK; BY ENV TYPE Q1 STORNAME MONTH DAY;
PROC UNIVARIATE NOPRINT DATA=DEVBLK;
BY ENV TYPE Q1 STORNAME ;
VAR MBALLOC MBUSED TOTCOST DAYCOST DIFCOST TDIFCOST DAYS;
OUTPUT OUT=DEVBLKSU SUM=SUMMBA
SUMMBU SUMTCOST SUMDCOST SUMUCOST STDFCOST NOOFDAYS N=COUNT;
PROC SORT DATA=DEVBLKSU; BY ENV Q1 TYPE STORNAME ;
PROC PRINTTO NEW PRINT=DASDBLKS;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVBLKSU;
BY ENV Q1 TYPE STORNAME; ID ENV Q1 TYPE STORNAME;
VAR COUNT SUMMBA SUMMBU SUMDCOST SUMTCOST;
LABEL Q1='APPLICATION'
COUNT ='NUMBER*DATASETS'
NOOFDAYS = 'AGE OF DSNS*IN DAYS'
STORNAME='STORAGE*GROUP*NAME'
SUMMBA = 'TOTAL*MEGABYTES*ALLOCATED'
SUMMBU = 'TOTAL*MEGABYTES*USED'
SUMTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
SUMDCOST = 'DAILY COST*MB ALLOCATED'
SUMUCOST = 'DAILY COST*MB USED'
STDFCOST = 'TOTAL COST*MB USED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD5SBLKS - SUMMARY OF APPLS WITH INEFFICIENT BLKSIZES';
PROC PRINTTO NEW PRINT=DASDBLKD;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVBLK;
BY ENV Q1 TYPE STORNAME ;
VAR DSNAME RECFM LRECL BLKSIZE MBALLOC MBUSED DAYCOST TOTCOST;
LABEL Q1='APPLICATION'
MBUSED = 'MEGABYTES*USED'
RECFM = 'RECORD*FORMAT'
LRECL = 'LOGICAL*RECORD*LENGTH'
BLKSIZE = 'BLOCK*SIZE'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2;
TITLE 'DASD7LBLKD - DETAIL OF DATASETS WITH INEFFICIENT BLKSIZE';
***********************************************************/;
*********** PROCESS DATASETS FLAGGED OLD ******************/;
***********************************************************/;
DATA DEVOLD; SET DEVALL;
IF FLAG = '.....1..'B;
PROC SORT DATA=DEVOLD; BY ENV Q1 TYPE STORNAME MONTH DAY;
PROC UNIVARIATE NOPRINT DATA=DEVOLD;
BY ENV Q1 TYPE STORNAME ;
VAR MBALLOC MBUSED TOTCOST DAYCOST DIFCOST TDIFCOST DAYS DAYSREF;
OUTPUT OUT=DEVOLDSU SUM=SUMMBA
SUMMBU SUMTCOST SUMDCOST SUMUCOST STDFCOST NOOFDAYS SUMDAYRF
N=COUNT;
PROC SORT DATA=DEVOLDSU; BY ENV Q1 TYPE STORNAME ;
PROC PRINTTO NEW PRINT=DASDOLDS;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVOLDSU;
BY ENV Q1 TYPE STORNAME; ID ENV Q1 TYPE STORNAME;
VAR COUNT SUMMBA SUMMBU SUMDCOST SUMTCOST;
LABEL Q1='APPLICATION'
COUNT ='NUMBER*DATASETS'
NOOFDAYS = 'AGE OF DSNS*IN DAYS'
SUMDAYRF = 'LAST REF*IN DAYS'
STORNAME='STORAGE*GROUP*NAME'
SUMMBA = 'TOTAL*MEGABYTES*ALLOCATED'
SUMMBU = 'TOTAL*MEGABYTES*USED'
SUMTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
SUMDCOST = 'DAILY COST*MB ALLOCATED'
SUMUCOST = 'DAILY COST*MB UNUSED'
STDFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD7LUSES - SUMMARY OF OLD DATASETS BASED ON LAST REFERENCE';
PROC PRINTTO NEW PRINT=DASDOLDD;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVOLD;
BY ENV Q1 TYPE STORNAME;
VAR DSNAME CREDATE DAYSREF DAYS MBALLOC MBUSED DAYCOST TOTCOST ;
LABEL Q1='APPLICATION'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
DAYSREF = 'LAST REF*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
MBUSED = 'MEGABYTES*USED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2;
TITLE 'DASD7LUSED - DETAIL OF OLD DATASETS BASED ON LAST REFERENCE';
/***********************************************************/;
/*********** PROCESS DATASETS FLAGGED OVERALLOCATED ***/;
/***********************************************************/;
DATA DEVUSE; SET DEVALL;
IF FLAG = '....1...'B;
PROC SORT DATA=DEVUSE; BY ENV Q1 TYPE STORNAME MONTH DAY;
PROC UNIVARIATE NOPRINT DATA=DEVUSE;
BY ENV Q1 TYPE STORNAME ;
VAR MBALLOC MBUSED TOTCOST DAYCOST DIFCOST TDIFCOST DAYS;
OUTPUT OUT=DEVUSESU SUM=SUMMBA
SUMMBU SUMTCOST SUMDCOST SUMUCOST STDFCOST NOOFDAYS N=COUNT;
PROC SORT DATA=DEVUSESU; BY ENV Q1 TYPE STORNAME ;
PROC PRINTTO NEW PRINT=DASDUSES;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVUSESU;
BY ENV Q1 TYPE STORNAME; ID ENV Q1 TYPE STORNAME;
VAR COUNT SUMMBA SUMMBU SUMDCOST SUMTCOST;
LABEL Q1='APPLICATION'
COUNT ='NUMBER*DATASETS'
NOOFDAYS = 'AGE OF DSNS*IN DAYS'
STORNAME='STORAGE*GROUP*NAME'
SUMMBA = 'TOTAL*MEGABYTES*ALLOCATED'
SUMMBU = 'TOTAL*MEGABYTES*USED'
SUMTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
SUMDCOST = 'DAILY COST*MB ALLOCATED'
SUMUCOST = 'DAILY COST*MB UNUSED'
STDFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD7LUSES - SUMMARY OF DATASETS > 200 MB AND < 50% USED';
PROC PRINTTO NEW PRINT=DASDUSED;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVUSE;
BY ENV Q1 TYPE STORNAME ;
VAR DSNAME CREDATE DAYSREF DAYS MBALLOC MBUSED DAYCOST TOTCOST ;
LABEL Q1='APPLICATION'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
DAYSREF = 'LAST REF*IN DAYS'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
MBUSED = 'MEGABYTES*USED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2;
TITLE 'DASD7LUSED - DETAIL OF DATASETS > 200 MB AND < 50% USED';
/***********************************************************/;
/*********** PROCESS DATASETS FLAGGED AS LARGE *************/;
/***********************************************************/;
DATA DEVLRG; SET DEVALL;
IF FLAG = '...1....'B;
PROC SORT DATA=DEVLRG; BY ENV Q1 TYPE STORNAME MONTH DAY;
PROC UNIVARIATE NOPRINT DATA=DEVLRG;
BY ENV Q1 TYPE STORNAME ;
VAR MBALLOC MBUSED TOTCOST DAYCOST DIFCOST TDIFCOST DAYS;
OUTPUT OUT=DEVLRGSU SUM=SUMMBA
SUMMBU SUMTCOST SUMDCOST SUMUCOST STDFCOST NOOFDAYS N=COUNT;
PROC SORT DATA=DEVLRGSU; BY ENV Q1 TYPE STORNAME ;
PROC PRINTTO NEW PRINT=DASDLRGS;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVLRGSU;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVLRGSU;
BY ENV Q1 TYPE STORNAME; ID ENV Q1 TYPE STORNAME;
VAR COUNT SUMMBA SUMMBU SUMDCOST SUMTCOST;
LABEL Q1='APPLICATION'
COUNT ='NUMBER*DATASETS'
NOOFDAYS = 'AGE OF DSNS*IN DAYS'
STORNAME='STORAGE*GROUP*NAME'
SUMMBA = 'TOTAL*MEGABYTES*ALLOCATED'
SUMMBU = 'TOTAL*MEGABYTES*USED'
SUMTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
SUMDCOST = 'DAILY COST*MB ALLOCATED'
SUMUCOST = 'DAILY COST*MB UNUSED'
STDFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD7LLRGS - SUMMARY OF DATASETS > 890 MB BY APPL';
PROC PRINTTO NEW PRINT=DASDLRGD;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVLRG;
BY ENV Q1 TYPE STORNAME ;
VAR DSNAME CREDATE DAYSREF DAYS MBALLOC MBUSED DAYCOST TOTCOST ;
LABEL Q1='APPLICATION'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
DAYSREF = 'LAST REF*IN DAYS'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
MBUSED = 'MEGABYTES*USED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2;
TITLE 'DASD7LLRGD - DETAIL OF DATASETS > 890 MB BY APPL';
/***********************************************************/;
/*********** PROCESS ALL DATASET *************/;
/***********************************************************/;
DATA DEVTOT; SET DEVALL;
IF FLAG = '.......1'B;
/***********************************************************/;
/*********** INCLUDE SELECT FOR PROD QUALIFIER *********/;
/***********************************************************/;
%INCLUDE DASDIN(DASDSELP);
/***********************************************************/;
/*********** INCLUDE SELECT FOR TEST QUALIFIER *********/;
/***********************************************************/;
%INCLUDE DASDIN(DASDSELT);
PROC SORT DATA=DEVTOT; BY ENV Q1 QUAL;
PROC UNIVARIATE NOPRINT DATA=DEVTOT;
BY ENV Q1 QUAL ;
VAR MBALLOC MBUSED TOTCOST DAYCOST DIFCOST TDIFCOST DAYS;
OUTPUT OUT=DEVTOTSU SUM=SUMMBA
SUMMBU SUMTCOST SUMDCOST SUMUCOST STDFCOST NOOFDAYS N=COUNT;
PROC SORT DATA=DEVTOTSU; BY ENV Q1 QUAL;
PROC PRINTTO NEW PRINT=DASDALLS;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVTOTSU;
BY ENV Q1 QUAL ; ID ENV Q1 QUAL;
VAR COUNT SUMMBA SUMMBU SUMDCOST SUMTCOST;
LABEL Q1='APPLICATION'
QUAL='QUALIFIER'
COUNT ='NUMBER*DATASETS'
NOOFDAYS = 'AGE OF DSNS*IN DAYS'
STORNAME='STORAGE*GROUP*NAME'
SUMMBA = 'TOTAL*MEGABYTES*ALLOCATED'
SUMMBU = 'TOTAL*MEGABYTES*USED'
SUMTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
SUMDCOST = 'DAILY COST*MB ALLOCATED'
SUMUCOST = 'DAILY COST*MB UNUSED'
STDFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD7LTOTS - SUMMARY OF ALL DATASETS';
PROC PRINTTO NEW PRINT=DASDALLD;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVTOT;
STDFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS';
SUM COUNT SUMMBA SUMMBU SUMTCOST SUMDCOST ;
FORMAT SUMTCOST SUMDCOST SUMUCOST STDFCOST DOLLAR15.2;
TITLE 'DASD7LTOTS - SUMMARY OF ALL DATASETS';
PROC PRINTTO NEW PRINT=DASDALLD;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=DEVTOT;
BY ENV Q1 QUAL ;
VAR DSNAME CREDATE DAYSREF DAYS MBALLOC MBUSED DAYCOST TOTCOST ;
LABEL Q1='APPLICATION'
QUAL='QUALIFIER'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
DAYSREF = 'LAST REF*IN DAYS'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
MBUSED = 'MEGABYTES*USED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2;
TITLE 'DASD7LTOTD - DETAIL OF ALL DATASETS';
PROC RANK DATA=DEVTOT DESCENDING OUT=RANKOUT;
RANKS RANK;
VAR MBALLOC;
BY ENV Q1;
DATA RANKIN; SET RANKOUT;
IF RANK <= 50;
PROC PRINTTO NEW PRINT=DASDRNKD;
PROC SORT DATA=RANKIN; BY ENV Q1 RANK;
PROC PRINT NOOBS UNIFORM SPLIT='*' WIDTH=MIN DATA=RANKIN;
BY ENV Q1 ;
VAR DSNAME CREDATE DAYSREF DAYS RANK MBALLOC MBUSED DAYCOST TOTCOST ;
LABEL Q1='APPLICATION'
QUAL='QUALIFIER'
STORNAME='STORAGE*GROUP*NAME'
DSNAME = 'DATASET NAME'
CREDATE = 'DATASET*CREATION*DATE'
DAYSREF = 'LAST REF*IN DAYS'
RANK = 'DATASET*RANKING'
TOTCOST = 'TOTAL COST*MB ALLOCATED*TIMES NO.DAYS'
DAYCOST = 'DAILY COST*MB ALLOCATED'
DIFCOST = 'DAILY COST*MB UNUSED'
TDIFCOST = 'TOTAL COST*MB UNUSED*TIMES NO.DAYS'
DAYS = 'AGE OF DSN*IN DAYS'
MBALLOC = 'MEGABYTES*ALLOCATED'
MBUSED = 'MEGABYTES*USED'
DIFF = 'MEGABYTES*UNUSED';
SUM MBALLOC TOTCOST DAYCOST MBUSED;
FORMAT CREDATE DATE7. TOTCOST DAYCOST DIFCOST TDIFCOST DOLLAR15.2
RANK 3.0;
TITLE 'DASD7LRNKD - TOP 50 LARGEST DATASETS BY APPLICATION';
**************************** Bottom of Data ***********************
Joined: 06 Jun 2008 Posts: 8700 Location: Dubuque, Iowa, USA
And by the way, the BPXP018I messages are normal when a SAS job blows up -- SAS doesn't clean up its Unix System Services threads when it abends, so you normally get these messages if the job doesn't complete normally. All you've posted so far basically says a SAS job blew up -- but the reason for it will be in the SAS log.