IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

using icetool to check for empty file.


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
newbie

New User


Joined: 05 Nov 2005
Posts: 12

PostPosted: Sat Nov 05, 2005 12:43 am
Reply with quote

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
View user's profile Send private message
Frank Yaeger

DFSORT Developer


Joined: 15 Feb 2005
Posts: 7129
Location: San Jose, CA

PostPosted: Sat Nov 05, 2005 1:50 am
Reply with quote

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
View user's profile Send private message
newbie

New User


Joined: 05 Nov 2005
Posts: 12

PostPosted: Sat Nov 05, 2005 3:12 am
Reply with quote

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. icon_biggrin.gif
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Developer


Joined: 15 Feb 2005
Posts: 7129
Location: San Jose, CA

PostPosted: Sat Nov 05, 2005 3:41 am
Reply with quote

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
View user's profile Send private message
newbie

New User


Joined: 05 Nov 2005
Posts: 12

PostPosted: Mon Nov 07, 2005 10:00 pm
Reply with quote

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
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> DFSORT/ICETOOL

 


Similar Topics
Topic Forum Replies
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
No new posts SFTP Issue - destination file record ... All Other Mainframe Topics 2
No new posts Access to non cataloged VSAM file JCL & VSAM 18
No new posts Need help for File Aid JCL to extract... Compuware & Other Tools 23
Search our Forums:

Back to Top