IBM MAINFRAME HELP & SUPPORT FORUMS
Technical Forums for IBM Mainframe Applications like COBOL, JCL, CICS, DB2, FileAid, DFSORT, Endevor, Xpediter, CoolGen, CA-7&11, AbendAid, IMS, IDMS, PL/I, MqSeries, SyncSort, Assembler, ChangeMan, Easytrieve, InterTest, REXX, CLIST etc...
 

DFSORT Help in Formatting

THIS IS AN ARCHIVE FORUM: CLICK HERE TO GO TO THE ORIGINAL TOPIC

 
       IBMMAINFRAMES.com - IBM Mainframe Support Forums Index -> DFSORT/ICETOOL
View previous topic :: View next topic  
Author Message
shrivatsa



Joined: 17 Mar 2006
Posts: 159
Location: Pune

Posted: Mon Jun 30, 2008 3:38 pm    Post subject: DFSORT Help in Formatting  

Here is my input
Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
PATRICIA ANN JONES       SWB12008-02-18     00.00AR AR               
JUDY GRIMMETT            SWB12008-02-19     00.00AR AR               
CHARLES EANES            SWB12008-02-18     41   AU TX               
ASHLEY CUNNIGHAM         SWB12008-02-18     38.75DA TX               
SCHLAINE FISHER          SWB12008-02-18     38.75DA TX       

LRECL =350
RECFM=FB

At position 45 if its 00.00 then its ahs to prefix by 0000000.00
If any other number like 41 then 0000041.00
so my output should be

Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
PATRICIA ANN JONES       SWB12008-02-18     0000000.00AR AR               
JUDY GRIMMETT            SWB12008-02-19     0000000.00AR AR               
CHARLES EANES            SWB12008-02-18     0000041.00AU TX               
ASHLEY CUNNIGHAM         SWB12008-02-18     0000038.75DA TX               
SCHLAINE FISHER          SWB12008-02-18     0000038.75DA TX   
Back to top  
gcicchet



Joined: 28 Jul 2006
Posts: 663

Posted: Mon Jun 30, 2008 5:06 pm    Post subject:  

Hi,

here is an example using LRECL=80 Code: //S1       EXEC PGM=ICEMAN                                             
//SYSOUT   DD SYSOUT=*                                                 
//SORTIN   DD *                                                         
PATRICIA ANN JONES       SWB12008-02-18     00.00AR AR                 
JUDY GRIMMETT            SWB12008-02-19     00.00AR AR                 
CHARLES EANES            SWB12008-02-18     41   AU TX                 
ASHLEY CUNNIGHAM         SWB12008-02-18     38.75DA TX                 
SCHLAINE FISHER          SWB12008-02-18     38.75DA TX                 
//SORTOUT  DD SYSOUT=*                                                 
//SYSIN    DD    *                                                     
  OPTION COPY                                                           
  INREC IFTHEN=(WHEN=(47,3,CH,EQ,C'   '),OVERLAY=(47:C'.00'))           
  OUTREC OVERLAY=(55:50,5,45:45,5,UFF,ADD,+00000000,                   
        EDIT=(TTTTTTT.TT))                                             
/*                                                                     


Gerry
Back to top  
shrivatsa



Joined: 17 Mar 2006
Posts: 159
Location: Pune

Posted: Mon Jun 30, 2008 7:23 pm    Post subject: Reply to: DFSORT Help in Formatting  

There is a small change in my input

Code: ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
PATRICIA ANN JONES       SWB12008-02-18          AR AR               
JUDY GRIMMETT            SWB12008-02-19          AR AR               
CHARLES EANES            SWB12008-02-18     41   AU TX               
ASHLEY CUNNIGHAM         SWB12008-02-18     38.75DA TX               
SCHLAINE FISHER          SWB12008-02-18     38.75DA TX   


And my output should be
Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
PATRICIA ANN JONES       SWB12008-02-18     0000000.00AR AR               
JUDY GRIMMETT            SWB12008-02-19     0000000.00AR AR               
CHARLES EANES            SWB12008-02-18     0000041.00AU TX               
ASHLEY CUNNIGHAM         SWB12008-02-18     0000038.75DA TX               
SCHLAINE FISHER          SWB12008-02-18     0000038.75DA TX   
Back to top  
Skolusu



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

Posted: Mon Jun 30, 2008 11:43 pm    Post subject:  

shrivatsa,

The following DFSORT JCl will give you the desired results. The Lrecl is increased by 4 bytes.

Code:
//STEP0100 EXEC PGM=ICEMAN                                     
//SYSOUT   DD SYSOUT=*                                         
//SORTIN   DD *                                                 
PATRICIA ANN JONES       SWB12008-02-18          AR AR         
JUDY GRIMMETT            SWB12008-02-19          AR AR         
CHARLES EANES            SWB12008-02-18     41   AU TX         
ASHLEY CUNNIGHAM         SWB12008-02-18     38.75DA TX         
SCHLAINE FISHER          SWB12008-02-18     38.75DA TX         
//SORTOUT  DD SYSOUT=*                                         
//SYSIN    DD *                                                 
  SORT FIELDS=COPY                                             
  INREC IFTHEN=(WHEN=(45,05,SS,EQ,C'.'),                       
        PARSE=(%00=(ABSPOS=45,ENDBEFR=C'.',FIXLEN=7),           
               %01=(FIXLEN=2)),                                 
         BUILD=(1,44,%00,UFF,M11,LENGTH=7,C'.',                 
                %01,TRAN=ALTSEQ,55:50,300)),                   
        IFTHEN=(WHEN=NONE,                                     
         BUILD=(1,44,45,5,UFF,EDIT=(TTTTTTT),C'.00',55:50,300))
        ALTSEQ CODE=(40F0)                                     
/*                                                             


The output from the above job is

Code:
PATRICIA ANN JONES       SWB12008-02-18     0000000.00AR AR
JUDY GRIMMETT            SWB12008-02-19     0000000.00AR AR
CHARLES EANES            SWB12008-02-18     0000041.00AU TX
ASHLEY CUNNIGHAM         SWB12008-02-18     0000038.75DA TX
SCHLAINE FISHER          SWB12008-02-18     0000038.75DA TX


Hope this helps...

Cheers
Back to top  
 
       IBMMAINFRAMES.com - IBM Mainframe Support Forums Index -> DFSORT/ICETOOL
Page 1 of 1
THIS IS AN ARCIVE FORUM IN READ ONLY MODE. IF YOU WANT TO ASK YOUR DOUBTS USE THE ACTUAL FORUM