Home      Mainframe Forum      Mainfarme Tutorials      IBM Manuals      Mainframe Interview Questions      Mainframe Books      IT News     SiteMap     Downloads


     
 
MAINFRAME - TIP OF THE DAY : When you specified V for RECFM parameter, LRECL value is largest record in the file plus 4 bytes. These four bytes contain the actual length of each variable length record in the file

Google
 
Web mainframegurukul.com

BUILD in SORT - Reformatting file data using Syncsort

 
Post new topic   Reply to topic    mainframegurukul.com Forum Index -> DFSORT , ICETOOL & Utilities
  View previous topic :: View next topic  
Author Message
goldyroshan
Active Member


Joined: 05 Apr 2012
Posts: 67
Location: WI, USA

Answer was approved by Question owner.
Useful Post
0 votes
Not an useful post
Greate Post!! Salute Author
0 salutes

PostPosted: Thu Apr 05, 2012 1:52 am    Post subject: BUILD in SORT - Reformatting file data using Syncsort Reply with quote

What i need to achieve : if the 1st byte of input file is equal to 'M', then move data from 1st byte of input file to 1st byte of output file having length = 244, followed by 'XXXXXX' from 245th byte.
otherwise if the 1st byte of input file is not equal to 'M', then dont move any data.

I am using the following Syncsort card to achieve reformatting of data.

Code:

  OPTION COPY
  OUTREC IFTHEN=(WHEN=(1,1,CH,EQ,C'M'),
                BUILD=(1:1,244,C'XXXXXX',251:251,0)),
              IFTHEN=(WHEN=(1,1,CH,NE,C'M'),
               BUILD=(1:1,0))


Can someone please help me? I have already gone through various online forums as well as DFSORT manuals, but could not figure out what to do. Sad

The error that i am getting:-
WER271A OUTREC STATEMENT : NUMERIC FIELD ERROR
Back to top
View user's profile Send private message Yahoo Messenger
Click here, If this post answer your question. <-- Click on right mark icon. If this post answer your question.

Anuj Dhawan
Moderator


Joined: 09 Aug 2008
Posts: 1625
Location: Mumbai, India

Answer was approved by Question owner.
Useful Post
0 votes
Not an useful post
Greate Post!! Salute Author
0 salutes

PostPosted: Thu Apr 05, 2012 4:02 pm    Post subject: Reply with quote

Somehitng does not match up - why are you using this:
Code:
251:251,0)),
- mentioning this means, in the output at position 251, get the data from input starting from 251st postion and of length 0 -- which does not make sense and you get an error.

What length do you want for the output and what do you want to have at 251st position, a zero, or something from input?
_________________
Regards,
Anuj
Back to top
View user's profile Send private message
Click here, If this post answer your question. <-- Click on right mark icon. If this post answer your question.
goldyroshan
Active Member


Joined: 05 Apr 2012
Posts: 67
Location: WI, USA

Answer was approved by Question owner.
Useful Post
0 votes
Not an useful post
Greate Post!! Salute Author
0 salutes

PostPosted: Thu Apr 05, 2012 6:39 pm    Post subject: Reply with quote

Anuj Dhawan wrote:
Somehitng does not match up - why are you using this:
Code:
251:251,0)),
- mentioning this means, in the output at position 251, get the data from input starting from 251st postion and of length 0 -- which does not make sense and you get an error.

What length do you want for the output and what do you want to have at 251st position, a zero, or something from input?
@Anuj,
You are right, that is what even i figured out eventually. I was able to remove this error but I am not getting the desired output.
Basically I want to replicate the below logic into a SORT JCL (i.e. FILEAID needs to be replaced with SORT).

PS005 EXEC PGM=FILEAID,
DD01 DD DSN=i/p file,
FILE DD DSN=o/p file
SYSIN DD *
$$DD01 USER PADCHAR=C' ',
IF=(001,EQ,C'M'),
MOVE=(001,244,001),
MOVE=(245,C'XXXXXX'),
MOVE=(251,0,251),
WRITE=FILE,
IF=(001,NE,C'M'),
MOVE=(001,0,001),
WRITE=FILE
/*


Please help me with the sort card that I used above or maybe you could suggest some other way to achieve this. TIA!
_________________
Logically yours,
Smile GRS Smile
Back to top
View user's profile Send private message Yahoo Messenger
Click here, If this post answer your question. <-- Click on right mark icon. If this post answer your question.
goldyroshan
Active Member


Joined: 05 Apr 2012
Posts: 67
Location: WI, USA

Answer was approved by Question owner.
Useful Post
0 votes
Not an useful post
Greate Post!! Salute Author
0 salutes

PostPosted: Thu Apr 05, 2012 9:09 pm    Post subject: Reply with quote

goldyroshan wrote:
Anuj Dhawan wrote:
Somehitng does not match up - why are you using this:
Code:
251:251,0)),
- mentioning this means, in the output at position 251, get the data from input starting from 251st postion and of length 0 -- which does not make sense and you get an error.

What length do you want for the output and what do you want to have at 251st position, a zero, or something from input?
@Anuj,
You are right, that is what even i figured out eventually. I was able to remove this error but I am not getting the desired output.
Basically I want to replicate the below logic into a SORT JCL (i.e. FILEAID needs to be replaced with SORT).

PS005 EXEC PGM=FILEAID,
DD01 DD DSN=i/p file,
FILE DD DSN=o/p file
SYSIN DD *
$$DD01 USER PADCHAR=C' ',
IF=(001,EQ,C'M'),
MOVE=(001,244,001),
MOVE=(245,C'XXXXXX'),
MOVE=(251,0,251),
WRITE=FILE,
IF=(001,NE,C'M'),
MOVE=(001,0,001),
WRITE=FILE
/*


Please help me with the sort card that I used above or maybe you could suggest some other way to achieve this. TIA!
@Anuj - I actually can't understand the significance of MOVE=(251,0,251),
in the previous snippet (AS-IS scenario using PGM=FILEAID) :-
$$DD01 USER PADCHAR=C' ',
IF=(001,EQ,C'M'),
MOVE=(001,244,001),
MOVE=(245,C'XXXXXX'),
MOVE=(251,0,251),
WRITE=FILE,
IF=(001,NE,C'M'),
MOVE=(001,0,001),
WRITE=FILE

Well, I tried using the following SORTCARD, it seems to be working. Let me know your thoughts on this:-

OPTION COPY
OUTREC IFTHEN=(WHEN=(1,1,CH,EQ,C'M'),
BUILD=(1:1,244,C'XXXXXX',251:251,750)),
IFTHEN=(WHEN=(1,1,CH,NE,C'M'),
BUILD=(1:1,1000))

N.B. : LRECL of output file is 1000
_________________
Logically yours,
Smile GRS Smile
Back to top
View user's profile Send private message Yahoo Messenger
Click here, If this post answer your question. <-- Click on right mark icon. If this post answer your question.
academyindia4
Guest





Answer was approved by Question owner.
Useful Post
0 votes
Not an useful post
Greate Post!! Salute Author
0 salutes

PostPosted: Mon Jan 25, 2016 9:57 pm    Post subject: Topic deleted by Admin Reply with quote

<< Content deleted By Admin >>
Back to top
Click here, If this post answer your question. <-- Click on right mark icon. If this post answer your question.
Display posts from previous:   
Post new topic   Reply to topic    mainframegurukul.com Forum Index -> DFSORT , ICETOOL & Utilities All times are GMT + 5 Hours
Page 1 of 1



 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Cobol Tutorial
This cobol tutorial covers most of the important topics like STRING, UNSTRING, COMP, COMP-3.....
DB2 Tutorial
DB2 Tutorial focuses on DB2 COBOL Programming. Explains in simple language. Some Chapters are locked, Forum members have free access to these chapters
CICS Tutorial
This CICS tutorial covers CICS concepts and CICS Basics, CICS COBOL Programming...
JCL Tutorial
This is most popular JCL tutorial from mainframegurukul. It does contain important jcl ....
SORT Tutorial
This Tutorial covers all important aspects of DFSORT. Has more SORT examples
INTERVIEW Questions
This page covers important interview questions
Mainframe Jobs
Mainframe Jobs posted by members of mainframegurukul forum
FaceBook Page
MainframeGurukul FaceBook Page
LinkedIn Page
MainframeGurkul Linkedin Page

This widget requires Flash Player 9 or better







Go to top of the page
 

Online ABEND Reference ||  JCL References ||  COBOL References ||  VSAM References ||  Tutorials by Drona Series ||  SQL tutorial ||  BOOKS  ||  DB2 INTERVIEW QUESTIONS ||  COBOL INTERVIEW QUESTIONS  ||  JCL INTERVIEW QUESTIONS ||  JCL2 INTERVIEW QUESTIONS ||  VSAM INTERVIEW QUESTIONS ||  CICS INTERVIEW QUESTIONS  ||  Online tutorials ||  Online ABEND Reference ||  JCL References ||  COBOL References ||  VSAM References ||  Tutorials by Drona Series ||  SQL tutorial ||  BOOKS  ||  SiteMap  ||  Expeditor Tutorial  ||  FILE-AID Tutorial  ||  Changeman Tutorial  ||  COBOL   ||  DB2   ||  JCL  ||  CICS  ||  VSAM  ||  DB2 Interview Questions ( 110 )   || Simple JCL Tutorials  || JCL Tutorial from MainframeGurukul.com   || Simple JCL Tutorial - Chapter1 ;|| Mainframe Forum - Tutorials  || Mainframe Tutorials || Mainframe CICS tutorial|| Mainframe COBOL Tutorial

Drona Educational Forums - Mainframe Cobol DB2 CICS Board
Powered by phpBB

mainframetopic-6403.html