SORT FIELDS=(1,32,CH,A)



JES, JES2, JCL utilities, IDCAMS, Compile & Run JCLs, PROCs etc...

Re: SORT FIELDS=(1,32,CH,A)

Postby dn2012 » Wed Feb 29, 2012 2:21 am

Thanks its work.
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: SORT FIELDS=(1,32,CH,A)

Postby dn2012 » Wed Feb 29, 2012 3:41 am

We were expecting around 10k records but file has 206K records.

I think it was due to repeating values.
Do you see any problem with sorting?
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: SORT FIELDS=(1,32,CH,A)

Postby Akatsukami » Wed Feb 29, 2012 3:54 am

dn2012 wrote:We were expecting around 10k records but file has 206K records.

I think it was due to repeating values.
Do you see any problem with sorting?

No.

The messages that you posted at 14:32 CST (UTC-6) indicate that the data set does have about 206K records in it. Either your expectations are incorrect, or you screwed the pooch in writing your control cards.
"You have sat too long for any good you have been doing lately ... Depart, I say; and let us have done with you. In the name of God, go!" -- what I say to a junior programmer at least once a day
User avatar
Akatsukami
Global moderator
 
Posts: 1058
Joined: Sat Oct 16, 2010 2:31 am
Location: Bloomington, IL
Has thanked: 6 times
Been thanked: 51 times

Re: SORT FIELDS=(1,32,CH,A)

Postby Frank Yaeger » Wed Feb 29, 2012 3:59 am

But here is the issue

We expecting around 10k records but file has 206K records.


You do NOT need to send me a private e-mail every time you post here. Either post here, or send me a private e-mail- don't do both!

I don't understand how you expect me to help you with just this information. I certainly can't verify that you should get 206K records or 10K records since I don't have your input file.

DFSORT pulls the records based on the control statements you give it which are:

  INCLUDE COND=(26,7,CH,EQ,C'MCIPROB')
  SORT FIELDS=(1,32,CH,A)
  SUM FIELDS=NONE


This tells DFSORT to select records with 'MCIPROB' in positions 26-32, sort them on 1-32 and only keep one record with each value in 1-32.
If you're not getting the number of records you expect, then something is not correct in your control statements.

Also, I thought you just wanted to process the IMSTESTA.IMF310.ITD.SOURCE(TCIS0223) data set, so I told you to use:

//SORTIN DD DSN=IMSTESTA.IMF310.ITD.SOURCE(TCIS0223),DISP=SHR

But your JCL shows you using all of the data sets for SORTIN:

//SORTIN DD DISP=OLD,DSN=IMSTESTA.IMF310.ITD.SOURCE(DEFAULT)
// DD DISP=OLD,DSN=IMSTESTA.IMF310.ITD.SOURCE(CWS)
// DD DISP=OLD,DSN=IMSTESTA.IMF310.ITD.SOURCE(TCIS0223)
// DD DISP=OLD,DSN=IMSTESTA.IMF310.ITD.SOURCE(PDB) ## 10/28/11
// DD DISP=OLD,DSN=IMSTESTA.IMF310.ITD.SOURCE(ETRS1211)

You should only have the data set you want to process for SORTIN.
Frank Yaeger - DFSORT Development Team (IBM) - yaeger@us.ibm.com
Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration
=> DFSORT/MVS is on the Web at http://www.ibm.com/storage/dfsort
User avatar
Frank Yaeger
Global moderator
 
Posts: 1079
Joined: Sat Jun 09, 2007 8:44 pm
Has thanked: 0 time
Been thanked: 15 times

Re: SORT FIELDS=(1,32,CH,A)

Postby dn2012 » Wed Feb 29, 2012 8:59 pm

Thanks for your help.
Problem has been fixed.


ACTION to solve the issue:

I wrote a JCL “ABC.DATA(ICETOOL)” as below:

//*********************************************************************
//*  USE ICETOOL TO DIAGNOSE DATA IN THE DS AT PARTICLAR POSITIONS     
//********************************************************************
//S1    EXEC  PGM=ICETOOL                                             
//TOOLMSG DD SYSOUT=*                                                 
//DFSMSG  DD SYSOUT=*                                                 
//IN DD DSN=IMSTESTA.IMF310.ITD.SOURCE(TCIS0228),DISP=SHR             
//RPT DD SYSOUT=*                                                     
//TOOLIN DD *                                                         
  OCCUR FROM(IN) LIST(RPT) ON(25,7,CH) ON(VALCNT)                     
/*     


TSSDNICE JOB18657
Its count me total count for (TCIS0228).

1234567890123456789012345678901
MCTPMNAMC000493 MCIPROB

I found required record starts at position 25 not 26.
(25,7,CH)

I also noticed that it ends on position 31.


I changed the respective values and its work.

INCLUDE COND=(25,7,CH,EQ,C'MCIPROB')
SORT FIELDS=(1,31,CH,A)
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: SORT FIELDS=(1,32,CH,A)

Postby Frank Yaeger » Thu Mar 01, 2012 12:35 am

It took a while but we got this resolved offline via several notes.
Frank Yaeger - DFSORT Development Team (IBM) - yaeger@us.ibm.com
Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration
=> DFSORT/MVS is on the Web at http://www.ibm.com/storage/dfsort
User avatar
Frank Yaeger
Global moderator
 
Posts: 1079
Joined: Sat Jun 09, 2007 8:44 pm
Has thanked: 0 time
Been thanked: 15 times

Previous

Return to JCL

 


  • Related topics
    Replies
    Views
    Last post