Page 1 of 1

WER215A OUTREC ARITHMETIC OVERFLOW PD TO=BI

PostPosted: Tue Aug 12, 2014 11:20 pm
by tivrfoa
Hello everyone,

I'm getting the error when I try to convert from PD to BI. I checked the input dataset and start location and length are corrects.
WER215A OUTREC ARITHMETIC OVERFLOW

I found this thread, but the guy didn't get a reply:
http://ibmmainframes.com/about31866.html

My first outrec (below) was working, but then more records were added to the input dataset (F1) and gave the error: WER215A OUTREC ARITHMETIC OVERFLOW
Original outrec:
OUTREC BUILD=(1,35,                                                 
              36,06,PD,TO=BI,LENGTH=2,
              42,65,1X,           
              107,2,C'0',         
              116,26,             
              142,06,PD,TO=BI,LENGTH=2,
              148,19) 


There are many records and I don't know which one is causing this problem.
I thought that maybe the value was too big for LENGTH=2, but this does not cause abbend.
This test code below works fine:
//SORT01  EXEC PGM=SORT                   
//SYSOUT  DD SYSOUT=*                     
//SORTIN  DD *                           
0000000000                               
                                         
0000000020                               
0123456789                               
//SORTOUT DD DSN=&&TEMP1,DISP=(NEW,CATLG)
//SYSIN   DD *                           
  OPTION COPY                             
  OUTREC BUILD=(001,010,ZD,TO=PD)         
* OUTREC BUILD=(001,010,ZD,TO=BI)         
//*---------------------------------------
//SORT02  EXEC PGM=SORT                   
//SYSOUT  DD SYSOUT=*                     
//SORTIN  DD DSN=&&TEMP1,DISP=(SHR)       
//SORTOUT DD SYSOUT=*                     
//SYSIN   DD *                           
  OPTION COPY                             
* OUTREC BUILD=(001,006,PD,TO=BI,LENGTH=4)
  OUTREC BUILD=(001,006,PD,TO=BI,LENGTH=2)
/*                                       


I changed the OUTREC to check if the field is null, but got the same error:
SYSIN :
                                                                 
 JOINKEYS FILE=F1,FIELDS=(001,02,A,
                          003,04,A,
                          007,02,A)
                                                                 
 JOINKEYS FILE=F2,FIELDS=(028,02,A,
                          031,04,A,
                          036,02,A)
                                                                 
 REFORMAT FIELDS=(F1:001,166)     
                                                                 
 SORT FIELDS=(001,02,BI,A,       
              003,04,BI,A,       
              007,02,BI,A)       
                                                                 
 SUM FIELDS=NONE                                                 
                                                                 
 OUTREC IFTHEN=(WHEN=(148,1,CH,EQ,C'?'),                         
          BUILD=(001,035,             
                 036,006,PD,TO=BI,LENGTH=2,   ** ps: this field cannot be null
                 042,065,C'0',             
                 107,002,C'0',             
                 116,026,                 
                 133:2X'00',               
                 148,019)),                                     
        IFTHEN=(WHEN=NONE,                                       
          BUILD=(001,035,             
                 036,006,PD,TO=BI,LENGTH=2,
                 042,065,C'0',             
                 107,002,C'0',             
                 116,026,                   
                 142,06,PD,TO=BI,LENGTH=2, 
                 148,019))                                       


SYSOUT:
WER164B  18,052K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,     
WER164B     0 BYTES RESERVE REQUESTED, 14,628K BYTES USED               
WER146B  12K BYTES OF EMERGENCY SPACE ALLOCATED                         
WER481I  JOINKEYS REFORMAT RECORD LENGTH=  166, TYPE = F                 
WER237I  OUTREC RECORD LENGTH =   153                                   
WER110I  SORTOUT  : RECFM=FB   ; LRECL=   153; BLKSIZE= 27846           
WER074I  SORTOUT  : DSNAME=...     
WER410B  17,468K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,
WER410B     0 BYTES RESERVE REQUESTED, 14,064K BYTES USED               
WER036B  G=33293                                                         
WER177I  TURNAROUND SORT PERFORMED                                       
WER215A  OUTREC ARITHMETIC OVERFLOW                                     
WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000                           
WER482I  JNF1 STATISTICS                                                 
WER483B  2,000K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,       
WER483B     0 BYTES RESERVE REQUESTED, 2,284K BYTES USED                 
WER108I  SORTJNF1 : RECFM=FB   ; LRECL=   166; BLKSIZE= 27888           
WER073I  SORTJNF1 : DSNAME=...       
WER483B  1,412K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,
WER483B     0 BYTES RESERVE REQUESTED, 1,720K BYTES USED                 
WER483B  G=3202                                                         
WER416B  SORTJNF1 : EXCP'S=2,UNIT=3390,DEV=DB6D,CHP=(F0F1F2F3,1),VOL=DS0X
WER416B  TOTAL OF 2 EXCP'S ISSUED FOR SORTING                           
WER487I  FILESIZE 502,814 BYTES                                         
WER482I  JNF2 STATISTICS                                                 
WER483B  1,888K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,       
WER483B     0 BYTES RESERVE REQUESTED, 2,172K BYTES USED                 
WER108I  SORTJNF2 : RECFM=FB   ; LRECL=   120; BLKSIZE= 27960           
WER073I  SORTJNF2 : DSNAME=...     
WER483B  1,300K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,
WER483B     0 BYTES RESERVE REQUESTED, 1,608K BYTES USED                 
WER483B  G=3277                                                         
WER416B  SORTJNF2 : EXCP'S=2,UNIT=3390,DEV=DB36,CHP=(F0F1F2F3,1),VOL=DS0X
WER416B  TOTAL OF 2 EXCP'S ISSUED FOR SORTING                           
WER487I  FILESIZE 378,240 BYTES     


Can someone help me here? What may be causing this problem?

Thank you.

[SOLVED]Re: WER215A OUTREC ARITHMETIC OVERFLOW PD TO=BI

PostPosted: Wed Aug 13, 2014 12:31 am
by tivrfoa
Hello,

Sorry folks. The problem actually happens when the value is too big.
Actually the problem is in the first conversion:
36,06,PD,TO=BI,LENGTH=2,

There are some values that are too big:
PD in hex:
210061
04015C

Test code producing the same error:
//SORT001  EXEC PGM=SORT                                         
//SYSOUT   DD SYSOUT=*                                           
//SORTIN   DD DSN=INPUT-DATASET,DISP=SHR
//SORTOUT  DD DSN=&&TEMP1,DISP=(NEW,CATLG)                       
//SYSIN    DD *                                                 
  OPTION COPY                                                   
  INCLUDE COND=(36,6,PD,GT,1000)                                 
  OUTREC BUILD=(36,6)                                           
//****                                                           
//SORT002  EXEC PGM=SORT                                         
//SYSOUT   DD SYSOUT=*                                           
//SORTIN   DD DSN=&&TEMP1,DISP=SHR                               
//SORTOUT  DD SYSOUT=*                                           
//SYSIN    DD *                                                 
  OPTION COPY                                                   
//****                                                           
//SORT003  EXEC PGM=SORT                                         
//SYSOUT   DD SYSOUT=*                                           
//SORTIN   DD DSN=&&TEMP1,DISP=SHR                               
//SORTOUT  DD SYSOUT=*                                           
//SYSIN    DD *                                                 
  OPTION COPY                                                   
  OUTREC BUILD=(01,06,PD,TO=BI)                                 
/*