Portal | IBM Manuals | Downloads | Products | Refer | Info | Programs | JCLs | Forum Rules*| Site Map | Mainframe CD 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index
 
Register
 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index FAQ Search Memberlist Usergroups Profile Log in to check your private messages Log in
 
Finding whether file is empty or not - with few restrictions

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL
Author Message
raam_kumar

New User


Joined: 25 Apr 2007
Posts: 44
Location: chennai, India

PostPosted: Wed May 14, 2008 7:40 pm    Post subject: Finding whether file is empty or not - with few restrictions
Reply with quote

Hi
i have a ps file, which will contain three type of records
1) Header record (with code AAA)
2) Data record (With code DAT)
3) Trailer record(with code BBB)

the requirement is, if there are no DAT records (data records) i have to report the file as empty file. is there a way to achieve this in sort.
Back to top
View user's profile Send private message
References
PostPosted: Wed May 14, 2008 7:40 pm    Post subject: Re: Finding whether file is empty or not - with few restrictions Reply with quote

CICS Guy

Senior Member


Joined: 18 Jul 2007
Posts: 1088
Location: At my desk

PostPosted: Wed May 14, 2008 8:14 pm    Post subject:
Reply with quote

Take a look at "Set RC=12 or RC=4 if file is empty, has more than n records, etc" in Smart DFSORT Tricks
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Moderator


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

PostPosted: Wed May 14, 2008 9:25 pm    Post subject:
Reply with quote

Quote:
i have to report the file as empty file.


What to you mean by "report the file as empty file"?

If you want a RC=12 when the file is empty or RC=0 when it isn't empty, you can use this DFSORT/ICETOOL job:

Code:
//S1    EXEC  PGM=ICETOOL               
//TOOLMSG DD SYSOUT=*                   
//DFSMSG  DD SYSOUT=*                   
//IN DD DSN=....  input file                         
//TOOLIN DD *                           
COUNT FROM(IN) EMPTY USING(CTL1)         
//CTL1CNTL DD *                         
  INCLUDE COND=(1,3,CH,EQ,C'DAT')       
/*


If you want a RC=4 instead of a RC=12, add RC4 to the COUNT operator.
Back to top
View user's profile Send private message
dick scherrer

Global Moderator


Joined: 23 Nov 2006
Posts: 6726
Location: 221 B Baker St

PostPosted: Wed May 14, 2008 9:52 pm    Post subject:
Reply with quote

Hello,

I believe the issue is when there are header and/or trailer records, but no data records.

The file is "logically" empty even though it has hdr/trlr records.
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Moderator


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

PostPosted: Wed May 14, 2008 9:58 pm    Post subject:
Reply with quote

Yes, the INCLUDE for 'DAT' takes care of that. It only includes data records, not the header and trailer records, so the test for EMPTY is done against just the data records.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL All times are GMT + 6 Hours
Page 1 of 1