View previous topic :: View next topic
Author
Message
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
I would like to extract information between iec359i and iec352i and reformat it.
Input file is vb lrecl 200, output file is fb lrecl 350. Input fields: Date at 24,length 8, Time at 33,length 11, IEC359I at 64, Entries to catalog at 67,
count at 92, average at 103
Code:
------------------------------------------------------------------------------------------------------------------------
002749 MR0000000 SYSM 2012.119 00:04:17.36 TMQ01788 00000080 IEC359I CATALOG PERFORMANCE REPORT 846
002750 LR SYSM 2012.119 00:04:17.36 846 00000080 *CAS***************************************************
002751 DR SYSM 2012.119 00:04:17.36 846 00000080 * Statistics since 23:04:22.07 on 07/30/2012 *
002752 DR SYSM 2012.119 00:04:17.36 846 00000080 * -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *
002753 DR SYSM 2012.119 00:04:17.36 846 00000080 * Entries to Catalog 10,737 3.659 MSEC *
002754 DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Shr Sys 15,205 0.053 MSEC *
002755 DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Excl Sys 264 1.059 MSEC *
..
02790 ER SYSM 2012.119 00:04:17.36 846 00000080 *CAS***************************************************
02791 NR4000000 SYSM 2012.119 00:04:17.38 TMQ01788 00000080 IEC352I CATALOG ADDRESS SPACE MODIFY COMMAND COMPLETED
-------------------------------------------------------------------------------------------------------------------------
Output:
Code:
date;Time;Entries to Catalog-Count;Entries to Catalog-average;BCS ENQ Shr Sys-count;BCS ENQ Shr Sys-average;
2012.119;00:04:17.36;10737;3.659;15205;0.053
Is this possible with icetool? We are at z/OS 1.13 with all ptfs till march 2012 installed.
Thanks a lot.
Code'd
Back to top
knickraj Warnings : 1 New User Joined: 11 Jun 2007Posts: 50 Location: Euro
TRY something like below
Code:
INREC IFTHEN=(WHEN=(?,7,CH,EQ,C'IEC359I'),
overlay=(1:c'1')
IFTHEN=(WHEN=(?,7,CH,EQ,C'iec352i'),
overlay=(1:c'2')
OUTREC IFTHEN=(WHEN=GROUP,BEGIN=(1,1,CH,EQ,C'1')
PUSH=(2:SEQ=4)
once marked select records.
Code:
OUTFIL INCLUDE=(1,5,GT (10001 AND LESS THAN 20001) and NE SPACES)
the output you can reformat as u need once you select the record.
your input is VB, use the first 5 byte as the marking field, by shifting the data in the inrec.
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Is this tested? How do the intervening records get within the range 10001 and 20001. Aren't they going to be x0001 where x is whatever they were at the time of being read?
Back to top
dbzTHEdinosauer Global Moderator Joined: 20 Oct 2006Posts: 6966 Location: porcelain throne
knickraj,
I enjoy your posts, always very entertaining.
Back to top
knickraj Warnings : 1 New User Joined: 11 Jun 2007Posts: 50 Location: Euro
bill,
not tested
the idea is to first overlay 1 byte as 1 and 2
data would look like
Code:
1 IEC359I
.
.
2 IEC352I
then with SEQ number it would become like
Code:
10001 IEC359I
. 0002
. 0003
20001 IEC352I
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Yes, I got that, but how is it going to pick up the records in between the IEC messages?
I think a GROUP with a BEGIN and END can identify all required data, then select the records to source the data.
Back to top
knickraj Warnings : 1 New User Joined: 11 Jun 2007Posts: 50 Location: Euro
yes ,got your point
GROUP with a BEGIN and END should do it...
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
I could get the first part, i.e, extracting the data with following jcl:
---------------------------------------------------------------------------
Code:
//S1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//IN DD DISP=SHR,DSN=ZRA.SYSLOG1
//OUT DD SYSOUT=*
//TOOLIN DD *
COPY FROM(IN) TO(OUT) USING(CTL1)
//CTL1CNTL DD *
OPTION VLSHRT
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(64,27,CH,EQ,C'IEC359I CATALOG PERFORMANCE'),
END=(64,23,CH,EQ,C'IEC352I CATALOG ADDRESS',OR,
67,6,CH,EQ,C'ENDREQ'),
PUSH=(154:ID=1))
OUTFIL INCLUDE=(154,1,CH,NE,C' '),BUILD=(1,150)
This results as wanted:
Code:
MR0000000 SYSM 2012.119 00:04:17.36 TMQ01788 00000080 IEC359I CATALOG PERFORMANCE REPORT 846
LR SYSM 2012.119 00:04:17.36 846 00000080 *CAS***************************************************
DR SYSM 2012.119 00:04:17.36 846 00000080 * Statistics since 23:04:22.07 *
DR SYSM 2012.119 00:04:17.36 846 00000080 * -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Entries to Catalog 10,737 3.659 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Shr Sys 15,205 0.053 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Excl Sys 264 1.059 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS DEQ 5,798 0.011 MSEC *
But how can i transpose this to the format i want?
Thanks for help!
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Good so far, now you need to be clearer about what you actually want to extract for that data. You first example seems to show two sets of figures out of three, so what is it you actually want?
Back to top
knickraj Warnings : 1 New User Joined: 11 Jun 2007Posts: 50 Location: Euro
if your number of records are less, as it seems to be
you may try RESIZE
Code:
RESIZE FROM(SORTIN) TO(SORTOUT) TOLEN(lrecl*no.of records)
all will come in one line then you can choose the data you want using build.
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Shall we wait to see what TS wants with the data before throwing possibilities into the pot?
Can there be a variable number of lines of data? Are there a fixed number of lines you are interested in? Sample of your possible combinations and required output would be useful.
The better you can filly describe what you want, the better solution you will get.
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
Bob,
Perhaps i could not precisely specify requirement. Here is what i am getting after running the job shown with jcl.
Code:
MR0000000 SYSM 2012.119 00:04:17.36 TMQ01788 00000080 IEC359I CATALOG PERFORMANCE REPORT 846
LR SYSM 2012.119 00:04:17.36 846 00000080 *CAS***************************************************
DR SYSM 2012.119 00:04:17.36 846 00000080 * Statistics since 23:04:22.07 on 04/28/2012 *
DR SYSM 2012.119 00:04:17.36 846 00000080 * -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Entries to Catalog 10,737 3.659 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Shr Sys 15,205 0.053 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Excl Sys 264 1.059 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS DEQ 5,798 0.011 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS RESERVE CI 2,198 0.018 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS DEQ CI 2,198 0.035 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS RESERVE Shr 20,968 0.024 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS RESERVE Excl 203 0.129 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS DEQ 21,171 0.035 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * SPHERE ENQ Excl Sys 215 0.036 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * SPHERE DEQ 215 0.031 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * CAXWA ENQ Shr 124 0.033 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * CAXWA DEQ 124 0.007 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VDSPM ENQ 15,925 0.003 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VDSPM DEQ 15,925 0.004 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS Get 225,211 0.012 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS Put 84 1.063 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS Erase 144 1.669 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VVDS I/O 23,724 0.642 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * VLF Retrieve Minor 149 0.005 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * RMM Tape Exit 138 0.000 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * OEM Tape Exit 138 0.000 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * SMF Write 1,801 0.064 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * IXLCACHE Read 2,106 0.757 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * IXLCACHE Write 190 1.148 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Resolve Symbolic 96 0.160 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Capture UCB 121 0.006 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * SMS Mgmt Class ACS 3 1.631 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * RACROUTE Auth 1,462 0.129 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * DADSM Scratch 138 14.058 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * DADSM Rename 3 8.769 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Obtain Latch 27,917 0.000 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * ENQ SYSZPCCB 8,148 0.002 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * DEQ SYSZPCCB 8,148 0.001 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Release Latch 27,917 0.000 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * Capture to Actual 11 0.004 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * ENDREQ 151 0.002 MSEC *
MR0000000 SYSM 2012.120 01:04:17.94 X0002049 00000080 IEC359I CATALOG PERFORMANCE REPORT 243
LR SYSM 2012.120 01:04:17.94 243 00000080 *CAS***************************************************
DR SYSM 2012.120 01:04:17.94 243 00000080 * Statistics since 0:04:22.45 on 04/29/2012 *
DR SYSM 2012.120 01:04:17.94 243 00000080 * -----CATALOG EVENT---- --COUNT-- ---AVERAGE--- *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Entries to Catalog 18,715 6.130 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS ENQ Shr Sys 31,353 0.115 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS ENQ Excl Sys 1,371 0.330 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS DEQ 10,474 0.019 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS RESERVE CI 3,548 0.050 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS DEQ CI 3,548 0.052 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS RESERVE Shr 30,732 0.038 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS RESERVE Excl 909 0.096 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS DEQ 31,641 0.047 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * SPHERE ENQ Excl Sys 1,087 0.066 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * SPHERE DEQ 1,087 0.044 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * CAXWA ENQ Shr 124 0.031 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * CAXWA DEQ 124 0.007 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VDSPM ENQ 35,294 0.164 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VDSPM DEQ 35,294 0.005 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS Get 542,749 0.020 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS Put 828 1.286 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * BCS Erase 457 1.219 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VVDS I/O 36,708 1.151 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VLF Create Minor 2 0.024 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VLF Retrieve Minor 265 0.012 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * VLF Delete Minor 1 0.014 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * RMM Tape Exit 265 0.005 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * OEM Tape Exit 265 0.000 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * SMF Write 4,500 0.070 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * IXLCACHE Read 16,172 0.507 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * IXLCACHE Write 2,252 0.480 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Resolve Symbolic 147 0.161 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Lookup/Pin UCB 2 0.006 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Unpin UCB 2 0.003 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Capture UCB 311 0.007 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * SMS Mgmt Class ACS 4 0.799 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * RACROUTE Auth 3,768 0.175 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * RACROUTE Define 97 0.160 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * DADSM Scratch 338 19.446 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * DADSM Rename 4 11.550 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * DADSM Allocate SMS 102 14.414 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Obtain Latch 55,856 0.000 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * ENQ SYSZPCCB 20,382 0.002 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * DEQ SYSZPCCB 20,382 0.002 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Release Latch 55,856 0.000 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * Capture to Actual 208 0.003 MSEC *
DR SYSM 2012.120 01:04:17.94 243 00000080 * ENDREQ 331 0.002 MSEC *
There is output for two ccommands one at 00:04:17.36 and another at
01:04:17.94. I would like the output in the form of:
These are column labels.
Date; Time; Entries to Catalog-Count;Entries to Catalog-Average;BCS ENQ Shr Sys-Count;BCS ENQ Shr Sys-Average;BCS ENQ Excl Sys-Count;BCS ENQ Excl Sys-Average;
The rows will be the count and average numbers
2012.119;00:04:17.36;10737; 3.659; 15205; 0.053; 264; 1.059
2012.120;01:04:17.94;19715; 6.130; 31353; 0.115; 1371; 0.330
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
Correction:
The rows will be Date,time, count and average numbers of columns
2012.119;00:04:17.36;10737; 3.659; 15205; 0.053; 264; 1.059
2012.120;01:04:17.94;19715; 6.130; 31353; 0.115; 1371; 0.330
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Bob?
So, for two specific times you want three specific associated pieces of information? Output in a "delimited" format. With the column headings. Is that it?
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
Sorry, Bill,
No the original syslog files have entries for the whole 24 hrs period and i want to report on every "-----Catalog Event----". That means, my columns will be Date; Time; "Entries to Catlog-Count...to..ENDREQ-Average". Row values will the values of Date and Time and numbers under "--Count--" and "---Average---"
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
Code:
DR SYSM 2012.119 00:04:17.36 846 00000080 * Entries to Catalog 10,737 3.659 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Shr Sys 15,205 0.053 MSEC *
DR SYSM 2012.119 00:04:17.36 846 00000080 * BCS ENQ Excl Sys 264 1.059 MSEC *
So you want the count and average from these three lines within the IEC messages you specified, with any commas dropped from count. Output to appear as one delimited record, including date, time, count, avg, count, avg, count, avg. Delimited by a semi-colon.
Back to top
Skolusu Senior Member Joined: 07 Dec 2007Posts: 2205 Location: San Jose
kushkush,
Use the following DFSORT JCL which will give you the desired results
Code:
//STEP0100 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DISP=SHR,DSN=ZRA.SYSLOG1
//SORTOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=INIT,BUILD=(1,150,240:X)),
IFTHEN=(WHEN=GROUP,PUSH=(151:ID=8,160:24,20),
BEGIN=(64,27,CH,EQ,C'IEC359I CATALOG PERFORMANCE'),
END=(64,23,CH,EQ,C'IEC352I CATALOG ADDRESS',OR,
67,06,CH,EQ,C'ENDREQ')),
IFTHEN=(WHEN=GROUP,PUSH=(180:92,8,103,8),RECORDS=3,
BEGIN=(67,18,CH,EQ,C'Entries to Catalog')),
IFTHEN=(WHEN=GROUP,PUSH=(200:92,8,103,8),RECORDS=2,
BEGIN=(67,18,CH,EQ,C'BCS ENQ Shr Sys')),
IFTHEN=(WHEN=(67,18,CH,EQ,C'BCS ENQ Excl Sys'),
OVERLAY=(220:92,8,103,8,240:X))
OUTFIL VTOF,INCLUDE=(220,8,CH,GT,C' '),
BUILD=(160,80,SQZ=(SHIFT=LEFT,MID=C';'))
//*
The output from this is
Code:
2012.119;00:04:17.36;10,737;3.659;15,205;0.053;264;1.059
2012.120;01:04:17.94;18,715;6.130;31,353;0.115;1,371;0.330
knickraj,
Resize cannot be used in this case as the input is VB and RESIZE only works on F/FB datasets
Back to top
Bill Woodger Moderator Emeritus Joined: 09 Mar 2011Posts: 7309 Location: Inside the Matrix
kushkush,
If it is vital to remove the comma from the "thousands" (or bigger, who knows) there are several ways. A FINDREP after the data is extracted would do it, as a comma will not be valid elsewhere in the data, plus could be restricted to starting after the delimiter for the first count.
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
I don't get any data records back. I checked offsets.
JCL:
Code:
//STEP0100 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DISP=SHR,DSN=ZRA.SYSLOG1
//SORTOUT DD SYSOUT=*
//SYSIN DD *
OPTION COPY
INREC IFTHEN=(WHEN=INIT,BUILD=(1,150,240:X)),
IFTHEN=(WHEN=GROUP,PUSH=(151:ID=8,160:24,20),
BEGIN=(64,27,CH,EQ,C'IEC359I CATALOG PERFORMANCE'),
END=(64,23,CH,EQ,C'IEC352I CATALOG ADDRESS',OR,
67,06,CH,EQ,C'ENDREQ')),
IFTHEN=(WHEN=GROUP,PUSH=(180:92,8,103,8),RECORDS=3,
BEGIN=(67,18,CH,EQ,C'ENTRIES TO CATALOG')),
IFTHEN=(WHEN=GROUP,PUSH=(200:92,8,103,8),RECORDS=2,
BEGIN=(67,18,CH,EQ,C'BCS ENQ SHR SYS')),
IFTHEN=(WHEN=(67,18,CH,EQ,C'BCS ENQ EXCL SYS'),
OVERLAY=(220:92,8,103,8,240:X))
OUTFIL VTOF,INCLUDE=(220,8,CH,GT,C' '),
BUILD=(160,80,SQZ=(SHIFT=LEFT,MID=C';'))
//*
Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2--
DR SYSM 2012.119 00:04:17.36 846 00000080 * Entries to Catalog 10,737 3.659 MSEC *
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2--
And also the job output:
Code:
1ICE201I H RECORD TYPE IS V - DATA STARTS IN POSITION 5
ICE751I 0 C5-K62149 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE E5-K72040 E7-K70685
ICE143I 0 BLOCKSET COPY TECHNIQUE SELECTED
ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS, EXAMPLES AND MORE
ICE000I 1 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R12 - 19:43 ON WED AUG 01, 2012 -
0 OPTION COPY 00100001
INREC IFTHEN=(WHEN=INIT,BUILD=(1,150,240:X)), 00110001
IFTHEN=(WHEN=GROUP,PUSH=(151:ID=8,160:24,20), 00120001
BEGIN=(64,27,CH,EQ,C'IEC359I CATALOG PERFORMANCE'), 00130001
END=(64,23,CH,EQ,C'IEC352I CATALOG ADDRESS',OR, 00140001
67,06,CH,EQ,C'ENDREQ')), 00150001
IFTHEN=(WHEN=GROUP,PUSH=(180:92,8,103,8),RECORDS=3, 00160001
BEGIN=(67,18,CH,EQ,C'ENTRIES TO CATALOG')), 00170001
IFTHEN=(WHEN=GROUP,PUSH=(200:92,8,103,8),RECORDS=2, 00180001
BEGIN=(67,18,CH,EQ,C'BCS ENQ SHR SYS')), 00190001
IFTHEN=(WHEN=(67,18,CH,EQ,C'BCS ENQ EXCL SYS'), 00200001
OVERLAY=(220:92,8,103,8,240:X)) 00210001
00220001
OUTFIL VTOF,INCLUDE=(220,8,CH,GT,C' '), 00230001
BUILD=(160,80,SQZ=(SHIFT=LEFT,MID=C';')) 00240001
ICE201I H RECORD TYPE IS V - DATA STARTS IN POSITION 5
ICE751I 0 C5-K62149 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE E5-K72040 E7-K70685
ICE193I 0 ICEAM1 INVOCATION ENVIRONMENT IN EFFECT - ICEAM1 ENVIRONMENT SELECTED
ICE193I 0 ICEAM1 INVOCATION ENVIRONMENT IN EFFECT - ICEAM1 ENVIRONMENT SELECTED
ICE252I 1 PARMLIB OPTIONS WERE MERGED WITH INSTALLATION MODULE DEFAULTS
ICE088I 0 ZRA .STEP0100. , INPUT LRECL = 200, BLKSIZE = 32760, TYPE = VB
ICE093I 0 MAIN STORAGE = (MAX,6291456,6270976)
ICE156I 0 MAIN STORAGE ABOVE 16MB = (6306967,6208663)
ICE127I 0 OPTIONS: OVFLO=RC0 ,PAD=RC0 ,TRUNC=RC0 ,SPANINC=RC16,VLSCMP=N,SZERO=Y,RESET=Y,VSAMEMT=Y,DYNSPC=256
ICE128I 0 OPTIONS: SIZE=6291456,MAXLIM=1048576,MINLIM=450560,EQUALS=N,LIST=Y,ERET=RC16 ,MSGDDN=SYSOUT
ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=FULL ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=N,DYNALOC=N ,ABCODE=MSG
ICE130I 0 OPTIONS: RESALL=4096,RESINV=0,SVC=109 ,CHECK=Y,WRKREL=Y,OUTREL=Y,CKPT=N,COBEXIT=COB2
ICE131I 0 OPTIONS: TMAXLIM=6291456,ARESALL=98304,ARESINV=0,OVERRGN=65536,CINV=Y,CFW=N,DSA=0
ICE132I 0 OPTIONS: VLSHRT=N,ZDPRINT=Y,IEXIT=N,TEXIT=N,LISTX=N,EFS=NONE ,EXITCK=S,PARMDDN=DFSPARM ,FSZEST=Y
ICE133I 0 OPTIONS: HIPRMAX=OPTIMAL,DSPSIZE=MAX ,ODMAXBF=2097152,SOLRF=Y,VLLONG=N,VSAMIO=N,MOSIZE=MAX
ICE235I 0 OPTIONS: NULLOUT=RC0
ICE236I 0 OPTIONS: DYNAPCT=10 ,MOWRK=Y
ICE084I 0 BSAM ACCESS METHOD USED FOR SORTIN
ICE231I 0 STORAGE USED FOR OUTFIL : BELOW 16M = 47104, ABOVE 16M = 107520
ICE210I 0 SORTOUT : BSAM USED, LRECL = 80, BLKSIZE = 80, TYPE = FB
ICE751I 1 EF-BASE CB-K64632 F0-K66717 E8-K70685
ICE055I 0 INSERT 0, DELETE 0
ICE054I 0 RECORDS - IN: 520618, OUT: 520618
ICE227I 0 SORTOUT : DELETED = 520618, REPORT = 0, DATA = 0
ICE228I 0 SORTOUT : TOTAL IN = 520618, TOTAL OUT = 0
ICE174I 0 NO DATA RECORDS FOR AN OUTFIL DATA SET - RC=0
ICE052I 0 END OF DFSORT
Thanks for your kind help!
Back to top
Skolusu Senior Member Joined: 07 Dec 2007Posts: 2205 Location: San Jose
kushkush wrote:
I don't get any data records back. I checked offsets.
kushkush,
You need to pay close attention to the control cards and notice the difference between the Mixed case (lower and upper case ) strings vs complete upper case strings matching.
ex: Entries to Catalog <> ENTRIES TO CATALOG
So the GROUP check strings all will fail when you have the uppercase strings.
So before you copy the control cards, issue CAPS OFF command at TSO command and press Enter and then copy the control cards which would retain the mixed case.
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
Skolusu,
Now I get the wanted results.
Thanks a lot, indeed.
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
I get results but now a new problem has surfaced.
What happens if one of the fields is not there? e.g., "BCS ENQ Excl Sys" is not reported- as the command catalog performance gives dynamic results.
Sometimes, i get 37 fields, sometimes 38 and sometimes 34. As we have grouped input can we put zeroes in the result if the field is not there?
Back to top
Skolusu Senior Member Joined: 07 Dec 2007Posts: 2205 Location: San Jose
kushkush,
You have 3 strings
1. Entries to Catalog
2. BCS ENQ Shr Sys
3. BCS ENQ Excl Sys
Which one of this strings will always exist?
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
Hi Skolusu,
Sorry, I usually get these 37 Strings. But the command output is dynamic.
Entries to Catalog
BCS ENQ Shr Sys
BCS ENQ Excl Sys
BCS DEQ
VVDS RESERVE CI
VVDS DEQ CI
VVDS RESERVE Shr
VVDS RESERVE Excl
VVDS DEQ
SPHERE ENQ Excl Sys
SPHERE DEQ
CAXWA ENQ Shr
CAXWA DEQ
VDSPM ENQ
VDSPM DEQ
BCS Get
BCS Put
BCS Erase
VVDS I/O
VLF Retrieve Minor
RMM Tape Exit
OEM Tape Exit
SMF Write
IXLCACHE Read
IXLCACHE Write
Resolve Symbolic
Capture UCB
SMS Mgmt Class ACS
RACROUTE Auth
DADSM Scratch
DADSM Rename
Obtain Latch
ENQ SYSZPCCB
DEQ SYSZPCCB
Release Latch
Capture to Actual
ENDREQ
Back to top
kushkush New User Joined: 30 Jun 2005Posts: 37 Location: Germany
If these strings are not there then can we put zeroes in the result? so that when we squeeze in the last line, we don't have uneven length results.
And also we need to replace comma from the numerical values e.g., 7,888 should be 7888 so that excel understands it as a number. I tried with findrep but could not get the results. I made a new step copying the file once again and using findrep!
Back to top
Please enable JavaScript!