Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

INREC vs OUTREC for empty input file

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL
View previous topic :: :: View next topic  
Author Message
charanmsrit

New User


Joined: 25 Oct 2007
Posts: 80
Location: Australia

PostPosted: Thu Feb 06, 2014 8:21 pm    Post subject: INREC vs OUTREC for empty input file
Reply with quote

Hi All,

i have built the below cards to retain the order, sort based on two fields and then split them into five files. i need to process the records in the order they come but the sort is ensuring that for the same key the records are not split into multiple files (to avoid DB deadlocks while parallel processing). now during my testing, the input to this step was empty and therefore it fails

Code:
OPTION EQUALS
SORT FIELDS=(59,8,ZD,A,168,23,ZD,A)
OUTREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(168,23),PUSH=(2664:ID=1))
OUTFIL FILES=01,INCLUDE=(2664,1,SS,EQ,C'0,1'),BUILD=(1,2663)
OUTFIL FILES=02,INCLUDE=(2664,1,SS,EQ,C'2,3'),BUILD=(1,2663)
OUTFIL FILES=03,INCLUDE=(2664,1,SS,EQ,C'4,5'),BUILD=(1,2663)
OUTFIL FILES=04,INCLUDE=(2664,1,SS,EQ,C'6,7'),BUILD=(1,2663)
OUTFIL FILES=05,SAVE,BUILD=(1,2663)
[/quote]

Code:
ICE200I 0 IDENTIFIER FROM CALLING PROGRAM IS 0001
ICE805I 0 JOBNAME: BIRDDM01 , STEPNAME: JS040
ICE802I 0 BLOCKSET     TECHNIQUE IN CONTROL
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE027A 5 END OF          FIELD BEYOND MAXIMUM RECORD LENGTH
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 E7-K79990
ICE143I 0 BLOCKSET     SORT  TECHNIQUE SELECTED
ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS, EXAMPLES AND MORE
ICE000I 0 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R12 - 01:28 ON FRI FEB 07, 2014 -
           OPTION EQUALS
           SORT FIELDS=(59,8,ZD,A,168,23,ZD,A)
           OUTREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(168,23),PUSH=(2664:ID=1))
           OUTFIL FILES=01,INCLUDE=(2664,1,SS,EQ,C'0,1'),BUILD=(1,2663)
           OUTFIL FILES=02,INCLUDE=(2664,1,SS,EQ,C'2,3'),BUILD=(1,2663)
           OUTFIL FILES=03,INCLUDE=(2664,1,SS,EQ,C'4,5'),BUILD=(1,2663)
           OUTFIL FILES=04,INCLUDE=(2664,1,SS,EQ,C'6,7'),BUILD=(1,2663)
           OUTFIL FILES=05,SAVE,BUILD=(1,2663)
ICE146I 0 END OF STATEMENTS FROM CTL1CNTL - PARAMETER LIST STATEMENTS FOLLOW
          DEBUG NOABEND,ESTAE
          OPTION MSGDDN=DFSMSG,LIST,MSGPRT=ALL,RESINV=0,SORTDD=CTL1,SORTIN=X77428*
                         3I,DYNALLOC
          SORT FIELDS=COPY
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE027A 5 END OF          FIELD BEYOND MAXIMUM RECORD LENGTH
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 E7-K79990
ICE052I 3 END OF DFSORT


if i change the OUTREC above as INREC, it works absolutely fine. INREC doesn't serve the purpose and i need the 5 output files created even if they are empty so that the process continues further. Any guidance on how i can achieve my requirement within the same control card??

Thanks
Charan
Back to top
View user's profile Send private message

Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7234

PostPosted: Thu Feb 06, 2014 9:13 pm    Post subject: Reply to: INREC vs OUTREC for empty input file
Reply with quote

How was the "empty" file created? Did you check that it was "empty"? It looks to me that you have records on the file, they are just shorter.

Code:
  OPTION COPY


Run that on your "empty" file and post the sysout from the step, please.
Back to top
View user's profile Send private message
Pandora-Box

Moderator


Joined: 07 Sep 2006
Posts: 1529
Location: Andromeda Galaxy

PostPosted: Thu Feb 06, 2014 9:22 pm    Post subject:
Reply with quote

Hi Charan,

Did you see the below error??

Code:
ICE027A 5 END OF          FIELD BEYOND MAXIMUM RECORD LENGTH


Also using INREC does create empty files for an empty input
Back to top
View user's profile Send private message
charanmsrit

New User


Joined: 25 Oct 2007
Posts: 80
Location: Australia

PostPosted: Thu Feb 06, 2014 11:04 pm    Post subject:
Reply with quote

Hi Guys,

here is the DFSMSG for the run with INREC keyword. it can be noticed that the file is empty

Code:
FILE>                         GTSU7.BIRDDM01.JOB09111.D000001C.?,2014.038,01:38:35:10                         <FILE
ICE200I 0 IDENTIFIER FROM CALLING PROGRAM IS 0001
ICE805I 0 JOBNAME: BIRDDM01 , STEPNAME: JS040
ICE802I 0 BLOCKSET     TECHNIQUE IN CONTROL
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE858I 0 LA=1335676, DA=16384, AA=1319292, BA=10168, CP=5, TA=10221
ICE859I 0 LB=7508, DB=1008, AB=6500, BB=0, CP=0, RS=0, TB=20
ICE860I 0 F=YN, P=2, M=N, B=2048
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE   E5-K80744 E6-K58148 E7-K79990
ICE143I 0 BLOCKSET     SORT  TECHNIQUE SELECTED
ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS, EXAMPLES AND MORE
ICE000I 0 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R12 - 01:38 ON FRI FEB 07, 2014 -
           OPTION EQUALS
           SORT FIELDS=(59,8,ZD,A,168,23,ZD,A)
           INREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(168,23),PUSH=(2664:ID=1))
           OUTFIL FILES=01,INCLUDE=(2664,1,SS,EQ,C'0,1'),BUILD=(1,2663)
           OUTFIL FILES=02,INCLUDE=(2664,1,SS,EQ,C'2,3'),BUILD=(1,2663)
           OUTFIL FILES=03,INCLUDE=(2664,1,SS,EQ,C'4,5'),BUILD=(1,2663)
           OUTFIL FILES=04,INCLUDE=(2664,1,SS,EQ,C'6,7'),BUILD=(1,2663)
           OUTFIL FILES=05,SAVE,BUILD=(1,2663)
ICE146I 0 END OF STATEMENTS FROM CTL1CNTL - PARAMETER LIST STATEMENTS FOLLOW
          DEBUG NOABEND,ESTAE
          OPTION MSGDDN=DFSMSG,LIST,MSGPRT=ALL,RESINV=0,SORTDD=CTL1,SORTIN=X77428*
                         3I,DYNALLOC
          SORT FIELDS=COPY
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE858I 0 LA=1335676, DA=16384, AA=1319292, BA=10168, CP=5, TA=10221
ICE859I 0 LB=7508, DB=1008, AB=6500, BB=0, CP=0, RS=0, TB=20
ICE860I 0 F=YN, P=2, M=N, B=2048
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE   E5-K80744 E6-K58148 E7-K79990
ICE193I 0 ICEAM2 INVOCATION ENVIRONMENT IN EFFECT - ICEAM2 ENVIRONMENT SELECTED
ICE252I 1 PARMLIB OPTIONS WERE MERGED WITH INSTALLATION MODULE DEFAULTS
ICE088I 1 BIRDDM01.JS040   .        , INPUT LRECL = 100, BLKSIZE = 27900, TYPE = FB
ICE093I 0 MAIN STORAGE = (MAX,16777216,16777216)
ICE156I 0 MAIN STORAGE ABOVE 16MB = (16719856,16719856)
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=16777216,MAXLIM=1048576,MINLIM=450560,EQUALS=Y,LIST=Y,ERET=RC16 ,MSGDDN=DFSMSG
ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=FULL ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=N,DYNALOC=(SYSDA   ,008),ABCODE=MSG
ICE130I 0 OPTIONS: RESALL=12288,RESINV=0,SVC=109 ,CHECK=Y,WRKREL=Y,OUTREL=Y,CKPT=N,COBEXIT=COB2
ICE131I 0 OPTIONS: TMAXLIM=16777216,ARESALL=0,ARESINV=0,OVERRGN=16384,CINV=Y,CFW=Y,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=32  ,ODMAXBF=2097152,SOLRF=Y,VLLONG=N,VSAMIO=N,MOSIZE=MAX
ICE235I 0 OPTIONS: NULLOUT=RC0
ICE236I 0 OPTIONS: DYNAPCT=20 ,MOWRK=N
ICE084I 0 EXCP ACCESS METHOD USED FOR X774283I
ICE750I 0 DC 0 TC 0 CS DSVNN KSZ 35 VSZ 35
ICE887I 0 CSES 0,0,0 ES 0,0,0
ICE886I 0 SYS 0 TSTG 0 FS 0 INIT 0 MAX 0 LEN 0
ICE752I 0 FSZ=1 RC  IGN=0 E  AVG=2700 0  WSP=3 C  DYN=0 0
ICE915I 0 MOFSZ=1,MOSZ=0,MOSYS=1952(2),MOSTG=20057,MEML=1952(10)
ICE916I 0 MOFR=0402,MOVR=VV
ICE996I 0 ESM=7728896,ESO=7728896,ESR=0,ESP=4096,ESS=16384,CES=7728896,HSZ=524288
ICE997I 0 HWSP=1,HMAX=5134843,HES=5134843,ASV=5134843,EQ=I1,HN=1
ICE898I 0 OMAX=1203229,NMAX=5134843,ENQT=5134843,CMAX=64,HU=96,BUN=61408,MD=H ,NJ,DU=0,DR=10000,HN=1
ICE880I 0 QP=1 QA=1 HI=1254 LI=1254 MI=1254 TZ=2555 N1=1 N2=1 SZ=2 HN=1
ICE889I 0 CT=MAX     , SB=3, L=0, D=0000, CCW=1MAM
ICE902I 0 O       I NP11
ICE231I 0 STORAGE USED FOR OUTFIL : BELOW 16M = 20480, ABOVE 16M = 10466304
ICE855I 0 CTL1OF01 : TX=N, R=J, L=J, B= , BL=0, BR=0, DCT=39, VS=N, RU=X, SB=241
ICE210I 0 CTL1OF01 : EXCP USED, LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE855I 0 CTL1OF02 : TX=N, R=J, L=J, B= , BL=0, BR=0, DCT=39, VS=N, RU=X, SB=241
ICE210I 0 CTL1OF02 : EXCP USED, LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE855I 0 CTL1OF03 : TX=N, R=J, L=J, B= , BL=0, BR=0, DCT=39, VS=N, RU=X, SB=241
ICE210I 0 CTL1OF03 : EXCP USED, LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE855I 0 CTL1OF04 : TX=N, R=J, L=J, B= , BL=0, BR=0, DCT=39, VS=N, RU=X, SB=241
ICE210I 0 CTL1OF04 : EXCP USED, LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE855I 0 CTL1OF05 : TX=N, R=J, L=J, B= , BL=0, BR=0, DCT=39, VS=N, RU=X, SB=241
ICE210I 0 CTL1OF05 : EXCP USED, LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE751I 1 DE-K61787 D5-K58148 D9-K61787 CB-K64632 E8-K79990
ICE900I 0 CON=1,MUV=0,VOL=1,ENU=1,SBK=0,SRC=0,VEM=0
ICE999I 0 PWK=0 PSP=0 SWK=0 SSP=0 TWK=0 TSP=0 RWK=0 RSP=0 AWK=0 AWP=0
ICE080I 0 IN MAIN STORAGE SORT
ICE055I 0 INSERT 0, DELETE 0
ICE054I 0 RECORDS - IN: 0, OUT: 0
ICE227I 0 CTL1OF01 : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 CTL1OF01 : TOTAL IN = 0, TOTAL OUT = 0
ICE227I 0 CTL1OF02 : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 CTL1OF02 : TOTAL IN = 0, TOTAL OUT = 0
ICE227I 0 CTL1OF03 : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 CTL1OF03 : TOTAL IN = 0, TOTAL OUT = 0
ICE227I 0 CTL1OF04 : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 CTL1OF04 : TOTAL IN = 0, TOTAL OUT = 0
ICE227I 0 CTL1OF05 : DELETED = 0, REPORT = 0, DATA = 0
ICE228I 0 CTL1OF05 : TOTAL IN = 0, TOTAL OUT = 0
ICE804I 5 OUTFIL   EXCP COUNT: 0
ICE174I 0 NO DATA RECORDS FOR AN OUTFIL DATA SET - RC=0
ICE134I 0 NUMBER OF BYTES SORTED: 0
ICE253I 0 RECORDS SORTED - PROCESSED: 0, EXPECTED: 1
ICE165I 0 TOTAL WORK DATA SET TRACKS ALLOCATED: 0 , TRACKS USED: 0
ICE199I 0 MEMORY OBJECT USED AS MAIN STORAGE = 0M BYTES
ICE299I 0 MEMORY OBJECT USED AS WORK STORAGE = 0M BYTES
ICE180I 0 HIPERSPACE STORAGE USED = 0K BYTES
ICE188I 0 DATA SPACE STORAGE USED = 0K BYTES
ICE891I 1 16767576 WMAIN, 9640 CMAIN, MAX CALLOC, N SCN, B BA, 0 AZ, 0 BZ, NN QC, 0 CZ, 0 DZ, 0 PLE
ICE892I 1 100 RIN  27900 BLI  0 BLO  2700 RUN  61408 BUN  2827 CPU  00 CVC
ICE893I 1 6 XIN 64 WIN 1773 GIN NDEN PFP   B00 CM000 CIX UPTH LMD VS   RUX
ICE894I 0 0 STR  0 MOR  0 IPB  0 OPB  0 CYL  I   MN
ICE881I 0 EQ=I1 DX=0 D2=0 D3=1 D4=0 AS=0 SA=0 SB=0 SC=0 HN=1
ICE885I 0 DAT 00 DSR 0304 BINS 0 BSZ 0 RCP 0 AJC 0 RLC 0 DUNIT 0
ICE895I 0 18 MUNIT  36 SUNIT  25 OUNIT
ICE896I 0 0 SET  0 DEXTOT  0 BLK   1 CSZ  0 WE
ICE804I 1 CTL1WK0A EXCP COUNT: 0
ICE804I 1 CTL1WK09 EXCP COUNT: 0
ICE804I 1 CTL1WK08 EXCP COUNT: 0
ICE804I 1 CTL1WK07 EXCP COUNT: 0
ICE804I 1 CTL1WK06 EXCP COUNT: 0
ICE804I 1 CTL1WK05 EXCP COUNT: 0
ICE804I 1 CTL1WK04 EXCP COUNT: 0
ICE804I 1 CTL1WK03 EXCP COUNT: 0
ICE804I 1 CTL1WK02 EXCP COUNT: 0
ICE804I 1 CTL1WK01 EXCP COUNT: 0


Hi Bill,

option copy sysout as requested

Code:
ICE200I 0 IDENTIFIER FROM CALLING PROGRAM IS 0001
ICE805I 0 JOBNAME: GTS75801 , STEPNAME: JS040
ICE802I 0 BLOCKSET     TECHNIQUE IN CONTROL
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE   E5-K80744 E7-K79990
ICE143I 0 BLOCKSET     COPY  TECHNIQUE SELECTED
ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS, EXAMPLES AND MORE
ICE000I 0 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R12 - 04:29 ON FRI FEB 07, 2014 -
           OPTION COPY
ICE146I 0 END OF STATEMENTS FROM CTL1CNTL - PARAMETER LIST STATEMENTS FOLLOW
          DEBUG NOABEND,ESTAE
          OPTION MSGDDN=DFSMSG,LIST,MSGPRT=ALL,RESINV=0,SORTDD=CTL1,SORTIN=X77428*
                         3I,SORTOUT=CTL1OF01,DYNALLOC
          SORT FIELDS=COPY
ICE201I H RECORD TYPE IS F - DATA STARTS IN POSITION 1
ICE751I 0 C5-K76982 C6-K90026 C7-K58148 C8-K67572 E9-K60824 C9-BASE   E5-K80744 E7-K79990
ICE193I 0 ICEAM2 INVOCATION ENVIRONMENT IN EFFECT - ICEAM2 ENVIRONMENT SELECTED
ICE252I 1 PARMLIB OPTIONS WERE MERGED WITH INSTALLATION MODULE DEFAULTS
ICE088I 0 GTS75801.JS040   .        , INPUT LRECL = 100, BLKSIZE = 27900, TYPE = FB
ICE093I 0 MAIN STORAGE = (MAX,16777216,16777216)
ICE156I 0 MAIN STORAGE ABOVE 16MB = (16719856,16719856)
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=16777216,MAXLIM=1048576,MINLIM=450560,EQUALS=N,LIST=Y,ERET=RC16 ,MSGDDN=DFSMSG
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=12288,RESINV=0,SVC=109 ,CHECK=Y,WRKREL=Y,OUTREL=Y,CKPT=N,COBEXIT=COB2
ICE131I 0 OPTIONS: TMAXLIM=16777216,ARESALL=0,ARESINV=0,OVERRGN=16384,CINV=Y,CFW=Y,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=32  ,ODMAXBF=0,SOLRF=Y,VLLONG=N,VSAMIO=N,MOSIZE=MAX
ICE235I 0 OPTIONS: NULLOUT=RC0
ICE236I 0 OPTIONS: DYNAPCT=20 ,MOWRK=N
ICE084I 0 EXCP ACCESS METHOD USED FOR CTL1OF01
ICE084I 0 EXCP ACCESS METHOD USED FOR X774283I
ICE889I 0 CT=MAX     , SB=241, L=0, D=0000, CCW=1MAM
ICE902I 0 O NP10  I NP11
ICE751I 1 EF-BASE   F0-K66717 E8-K79990
ICE900I 0 CON=1,MUV=0,VOL=1,ENU=1,SBK=0,SRC=0,VEM=0
ICE090I 0 OUTPUT LRECL = 2663, BLKSIZE = 26630, TYPE = FB   (SDB)
ICE171I 0 SORTOUT LRECL OF 2663 IS DIFFERENT FROM SORTIN(NN) LRECL OF 100 - RC=0
ICE055I 0 INSERT 0, DELETE 0
ICE054I 0 RECORDS - IN: 0, OUT: 0
ICE173I 0 NO RECORDS FOR THE SORTOUT DATA SET - RC=0
ICE891I 1 16768896 WMAIN, 8320 CMAIN, MAX CALLOC, N SCN, B BA, 0 AZ, 0 BZ, YY QC, 0 CZ, 0 DZ, 0 PLE
ICE892I 1 100 RIN  27900 BLI  26630 BLO  98 RUN  0 BUN  2827 CPU  00 CVC
ICE804I 1 CTL1OF01 EXCP COUNT: 0
ICE804I 1 X774283I EXCP COUNT: 0
ICE052I 0 END OF DFSORT
********************************************************** Bottom of Data *********************************************************


i see your point Bill. The file is created in the previous step by a BMP cobol program. as this step had empty input, i believe it did not open/close the output file. Is this the issue? i cannot accurately say if the file has been open/closed or not because the vendor package (CSC Hogan) which runs underneath does all the file handling.
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7234

PostPosted: Fri Feb 07, 2014 12:01 am    Post subject: Reply to: INREC vs OUTREC for empty input file
Reply with quote

Yes, you have the same in the other output, with

Code:
ICE088I 1 BIRDDM01.JS040   .        , INPUT LRECL = 100, BLKSIZE = 27900, TYPE = FB


File not closed does sound likely. These days, Language Environment mainly takes care of things like that, but perhaps Hogan is not availing itself of that (too old, or just not using it).

If you can't get a change, you'll have to come up with a reliable way of dealing with it...
Back to top
View user's profile Send private message
Skolusu

Senior Member


Joined: 07 Dec 2007
Posts: 2205
Location: San Jose

PostPosted: Fri Feb 07, 2014 6:06 am    Post subject: Re: INREC vs OUTREC for empty input file
Reply with quote

charanmsrit wrote:
Hi All,

i have built the below cards to retain the order, sort based on two fields and then split them into five files. i need to process the records in the order they come but the sort is ensuring that for the same key the records are not split into multiple files (to avoid DB deadlocks while parallel processing). now during my testing, the input to this step was empty and therefore it fails
if i change the OUTREC above as INREC, it works absolutely fine.


charanmsrit,

Your Empty input file has no relevance to your Job failure. Your job with OUTREC failed due to the SORT statement. You need to understand the flow of DFSORT. Check this link which shows the processing order for record handling, exits, statements, and options. Use this diagram with the text following it to understand the order DFSORT uses to run your job.

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ICE1CA60/1.5.4?

Your SORT statement gets executed before OUTREC statement and when your input file LRECL in only 100 bytes and you are trying to sort the value at 168 for length of 23 bytes which does NOT exist and hence the error ICE027A.

When you used INREC statement, it gets executed before SORT statement and hence your job was successful. Even though your LRECL is only 100, and your WHEN=GROUP is validating the field at 168, DFSORT actually replaces missing bytes with spaces in specified input fields and are processed as padded fields and hence your job was successful.


charanmsrit wrote:

INREC doesn't serve the purpose and i need the 5 output files created even if they are empty so that the process continues further. Any guidance on how i can achieve my requirement within the same control card??


You need to first tell us the reason as to why you are creating a 100 byte file and trying to validate a field(position 168) that doesn't exist. If your input file is empty do you create with an LRECL=100 and if it has data do you create with an LRECL=2663?

Depending on that answer we can suggest you a solution.
Back to top
View user's profile Send private message
charanmsrit

New User


Joined: 25 Oct 2007
Posts: 80
Location: Australia

PostPosted: Fri Feb 07, 2014 7:22 am    Post subject: Reply to: INREC vs OUTREC for empty input file
Reply with quote

Thanks Bill and Kolusu,

My mistake. The vendor hogan package is such that the file DD DCB's are defined in a dictionary which takes precdence over JCL DCB parameters.the dictionary has the LRECL=2663 whereas the JCL has been incorrectly coded with LRECL=100. As the application did not issue a open/write/close to the file, the JCL parameter of LRECL=100 took over.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DFSORT/ICETOOL All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Performing arithmetic on input field zh_lad DFSORT/ICETOOL 22 Tue Dec 06, 2016 8:04 pm
No new posts High CPU consumption Job using IAM fi... aswinir JCL & VSAM 8 Thu Dec 01, 2016 8:28 pm
No new posts Add PD field from 2nd file to PD in 1st Sushant Garje DFSORT/ICETOOL 6 Thu Dec 01, 2016 4:32 pm
No new posts File Aid to File Manager conversion murali3955 IBM Tools 4 Thu Nov 24, 2016 3:41 pm
No new posts How to convert the VBM file to VB or... Sulabh Agrawal JCL & VSAM 4 Fri Nov 18, 2016 1:04 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us