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

Is Concatenation of files essential


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 10:57 am
Reply with quote

But, can we sort that huge number of input records that are residing in the tape?

The job is utilizing huge amount of CPU time and at the end its abending with SE37.
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 11:05 am
Reply with quote

Hi,

it makes no difference whether you are sorting from disk or tape.

The SE37 is on which file ?

Why are you sorting the file if you are extracting data ?

Extract the data and then sort it. From my understanding, you are not selecting many records.


Gerry
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 11:34 am
Reply with quote

The runjcl that I am using is as under:

Code:

//SORT01   EXEC PGM=SORT                                               
//*                                                                     
//SYSPRINT DD   SYSOUT=*                                               
//SYSOUT   DD   SYSOUT=*                                               
//*                                                                     
//SORTIN01  DD DISP=SHR,DSN=&NAME..SSET2.MITDPFI.DEC2005.CMI   
//SORTIN02  DD DISP=SHR,DSN=&NAME..SSET3.MITDPFI.DEC2005.CMI   
//SORTIN03  DD DISP=SHR,DSN=&NAME..SSET6.MITDPFI.DEC2005.CMI   
//SORTOUT   DD DSN=&NAME..CLAIMDEC.OUT,                                 
//             DISP=(NEW,CATLG,CATLG),                                 
//             DCB=(RECFM=FB,LRECL=5200,BLKSIZE=0,DSORG=PS),           
//             UNIT=3390,SPACE=(TRK,(3335,3335),RLSE)                   
//SYSIN     DD *
  MERGE FIELDS=(24,7,CH,A)               
  INCLUDE COND=(24,7,CH,EQ,C'0125032',OR,
                24,7,CH,EQ,C'0175002')   
  SUM FIELDS=NONE                       
/*     
//*
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 11:44 am
Reply with quote

I am getting the SE37 abend on the SORTOUT file.
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 12:01 pm
Reply with quote

Hi,

like it has been mentioned earlier, run it 1 file at a time and merge at the end.

Output can be written to tape if space is an issue.

Can you also post the joblog output including messages.

Gerry
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Fri Jul 04, 2008 12:10 pm
Reply with quote

I might be wrong, but there is something not clear in the whole approach
( the record number does not look that big )
if the need is simply to extract some records from some tape files
a merge application is overkill..
the main drawback is that it will need as many tape units ( real or virtual )
as the sortin statements

whats' s wrong in running ( a purist might object - but I am no syncsort xpert ) two steps...
the first one to extract the records ...
something like
Code:
 option copy
 include .....

and the other one to sort as needed

or using the proper control statement include/discard the wanted/extraneous records
in the input stage ( before sorting ) ???
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 12:25 pm
Reply with quote

Hi Enrico,

The method that you have suggested can be tried as the last option as there are 30 such tape files for a particular month and I have to extract the 1800 records for 9 months. So, the total number of records increased to 270 in total.

That was the reason I was asking whether we can directly extract the data from the tapes without copying them into DASD.

I thought of a method. In that, I would extract the data from each individual file from tape (if there is any method to do so). After that for the next month, I would proceed to append the data into the same file. Thus this would help me to save one more merge step.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Fri Jul 04, 2008 12:29 pm
Reply with quote

I might be dumb ..
but my suggestion just does that it extracts the "include ..." things from tape to dasd

or am I missing something else icon_biggrin.gif

here is a possible flow...

define an accumulation dataset an write an end of file
for each tape group
.... extract the needed records to

copy the accumulation dataset to a temporary dataset
( I do not like to use as sortout a sortin ! )
sort/merge the extracted records to the accumulation dataset,
cleanup as needed
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 12:35 pm
Reply with quote

hi Gerry,

Sorry for the late response. The Job log and the output message are as under:

Job Log:

Code:

TMS009  IEC501A M 7D3D,W90523,SL,COMP,XXXXXXT1,SORT01.K3709T01,&NAME..SSET2.MITDPFI.DEC2005.CMI
+WER068A XXXXXXT1,K3709T01,SORT01  -OUT OF SEQ SORTIN01 , BLOCK 393,345
IEF450I XXXXXXT1 SORT01 K3709T01 - ABEND=S000 U0016 REASON=00000000  075
        TIME=08.19.21                                       


Message:


Code:


N48FF9T1 SORT01 K3709T01 - COMPLETION CODE - SYSTEM=000 USER=0016 REASON=00000000
  XXXXXX.XXXXXXT1.J0043298.D0000102.?          SYSOUT                   
  XXXXXX.XXXXXXT1.J0043298.D0000103.?          SYSOUT                   
  &NAME..SSET2.MITDPFI.DEC2005.CMI     KEPT                     
  VOL SER NOS= W90161,W90281,W90523,W91164.                             
  &NAME..SSET3.MITDPFI.DEC2005.CMI     KEPT                     
  VOL SER NOS= W90238,W90507,W90642,W90765.                             
  &NAME..SSET6.MITDPFI.DEC2005.CMI     KEPT                     
  VOL SER NOS= W90428,W90606,W90759,W90915.                             
&NAME..CLAIMDEC.OUT           RETAINED,  DDNAME=SORTOUT 
XXXXXX.TEST.BED.PULL.SRUNJCL                 RETAINED,  DDNAME=SYSIN   
STEP/SORT01  /START 2008185.0741                                       
STEP/SORT01  /STOP  2008185.0819 CPU    0MIN 06.53SEC SRB    0MIN 01.11S
**  PRGMNAME    CORU    CORA      CLKTME    3033CPU    CORTME    DSKTME
**  SORT       3096K   6144K        38.0      234.9   11764.9       0.0
 JOB/XXXXXXT1/START 2008185.0741                                       
 JOB/XXXXXXT1/STOP  2008185.0819 CPU    0MIN 06.53SEC SRB    0MIN 01.11S
**  KIND  PR    ABND    AVCR      CLKTME    3033CPU    CORTME    DSKTME
**  8200  00      16   3079K        38.2      241.0   11765.1       0.0
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 12:41 pm
Reply with quote

The error I can see is +WER068A XXXXXXT1,K3709T01,SORT01 -OUT OF SEQ SORTIN01 , BLOCK 393,345


Nothing about E37

Gerry
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Fri Jul 04, 2008 12:41 pm
Reply with quote

Hello,

Quote:
That was the reason I was asking whether we can directly extract the data from the tapes without copying them into DASD.
There is 100% no reason to copy all the data from tape to dasd.

My earlier suggestion of splitting the process nto multiple jobs would be to select the required records from the tape files directly and copy them to multiple dasd files. These could later be combined or left in the separate files and concatenated into the process that needs the selected data.

What you need to do will take some wall time, but should not be a dasd space problem. Again, it would be good to coordinate with your storage management people.
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 12:42 pm
Reply with quote

WER068A OUT OF SEQ SORTINxx[, BLOCK y]

EXPLANATION: A record in the SORTIN data set indicated by xx is
out of sequence according to the FIELDS specification on the MERGE
statement. The number y of the block containing the out-of-sequence
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 12:43 pm
Reply with quote

So what exactly does this mean?
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 12:44 pm
Reply with quote

It means you cannot merge the files


Gerry
Back to top
View user's profile Send private message
swapnadeep.ganguly

Active User


Joined: 21 Mar 2007
Posts: 203
Location: India

PostPosted: Fri Jul 04, 2008 12:46 pm
Reply with quote

So, its final now that I should follow Dick's method to extract the data from the Tape datasets individually and finally merge the output datasets.

Thank you all for your time and knowledge enhancing suggestions.
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1702
Location: Australia

PostPosted: Fri Jul 04, 2008 12:48 pm
Reply with quote

Hi,

if each dataset spans across more than 1 volume ie. multi volume, you can extract off individual tapes.


Gerry
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 -> JCL & VSAM Goto page 1, 2  Next

 


Similar Topics
Topic Forum Replies
No new posts Compare 2 files and retrive records f... DFSORT/ICETOOL 2
No new posts Compare 2 files(F1 & F2) and writ... JCL & VSAM 8
No new posts Write line by line from two files DFSORT/ICETOOL 7
No new posts Compare only first records of the fil... SYNCSORT 7
No new posts Merge two VSAM KSDS files into third ... JCL & VSAM 6
Search our Forums:

Back to Top