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


     
 
MAINFRAME - TIP OF THE DAY : programming pearls - The fastest algorithm can frequently be replaced by one that is almost as fast and much easier to understand.

Google
 
Web mainframegurukul.com

Welcome to the mainframegurukul forums.

You are currently viewing our mainframe forums as a guest which gives you limited access to view most discussions, articles. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload your own photos. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact support at admin@mainframegurukul.com


DFSORT Reporting Issue :Detail Line Customization

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


Joined: 25 Oct 2007
Posts: 4

PostPosted: Fri Oct 26, 2007 1:34 pm    Post subject: DFSORT Reporting Issue :Detail Line Customization Reply with quote

Currently, using DFSORT, I am printing a Report.
Input File length = 55

Code:

                  Starting Length Type    Heading
                  Position
Org                   1     2     A
grp           3     3     A     
filler1               6     2     A
ENBR            8     8     A     
NAME                 16     22    A     
date          38     8     A
filler2              46     2     A
Centre          48     5     A     
filler3              53     3     A
**************************************************


The SORT code using DFSORT is as follows:

Code:

*********** Top of Data ***************
 SORT FIELDS=(3,3,CH,A,48,5,CH,A)
 OUTFIL FILES=1,
   OUTREC=(12:3,3,10X,25:48,5,10X,40:8,8,7X,55:16,22,3X,80:38,8,
          132:X),
   SECTIONS=(3,3,SKIP=0L,
   HEADER3=(50:'DISCOUNT CARD AUDIT REPORT',24X,&DATE=(DMY/),13X,
     'PAGE ',&PAGE,
     /,10:'PAYROLL',26:'COST',40:'EMPLOYEE',
      81:'EXPIRY',/,11:'GROUP',25:'CENTRE',41:'NUMBER',64:'NAME',
     82:'DATE'))
********** Bottom of Data *************


I want it to be printed using DFSORT
Can it be done?
_________________
Life's biggest failures happened only because people left just before realizing that they were so close to success.


Last edited by Collona on Tue Oct 30, 2007 2:17 pm; edited 1 time in total
Back to top
View user's profile Send private message

Frank Yaeger
Moderator


Joined: 18 Feb 2006
Posts: 487
Location: San Jose, CA

PostPosted: Sat Oct 27, 2007 1:40 am    Post subject: Reply with quote

You can do that by changing your DFSORT control statements to the following:

Code:

  SORT FIELDS=(3,3,CH,A,48,5,CH,A)                                   
  OUTFIL FILES=1,                                                   
   IFOUTLEN=132,                                                     
   IFTHEN=(WHEN=INIT,                                               
     BUILD=(12:3,3,25:48,5,40:8,8,55:16,22,80:38,8,                 
        133:SEQNUM,8,ZD,RESTART=(3,3))),                             
   IFTHEN=(WHEN=(133,8,ZD,GT,+1),OVERLAY=(12:3X)),                   
   SECTIONS=(3,3,SKIP=0L,                                           
   HEADER3=(50:'DISCOUNT CARD AUDIT REPORT',24X,&DATE=(DMY/),13X,   
     'PAGE ',&PAGE,                                                 
     /,10:'PAYROLL',26:'COST',40:'EMPLOYEE',                         
      81:'EXPIRY',/,11:'GROUP',25:'CENTRE',41:'NUMBER',64:'NAME',   
     82:'DATE'))                                                     

_________________
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/
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Collona
Member


Joined: 25 Oct 2007
Posts: 4

PostPosted: Mon Oct 29, 2007 2:33 pm    Post subject: Reply with quote

Thanks Frank,

This is working fine.
Actually,I had tried using SEQNUM but did not know of how to use RESTART.
Thanks again.

I had another query on the same Report.
The Page Numbers are changing only when 60 line are over and not whenever the Header is being printed.
My requirement is to incrment the page number whenever Header is printed.
Header should be printed whenever Payroll Group changes or Number of lines in Report exceed 60.

I tried using Trailer2 withsame code as Header outside the section and Header3 inside section but its not working.
Can you crack this as well?
_________________
Life's biggest failures happened only because people left just before realizing that they were so close to success.
Back to top
View user's profile Send private message
Frank Yaeger
Moderator


Joined: 18 Feb 2006
Posts: 487
Location: San Jose, CA

PostPosted: Mon Oct 29, 2007 8:08 pm    Post subject: Reply with quote

Please show me an example of your input records and what you want for output, including the page numbers you want.
_________________
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/
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Collona
Member


Joined: 25 Oct 2007
Posts: 4

PostPosted: Mon Oct 29, 2007 9:05 pm    Post subject: Reply with quote

My requirement is to incrment the page number whenever Header is printed.
Header should be printed whenever:
1. Payroll Group changes or
2.Number of entries inside a particular Payroll Group exceeds 20.

Note that in Payroll Grp 'PAY', the header was printed again when Number of entries exceeded 20 in the grp 'PAY'.
Also note that for each new payroll grp, the page number is incremented in the Header.

Also the Page is being printed in the left side in the above Code. It is actually in the right side but is being printed in the left here as margin of this Site-page is not big enough.
_________________
Life's biggest failures happened only because people left just before realizing that they were so close to success.


Last edited by Collona on Tue Oct 30, 2007 2:11 pm; edited 1 time in total
Back to top
View user's profile Send private message
Frank Yaeger
Moderator


Joined: 18 Feb 2006
Posts: 487
Location: San Jose, CA

PostPosted: Mon Oct 29, 2007 9:36 pm    Post subject: Reply with quote

You can use HEADER2 and SECTIONS with SKIP=P to get that. These DFSORT control statements should give you what you want:

Code:

  SORT FIELDS=(3,3,CH,A,48,5,CH,A)
  OUTFIL FILES=1,
   IFOUTLEN=132,
   IFTHEN=(WHEN=INIT,
     BUILD=(12:3,3,25:48,5,40:8,8,55:16,22,80:38,8,
        133:SEQNUM,8,ZD,RESTART=(3,3))),
   IFTHEN=(WHEN=(133,8,ZD,GT,+1),OVERLAY=(12:3X)),
   HEADER2=(50:'DISCOUNT CARD AUDIT REPORT',24X,&DATE=(DMY/),13X,
     'PAGE ',&PAGE,
     /,10:'PAYROLL',26:'COST',40:'EMPLOYEE',
      81:'EXPIRY',/,11:'GROUP',25:'CENTRE',41:'NUMBER',64:'NAME',
     82:'DATE'),
   SECTIONS=(3,3,SKIP=P)

_________________
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/
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Collona
Member


Joined: 25 Oct 2007
Posts: 4

PostPosted: Tue Oct 30, 2007 1:33 pm    Post subject: Reply with quote

Thanks Frank,

This is working fine. Laughing

I guess I could have used DFSORT Reporting Features in a lot of Projects which I coded using COBOL... Confused ..

But, going forward...DFSORT is my best bet for Reports..
_________________
Life's biggest failures happened only because people left just before realizing that they were so close to success.
Back to top
View user's profile Send private message
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

Related topics
 Topics   Replies   Author   Views   Last Post 
No new posts Sort file by groups, keeping only the last group 7 TamiAZ 1070 Fri Oct 02, 2009 11:24 am
TamiAZ View latest post
No new posts What do you accomplish by GROUP BY ... HAVING clause? 1 Krishna 1215 Sun Mar 29, 2009 10:13 pm
Krishna View latest post
No new posts United Health group Interview ? 0 need@help 2548 Fri Mar 06, 2009 12:43 am
need@help View latest post
No new posts can i write a elementary item to group item. 1 mainframe5 1492 Tue Jun 17, 2008 1:47 pm
dbzTHEdinosauer View latest post
No new posts Why is Group move better than INITIALIZE verb? 1 NiceGuy 2314 Mon Nov 19, 2007 6:52 am
DavidatK View latest post
 



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

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