Need help with sort/icetool - create header and trailer

In this Mainframe Forum - You can post your queries on DFSORT, ICETOOL , SyncSort & JCL Utilities

Moderators: Frank Yaeger, Moderator Group

Post Reply
hambone99
Member
Posts: 3
Joined: Sat May 14, 2011 12:28 am

Need help with sort/icetool - create header and trailer

Post by hambone99 » Sat May 14, 2011 12:50 am

I have a requirement to create a header and trailer record in a file that has only detail records. The header has some static information and two dates. Date 1 is the beginning date which comes from the first record (position 98 - 107) in the file and the ending date which is in the last record (position 98 - 107) of the file. The trailer record has some static data and a record count of the number of detail records + 2 (includes the header and trailer). Any help would be appreciated.
Thanks
Dave

User avatar
Frank Yaeger
Moderator
Posts: 812
Joined: Sat Feb 18, 2006 5:45 am
Location: San Jose, CA
Contact:

Post by Frank Yaeger » Sat May 14, 2011 1:35 am

Please show an example of the records in your input file (relevant fields only) and what you expect for output. Explain the "rules" for getting from input to output. Give the starting position, length and format of each relevant field. Give the RECFM and LRECL of the input files.

Also, run this job and show the //SYSOUT messages you receive, so we can see which sort product/level you have:

Code: Select all

//S1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD *
RECORD
//SORTOUT DD DUMMY
//SYSIN DD *
   OPTION COPY
/*
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

hambone99
Member
Posts: 3
Joined: Sat May 14, 2011 12:28 am

processing "rules"

Post by hambone99 » Sat May 14, 2011 3:14 am

This is the sort product/level (let me know if you need more info):

ICE000I 1 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R5

The rules are as follows:

1. all records copied "as is" in the same order from input to output (records fixed (FB) length = 225)
2. in the output file create a header (FB) as follows:
position
1 - 10 "HEADER "
11-14 "DEV1"
15-24 is a date which comes from the first record in the file from positions 98-107
25-34 is a date which comes from the last record in the file from positions 98-107
35-38 "QLPF"
39-225 padded with spaces

Sample header:
HEADER DEV11995-01-012011-05-12QLPF

3. Create a Trailer record (FB)

Position
1-10 "TRAILER "
11-19 record count of #records in file including the header and trailer
20-225 padded with spaces

Sample trailer:

TRAILER 020692380
Dave

User avatar
Frank Yaeger
Moderator
Posts: 812
Joined: Sat Feb 18, 2006 5:45 am
Location: San Jose, CA
Contact:

Post by Frank Yaeger » Sat May 14, 2011 5:22 am

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

Code: Select all

//S1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=... input file (FB/225)
//SYM DD DSN=&&S1,UNIT=SYSDA,SPACE=(TRK,(1,1)),DISP=(,PASS)
//SYSIN DD *
  OPTION COPY
  OUTFIL FNAMES=SYM,REMOVECC,NODETAIL,
    BUILD=(80X),
    TRAILER1=('LAST_DATE,''',98,10,'''')
/*
//S2  EXEC  PGM=SORT
//SYSOUT    DD  SYSOUT=*
//SYMNAMES DD DSN=&&S1,DISP=(OLD,PASS)
//SORTIN DD DSN=... input file (FB/225)
//SORTOUT DD DSN=...  output file (FB/225)
//SYSIN    DD    *
 OPTION COPY
 OUTFIL REMOVECC,
   HEADER1=('HEADER',11:'DEV1',15:98,10,
     25:LAST_DATE,35:'QPLF'),
   TRAILER1=('TRAILER',11:COUNT+2=(M11,LENGTH=9))
/*
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

hambone99
Member
Posts: 3
Joined: Sat May 14, 2011 12:28 am

Post by hambone99 » Sat May 14, 2011 9:57 am

The code worked.

Thank you very much :D
Dave

academyindia4

Topic deleted by Admin

Post by academyindia4 » Mon Jan 25, 2016 9:59 pm

<< Content deleted By Admin >>

Post Reply

FREE TUTORIALS

Tutorials
Free tutorials from mainframegurukul
  • JCL Tutorial
    Covers all important JCL concepts.
  • Cobol Tutorial
    This tutorials covers all Cobol Topics from STRING to COMP-3.
  • DB2 Tutorial
    DB2 Tutorial focuses on DB2 COBOL Programming.
  • SORT Tutorial
    This Tutorial covers all important aspects of DFSORT with examples
  • CICS Tutorial
    This CICS tutorial covers CICS concepts and CICS Basics, CICS COBOL Programming.
Interview
Mainframe Interview questions



Other References
Mainframe Tools and others