View previous topic :: View next topic
|
Author |
Message |
newbie
New User
Joined: 05 Nov 2005 Posts: 12
|
|
|
|
Hi.
Is there a way to use icetool to check to see if a file is empty or not. If the file is not empty, then i want to do skip some of the records and copy a certain number of records. I would like to do all this in one step.
For example.
If file1 is empty
set return code to 04
else
skip(20000) count(30000) to file2
end-if.
Thank you. |
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
You can use the following DFSORT/ICETOOL job for this kind of thing:
Code: |
//S1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//IN DD DSN=... input file
//OUT DD DSN=... output file
//TOOLIN DD *
* If file is not empty, copy subset of records.
* If file is empty, set RC=12 and don't copy records.
COUNT FROM(IN) EMPTY
COPY FROM(IN) TO(OUT) USING(CTL1)
/*
//CTL1CNTL DD *
OPTION SKIPREC=20000,STOPAFT=30000
/*
|
Note that we need to have the COUNT operator set RC=12 in order to stop ICETOOL from performing the COPY operator.
You could have the COUNT operator set RC=4 by using:
COUNT FROM(IN) EMPTY RC4
but RC=4 will NOT stop ICETOOL from performing the subsequent operators as RC=12 will.
For more information on these features of DFSORT's COUNT operator, see:
www.ibm.com/servers/storage/support/software/sort/mvs/tricks/srtmst03.html#t10 |
|
Back to top |
|
|
newbie
New User
Joined: 05 Nov 2005 Posts: 12
|
|
|
|
This work perfectly. I wish the RC can be set to 4. So that way my JCL will show RC4 instead of RC12. But this will do for now.
Thank you for the quick response. I really appreciate this. |
|
Back to top |
|
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
If you want RC=4 instead of RC=12, you can use two steps instead of one step. The first step would have the COUNT operator with RC4. The second step would have the COPY operator. You could use JCL checking (e.g. IF) in the second step to decide whether to run or bypass the step based on the RC=0 or RC=4 from the first step. |
|
Back to top |
|
|
newbie
New User
Joined: 05 Nov 2005 Posts: 12
|
|
|
|
Thanks Frank. That's exactly what I'm going to do. I'm going to use Icetool to check for the empty file. If not empty, then I will use IDCAMS to do the copy. |
|
Back to top |
|
|
|