IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

DFSORT Help in Formatting


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
shrivatsa
Warnings : 1

Active User


Joined: 17 Mar 2006
Posts: 174
Location: Bangalore

PostPosted: Mon Jun 30, 2008 3:38 pm
Reply with quote

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
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Mon Jun 30, 2008 5:06 pm
Reply with quote

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
View user's profile Send private message
shrivatsa
Warnings : 1

Active User


Joined: 17 Mar 2006
Posts: 174
Location: Bangalore

PostPosted: Mon Jun 30, 2008 7:23 pm
Reply with quote

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
View user's profile Send private message
Skolusu

Senior Member


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

PostPosted: Mon Jun 30, 2008 11:43 pm
Reply with quote

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
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> DFSORT/ICETOOL

 


Similar Topics
Topic Forum Replies
No new posts Modifying Date Format Using DFSORT DFSORT/ICETOOL 9
No new posts Replace Multiple Field values to Othe... DFSORT/ICETOOL 12
No new posts Calling DFSORT from Cobol, using OUTF... DFSORT/ICETOOL 5
No new posts DFsort help with SUM() DFSORT/ICETOOL 12
No new posts Need help on formatting a report DFSORT/ICETOOL 14
Search our Forums:

Back to Top