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

Convert some values of input file to other values in output


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

New User


Joined: 22 Nov 2006
Posts: 12
Location: Delhi

PostPosted: Wed Feb 28, 2007 5:06 pm
Reply with quote

In my input file, there is a field having values of A, B, C or D etc of one char.
In my output file I want all A or B to be written as 'Y' and all C or D or rest to be written as 'N'.
Ex:
Input
1111 A
2222 B
3333 C
4444 D
5555 X
6666 Z

Output
1111 Y
2222 Y
3333 N
4444 N
5555 N
6666 N

Could anyone please suggest what should be sort card or how can i do it with Sort.

Thanks.
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: Wed Feb 28, 2007 9:11 pm
Reply with quote

Here's a DFSORT job that will do what you asked for:

Code:

//S1    EXEC  PGM=ICEMAN
//SYSOUT    DD  SYSOUT=*
//SORTIN DD DSN=...  input file
//SORTOUT DD DSN=...  output file
//SYSIN    DD    *
  OPTION COPY
  INREC IFTHEN=(WHEN=(6,1,SS,EQ,C'A,B'),OVERLAY=(6:C'Y')),
        IFTHEN=(WHEN=NONE,OVERLAY=(6:C'N'))
/*
Back to top
View user's profile Send private message
abhilashapandey

New User


Joined: 22 Nov 2006
Posts: 12
Location: Delhi

PostPosted: Thu Mar 01, 2007 2:06 pm
Reply with quote

Hey Thanks a ton for your quick response.

I used it, and got my work done.

Please let me know what does 'SS' mean in the following
WHEN=(164,1,SS,EQ,C'A,E,G,L,R,X,Y,Z')
OVERLAY=(164:C'Y')),
IFTHEN=(WHEN=NONE,OVERLAY=(164:C'N'))
and when=none means for the rest of values or something else.

Thanks in advance.
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: Thu Mar 01, 2007 9:35 pm
Reply with quote

SS is substring comparison - see:

publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ICE1CA20/3.7.4?DT=20060615185603

WHEN=NONE means any record that did not satisfy the WHEN=(logexp) conditions.

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
abhilashapandey

New User


Joined: 22 Nov 2006
Posts: 12
Location: Delhi

PostPosted: Fri Mar 02, 2007 12:29 pm
Reply with quote

Thnaks alot for your guidance.
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 How to split large record length file... DFSORT/ICETOOL 10
No new posts INCLUDE OMIT COND for Multiple values... DFSORT/ICETOOL 5
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
No new posts SFTP Issue - destination file record ... All Other Mainframe Topics 2
No new posts Access to non cataloged VSAM file JCL & VSAM 18
Search our Forums:

Back to Top