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

How to specify the order of my out put file?


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
eHorizon.Andrew

New User


Joined: 18 Jan 2007
Posts: 28
Location: Bank of communications

PostPosted: Mon Jan 22, 2007 4:36 pm
Reply with quote

hi,
I have a question, how can I speify the order of records in an output file,e.g. a file contains many records, which is formatted like follow,

Code:

name       currency     currency-wanted
11**         cad                 usd
11**         cad                 usd
11**         usd                 usd
11**         usd                 usd
11**         eur                 usd
11**         jpy                 usd
22**         aud                 eur
22**         aud                 eur
22**         eur                 eur
22**         usd                 eur
22**         usd                 eur


the result I want is that , the records contain same name should be collocated together and those whose "currency" field equals to "currency-wanted" must be put at the end of them.So the output should be

Code:

name       currency     currency-wanted
11**         cad                 usd
11**         cad                 usd
11**         eur                 usd
11**         jpy                 usd
11**         usd                 usd
11**         usd                 usd
22**         aud                 eur
22**         aud                 eur
22**         usd                 eur
22**         usd                 eur
22**         eur                 eur


I am a new programmer, sorry for any various interpretations bringing to you...

thank you for help.
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Developer


Joined: 15 Feb 2005
Posts: 7129
Location: San Jose, CA

PostPosted: Mon Jan 22, 2007 9:56 pm
Reply with quote

Here's a DFSORT job that will do what you asked for. I assumed your input file has RECFM=FB and LRECL=80, but the job can be changed appropriately for other attributes.

Code:

//S1    EXEC  PGM=ICEMAN
//SYSOUT    DD  SYSOUT=*
//SORTIN DD DSN=...  input file (FB/80)
//SORTOUT DD DSN=...  output file (FB/80)
//SYSIN    DD    *
  INREC IFTHEN=(WHEN=INIT,OVERLAY=(81:C'0')),
    IFTHEN=(WHEN=(14,3,CH,EQ,34,3,CH),OVERLAY=(81:C'1'))
  SORT FIELDS=(1,4,CH,A,81,1,CH,A),EQUALS
  OUTREC BUILD=(1,80)
/*


If you're not familiar with DFSORT and DFSORT's ICETOOL, I'd suggest reading through "z/OS DFSORT: Getting Started". It's an excellent tutorial, with lots of examples, that will show you how to use DFSORT, DFSORT's ICETOOL and DFSORT Symbols. You can access it online, along with all of the other DFSORT books, from:

Use [URL] BBCode for External Links
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 Compare 2 files and retrive records f... DFSORT/ICETOOL 3
No new posts FTP VB File from Mainframe retaining ... JCL & VSAM 8
No new posts Extract the file name from another fi... DFSORT/ICETOOL 6
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
Search our Forums:

Back to Top