Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

SYNCSORT - Suppress leading zeros in SEQNUM

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
View previous topic :: :: View next topic  
Author Message
kris_madras
Warnings : 1

New User


Joined: 04 Jul 2005
Posts: 26

PostPosted: Fri Feb 11, 2011 3:15 pm    Post subject: SYNCSORT - Suppress leading zeros in SEQNUM
Reply with quote

Hi,
I used SEQNUM in SYNCSORT to generate sequence numbers in the output file.

Code:
OUTFIL OUTREC=(12:SEQNUM,5,ZD,START=1,INCR=1


output:
00001
00002
00003
00004



The output I am seeing with leading ZEROES. Is it possible to suppress leading zeros?
Back to top
View user's profile Send private message

Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2171
Location: @my desk

PostPosted: Fri Feb 11, 2011 3:34 pm    Post subject:
Reply with quote

Quote:
Is it possible to suppress leading zeros?
Yes. It is.
Back to top
View user's profile Send private message
kris_madras
Warnings : 1

New User


Joined: 04 Jul 2005
Posts: 26

PostPosted: Mon Feb 14, 2011 4:28 pm    Post subject:
Reply with quote

Thanks.. could you post the code here?
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2171
Location: @my desk

PostPosted: Mon Feb 14, 2011 5:04 pm    Post subject:
Reply with quote

Here's one way of modifying the SEQNUM value to have leading spaces.
Code:
//SYSIN    DD  *                                     
  SORT FIELDS=COPY                                   
  OUTFIL OVERLAY=(SEQNUM,5,ZD,01:01,5,ZD,M10,LENGTH=5)
/*             
Back to top
View user's profile Send private message
kris_madras
Warnings : 1

New User


Joined: 04 Jul 2005
Posts: 26

PostPosted: Mon Feb 14, 2011 6:53 pm    Post subject:
Reply with quote

Thanks.. can we use both OUTREC and OVERLAY statements together? I tried but I am getting error. Here is the original control statements.

Code:
  SORT FIELDS=(270,004,CH,A,                                           
               112,004,CH,A)                                           
  SUM FIELDS=NONE                                                       
  OUTFIL OUTREC=(12:SEQNUM,5,ZD,START=1,INCR=1,   SEQUENCE NUMBER       
                 024:270,004,                      T NUMBER           
                 039:112,004,                      D ZONE                     
                 045:088C' ',/),                    '/' PRINTS A NEW LINE         
HEADER1....
HEADER2
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2171
Location: @my desk

PostPosted: Mon Feb 14, 2011 11:50 pm    Post subject:
Reply with quote

Quote:
can we use both OUTREC and OVERLAY statements together?
In a single OUTFIL, I think it is a NO.

AFAIK, the SEQNUM can be generated only as BI,ZD or PD. But you can modify it on your own if it is really required. And the SEQNUM STARTs from 1 and INCRements by 1 by default, so you don't really need the START and INCR subparameters here. I am away from office now and can't run a test. I can show you a possible way of achieving the same which is worth a try.
Code:
  SORT FIELDS=(270,004,CH,A,                                           
               112,004,CH,A)                                           
  SUM FIELDS=NONE       
  OUTREC OVERLAY=(12:SEQNUM,5,ZD,12:12,5,ZD,M10,LENGTH=5)
  OUTFIL OUTREC=(012:12,5,                         SEQUENCE NUMBER       
                 024:270,004,                      T NUMBER           
                 039:112,004,                      D ZONE                     
                 045:088C' ',/),                    '/' PRINTS A NEW LINE 
  ......
  .... rest of your control statements
Back to top
View user's profile Send private message
Frank Yaeger

DFSORT Moderator


Joined: 15 Feb 2005
Posts: 7130
Location: San Jose, CA

PostPosted: Tue Feb 15, 2011 12:37 am    Post subject:
Reply with quote

Quote:
AFAIK, the SEQNUM can be generated only as BI,ZD or PD.


Well, I don't know about Syncsort, but DFSORT also allows FS for SEQNUM which would suppress leading zeros automatically:

Code:

  OUTFIL OUTREC=(12:SEQNUM,5,FS,START=1,INCR=1,...
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2171
Location: @my desk

PostPosted: Tue Feb 15, 2011 9:54 am    Post subject:
Reply with quote

SyncSort_for_zOS_1.3.2_PG wrote:
SEQNUM
Use SEQNUM to create a sequence number field within the output record. The length of the field can be from 1 to 16 bytes and can be represented in either BI, PD, or ZD formats.
DFSORT/ICETOOL Programming Guide wrote:
seqnum
specifies that a sequence number is to appear in the reformatted input record. The sequence numbers are assigned in the order in which the records are received for INREC processing. You can create BI, PD, ZD, CSF, or FS sequence numbers and control their lengths, starting values and increment values
Frank,

I ran a test and found that generating a sequence number in FS format works for my Syncsort version as well. I guess they missed it in their documentation whereas you have mentioned it clearly in the DFSORT manual.

May be Alissa could throw some light on why this is missing in the Syncsort PG 1.3.2.
Back to top
View user's profile Send private message
kris_madras
Warnings : 1

New User


Joined: 04 Jul 2005
Posts: 26

PostPosted: Thu Feb 17, 2011 4:57 pm    Post subject:
Reply with quote

Yes.. it is working for me as well. Thanks a lot for Arun and Frank. Seems Syncsort and DFSORT has many common options icon_smile.gif.
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2171
Location: @my desk

PostPosted: Thu Feb 17, 2011 8:16 pm    Post subject:
Reply with quote

Glad that it worked. Yes, they do have many things in common.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts syncsort: copy lines after the keyword shreya19 SYNCSORT 7 Fri Dec 02, 2016 9:47 am
No new posts Syncsort - Hard coded Value in output PORYES SYNCSORT 1 Thu Nov 03, 2016 9:23 am
No new posts Syncsort - NULL in Integer field chec... nartcr SYNCSORT 4 Thu Oct 06, 2016 6:47 am
No new posts ICETOOL/SYNCSORT - SYSPRINT output nartcr DFSORT/ICETOOL 17 Wed Oct 05, 2016 10:46 pm
No new posts Syncsort version supporting FINDREP c... juares castro SYNCSORT 9 Tue Aug 09, 2016 6:54 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us