View previous topic :: View next topic
Author
Message
suyerasi New User Joined: 05 Apr 2007Posts: 38 Location: india
Input file looks like this with lrecl=996 & recfm=VB
Code:
FDXDB01 EXAM0011.718.FIMAT.
Below are the Control cards
Code:
//SORTIN DD DSN=INPUDT.DSN
//SORTOUT DD DSN=OUTPUT.DSN
// DISP=(,CATLG),DCB=(LRECL=80,BLKSIZE=0,RECFM=FB),
//SYSIN DD *
OPTION COPY
INCLUDE COND=(13,4,CH,NE,C'INIT')
INREC PARSE=(%01=(ABSPOS=5,ENDBEFR=X'05',FIXLEN=16),
%02=(ENDBEFR=X'05',FIXLEN=09),
%03=(ENDBEFR=X'05',FIXLEN=27)),
BUILD=(1,4,
5:%02,
14:%03,
84:X)
SORT FIELDS=(5,9,CH,A)
/*
Would like to execute the next step based on RC from the above step ?
Set RC=04 if input is empty , OR
Set RC=00 if input is not Empty
Would like to know where can i include the following statement
in the above control card ?
COUNT FROM(Input) EMPTY
Back to top
Frank Yaeger DFSORT Developer Joined: 15 Feb 2005Posts: 7129 Location: San Jose, CA
Assuming you mean "if output is empty", you can use the NULLOUT=RC4 option, e.g.
Code:
OPTION COPY,NULLOUT=RC4
COUNT is an ICETOOL operator, so you would need to use it with a PGM=ICETOOL job, not with a PGM=SORT job.
Back to top
suyerasi New User Joined: 05 Apr 2007Posts: 38 Location: india
Dear Frank,
Thanks for your quick response . But it doesnt seem to be working the way we wanted.
After including the statement "OPTION COPY,NULLOUT=RC4 " , It gives RC=0.
[/code]
Code:
OPTION COPY,NULLOUT=RC4
INCLUDE COND=(13,4,CH,NE,C'INIT')
INREC PARSE=(%01=(ABSPOS=5,ENDBEFR=X'05',FIXLEN=16),
%02=(ENDBEFR=X'05',FIXLEN=09),
%03=(ENDBEFR=X'05',FIXLEN=27)),
BUILD=(1,4,
5:%02,
14:%03,
84:X)
SORT FIELDS=(5,9,CH,A)
OUTFIL VTOF,BUILD=(5,80)
Please let me know if i am missing something
Thanks
Back to top
dick scherrer Moderator Emeritus Joined: 23 Nov 2006Posts: 19244 Location: Inside the Matrix
Hello,
Post the messages presented when the step was executed - include the messsage ids.
Back to top
dbzTHEdinosauer Global Moderator Joined: 20 Oct 2006Posts: 6966 Location: porcelain throne
5 will get you ten
he ran SORT instead of ICETOOL
Back to top
suyerasi New User Joined: 05 Apr 2007Posts: 38 Location: india
Dick,
These are the messages i got by using SORT
Code:
ICE201I F RECORD TYPE IS V - DATA STARTS IN POSITION 5
ICE150I 0 VLSHRT NOT USED FOR SORT, MERGE, INCLUDE, OMIT OR SUM STATEMENT FIELDS
ICE751I 0 C5-K90013 C6-K90013 C7-K90000 C8-K90013 E9-K90013 C9-BASE E5-K35433
ICE193I 0 ICEAM1 ENVIRONMENT IN EFFECT - ICEAM1 INSTALLATION MODULE SELECTED
ICE088I 0 ABIASY1T.BIATRP50. , INPUT LRECL = 1000, BLKSIZE = 27998, TYPE
ICE093I 0 MAIN STORAGE = (MAX,8388608,8388608)
ICE156I 0 MAIN STORAGE ABOVE 16MB = (8331248,8331248)
ICE127I 0 OPTIONS: OVFLO=RC0 ,PAD=RC0 ,TRUNC=RC0 ,SPANINC=RC16,VLSCMP=N,SZERO=Y,
ICE128I 0 OPTIONS: SIZE=8388608,MAXLIM=1310720,MINLIM=450560,EQUALS=N,LIST=Y,ERE
ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=NO ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=
ICE130I 0 OPTIONS: RESALL=4096,RESINV=0,SVC=109 ,CHECK=N,WRKREL=N,OUTREL=Y,CKPT=
ICE131I 0 OPTIONS: TMAXLIM=8388608,ARESALL=0,ARESINV=0,OVERRGN=16384,CINV=Y,CFW=
ICE132I 0 OPTIONS: VLSHRT=N,ZDPRINT=Y,IEXIT=N,TEXIT=N,LISTX=N,EFS=NONE ,EXITC
ICE133I 0 OPTIONS: HIPRMAX=OPTIMAL,DSPSIZE=16 ,ODMAXBF=2097152,SOLRF=Y,VLLONG=N
ICE235I 0 OPTIONS: NULLOUT=RC4
ICE084I 0 EXCP ACCESS METHOD USED FOR SORTIN
ICE231I 0 STORAGE USED FOR OUTFIL : BELOW 16M = 22528, ABOVE 16M = 2120704
ICE210I 0 SORTOUT : EXCP USED, LRECL = 80, BLKSIZE = 27920, TYPE = FB
ICE751I 1 EF-K10929 CB-K90013 F0-K30362 E8-K90013
ICE055I 0 INSERT 0, DELETE 0
ICE054I 0 RECORDS - IN: 0, OUT: 0
ICE227I 0 SORTOUT : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 SORTOUT : TOTAL IN = 0, TOTAL OUT = 0
ICE174I 0 NO DATA RECORDS FOR AN OUTFIL DATA SET - RC=0
ICE052I 0 END OF DFSORT
Back to top
Frank Yaeger DFSORT Developer Joined: 15 Feb 2005Posts: 7129 Location: San Jose, CA
suyerasi,
Sigh. You changed your control statements between your first post, my post and your new post. First you didn't have an OUTFIL statement, now you do. Without the OUTFIL statement, NULLOUT=RC4 is the correct parameter to use. With the OUTFIL statement, you have to use NULLOFL=RC4 on the OUTFIL statement instead of NULLOUT=RC4. So the control statements should be:
Code:
OPTION COPY
INCLUDE COND=(13,4,CH,NE,C'INIT')
INREC PARSE=(%01=(ABSPOS=5,ENDBEFR=X'05',FIXLEN=16),
%02=(ENDBEFR=X'05',FIXLEN=09),
%03=(ENDBEFR=X'05',FIXLEN=27)),
BUILD=(1,4,
5:%02,
14:%03,
84:X)
SORT FIELDS=(5,9,CH,A)
OUTFIL VTOF,BUILD=(5,80),NULLOFL=RC4
Back to top
suyerasi New User Joined: 05 Apr 2007Posts: 38 Location: india
Frank,
I am sorry you are correct. While copying the control card i missed the last statement. Again thanks for your reply.
Regards
Suyerasi
Back to top
Please enable JavaScript!