Syncsort - scanning a record for a string of 16 digits

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

Moderators: Frank Yaeger, Moderator Group

Post Reply
himtall
Member
Posts: 4
Joined: Wed Aug 03, 2016 11:11 pm

Syncsort - scanning a record for a string of 16 digits

Post by himtall » Thu Aug 04, 2016 12:23 am

Hi,

First time posting. I have searched and searched and cannot figure out a way to scan a record for a string of 16 numerics that may be found at any position in the record. I need to mask the numbers with X's. Can you assist?

Thanks

William Collins
Active Member
Posts: 732
Joined: Thu May 24, 2012 4:07 am

Post by William Collins » Sat Aug 06, 2016 11:50 am

If you want to change all occurences of that value to 16 X's (or anything else) look at using FINDREP.

himtall
Member
Posts: 4
Joined: Wed Aug 03, 2016 11:11 pm

Post by himtall » Tue Nov 01, 2016 7:40 pm

Hi - I thought I'd posted a reply to this but I guess I didn't. Sorry for the late follow-up.... The other issue that I didn't explain is that I won't ever know what the string of 16-digits will be. I might know the first 1 or 2 digits, but for the most part, I'm searching for a string of Any set of 16-digits. I couldn't find any masking or wildcard options.

magesh_j
Member
Posts: 16
Joined: Wed Aug 31, 2016 8:32 am

Post by magesh_j » Thu Nov 17, 2016 10:18 pm

show us with an example to suggest

himtall
Member
Posts: 4
Joined: Wed Aug 03, 2016 11:11 pm

Post by himtall » Thu Nov 17, 2016 10:51 pm

Hi & thanks. I realize an image would probably explain this better but let me try again.

Ex:
Input file Record 1 has AAA1212121212121212BBB in position 46 and I want to change the 16 digit number that starts in position 49 to be 9898989898989898 so the output record will have AAA9898989898989898BBB starting in position 46.

The problem is, this string of numbers could be Any number and it could begin in any position: 49, 1, 82, 745, or anywhere in the record.

1) How do I find an 16-digit number that is 'somewhere' in the record
2) How do I then change that number to be any other value (that remains 16 in length).

PS the new number (98..98 in this case) can be hard-coded, or it can be a string of X's or anything like that. The "TO" number is not my concern. [/url][/list][/list][/code]

magesh_j
Member
Posts: 16
Joined: Wed Aug 31, 2016 8:32 am

Post by magesh_j » Sat Nov 19, 2016 1:27 am

Try this

Code: Select all

//SYSIN DD *
  OPTION COPY
  INREC FINDREP=(IN=C’1212121212121212’,OUT=C’9898989898989898’)
As per dfsort application programing guide
FINDREP is a new option that allows you to do various types of find and replace
operations on your records. FINDREP makes it easy to replace character or
hexadecimal input constants anywhere in your records with character, hexadecimal
or null output constants. For input and output constants of different lengths, bytes
after the replaced constants will be shifted left or right, as appropriate. For
fixed-length records, blanks will be filled in on the right as needed. For
variable-length records, the record length will be changed as needed.
FINDREP can be used in an INREC, OUTREC or OUTFIL statement, or in an
IFTHEN clause, in the same way BUILD and OVERLAY can be used.

But yours is syncsort, you may need to refer your manual for syntax and detail

himtall
Member
Posts: 4
Joined: Wed Aug 03, 2016 11:11 pm

Post by himtall » Sat Nov 19, 2016 1:37 am

I appreciate your time but i'm obviously not explaining my question at all. Please disregard this topic.

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