Writing the Definitive Systems Programmer Resume

2019-08-01 Thread Joe Gallaher
Ever feel like your resume goes into a black hole?  I would like to invite 
anyone attending next week's SHARE conference in Pittsburgh to come to my 
session entitled "Writing the Definitive Systems Programmer Resume" (session 
25087, Tuesday, August 6, 2019 at 3:30 PM).  This will be the 13th time I have 
given this presentation at SHARE and it contains a lot of useful information 
and samples for the aspiring resume writer.  Over the last 37 years I have 
written thousands and thousands of mainframe systems resumes.  Here is a link 
to my session:

https://events.share.org/Summer2019/Public/SessionDetails.aspx?FromPage=Sessions.aspx&SessionID=8678

If you cannot attend, feel free to send me an email (or LinkedIn message) and I 
will send you a link to my PowerPoint slides. 

Joe Gallaher
j...@spci.net
323-822-1569 work
323-363-7259 cell 
http://www.SPCI.net
http://www.linkedin.com/in/joegallaher

"You wouldn't hire a COBOL programmer to install your operating system. Why use 
an applications recruiter for your systems management needs?"

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: IBM Destination z - Of Elephants and Mainframes

2019-08-01 Thread Seymour J Metz
There was no NASA until 1958, although there was a National Advisory Committee 
for Aeronautics.

But I doubt that such systems as SAGE and BUIC were written in machine language.

LISP and Fortran cam later, but IPL was available in 1956.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List  on behalf of Joe 
Monk 
Sent: Thursday, August 1, 2019 6:34 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: IBM Destination z - Of Elephants and Mainframes

I can pretty much guarantee that NASA wasnt writing programs in the late
1950's in machine language...

FORTRAN AND LISP were 704 languages.

Joe



On Thu, Aug 1, 2019 at 5:54 PM Seymour J Metz  wrote:

> Re 1957: with a SOAP II manual dated February 1957, how likely is it that
> the original SOAP was 1957?
>
> As for COBOL, the report of the CODASYL short range committee didn't come
> out until 1960, so no reasonable person can fault COBOL for not being
> available until 1960. Predecessors COMTRAN, FACT and FLOW-MATIC were
> available earlier.
>
> Was there a 702 AUTOCODER, or was 705 AUTOCODER the first?
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Gabe Goldberg 
> Sent: Thursday, August 1, 2019 4:44 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: IBM Destination z - Of Elephants and Mainframes
>
> Think back… think way back, possibly to before you were born. Think of
> the reasons why SHARE was founded in 1955, and the main activities of
> SHARE. Once upon a time, when electronic computing technology was still
> being figured out, each new machine was so different from its
> predecessors that it was necessary to rewrite a whole new set of
> utilities and drivers and applications for it. Even Assembly language
> wasn’t available until 1957 (and the first COBOL compiler didn’t come
> out until 1960) so most of this stuff had to be manually entered in
> machine language.
>
>
> http://secure-web.cisco.com/1sRflfpe_3MG-JJUXevBrHIvSyIEW9PsN2rYTWuTGqwBOAr-zFGHfNpUHvitRCLM_aCV9TSaREWmqUw_dpuFq2vpu-8gKxXZHSZE35BOXEQXdrprFGNKVESoQ0I00X03S9o8Yusb57C1545gU063YaXNTiyDJ_qwTiOHbvrZn-lL_8pKpLLxQ7rX9tBC3UCMgjbBqZgDI64oxgsleEgXwy84H-vMG9T4Es-zfkq9MbQLpd6YDZmf3loSs5fASiqKFwuWHZRV7sD2eQ22H8pR-Ag71cg41mlrqsQybgDR1EIh3B1Io7vZRxBNQ6JiKStnS86x_3hPa3RKCzsKv2h_CAHIQXoNbB3wAkfAAbD4VaG9Eu0ZgA0VouB7UkXZ5MUtGkMp4ulNnDWH6KEQKxSy9of51-PV2ok86Ql0JEK7d4DBnKdPKgo383q0YKCQ9xLYq/http%3A%2F%2Fdestinationz.org%2FMainframe-Solution%2FTrends%2Felephants-and-mainframes
>
> Um, no. ACM SIGPLAN History of Programming Languages Conference 1978
> article on FORTRAN says:
>
> Page 166 1.3 Programming Systems in 1954
>
> Most "automatic programming" systems  were either assembly programs, or
> subroutine-fixing programs, or, most popularly, interpretive systems to
> provide floating point and indexing operations.
>
> ---
>
> That's far beyond machine language three years before article claims
> anything more advanced than that was used.
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: IBM Destination z - Of Elephants and Mainframes

2019-08-01 Thread Joe Monk
I can pretty much guarantee that NASA wasnt writing programs in the late
1950's in machine language...

FORTRAN AND LISP were 704 languages.

Joe



On Thu, Aug 1, 2019 at 5:54 PM Seymour J Metz  wrote:

> Re 1957: with a SOAP II manual dated February 1957, how likely is it that
> the original SOAP was 1957?
>
> As for COBOL, the report of the CODASYL short range committee didn't come
> out until 1960, so no reasonable person can fault COBOL for not being
> available until 1960. Predecessors COMTRAN, FACT and FLOW-MATIC were
> available earlier.
>
> Was there a 702 AUTOCODER, or was 705 AUTOCODER the first?
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Gabe Goldberg 
> Sent: Thursday, August 1, 2019 4:44 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: IBM Destination z - Of Elephants and Mainframes
>
> Think back… think way back, possibly to before you were born. Think of
> the reasons why SHARE was founded in 1955, and the main activities of
> SHARE. Once upon a time, when electronic computing technology was still
> being figured out, each new machine was so different from its
> predecessors that it was necessary to rewrite a whole new set of
> utilities and drivers and applications for it. Even Assembly language
> wasn’t available until 1957 (and the first COBOL compiler didn’t come
> out until 1960) so most of this stuff had to be manually entered in
> machine language.
>
>
> http://secure-web.cisco.com/1sRflfpe_3MG-JJUXevBrHIvSyIEW9PsN2rYTWuTGqwBOAr-zFGHfNpUHvitRCLM_aCV9TSaREWmqUw_dpuFq2vpu-8gKxXZHSZE35BOXEQXdrprFGNKVESoQ0I00X03S9o8Yusb57C1545gU063YaXNTiyDJ_qwTiOHbvrZn-lL_8pKpLLxQ7rX9tBC3UCMgjbBqZgDI64oxgsleEgXwy84H-vMG9T4Es-zfkq9MbQLpd6YDZmf3loSs5fASiqKFwuWHZRV7sD2eQ22H8pR-Ag71cg41mlrqsQybgDR1EIh3B1Io7vZRxBNQ6JiKStnS86x_3hPa3RKCzsKv2h_CAHIQXoNbB3wAkfAAbD4VaG9Eu0ZgA0VouB7UkXZ5MUtGkMp4ulNnDWH6KEQKxSy9of51-PV2ok86Ql0JEK7d4DBnKdPKgo383q0YKCQ9xLYq/http%3A%2F%2Fdestinationz.org%2FMainframe-Solution%2FTrends%2Felephants-and-mainframes
>
> Um, no. ACM SIGPLAN History of Programming Languages Conference 1978
> article on FORTRAN says:
>
> Page 166 1.3 Programming Systems in 1954
>
> Most "automatic programming" systems  were either assembly programs, or
> subroutine-fixing programs, or, most popularly, interpretive systems to
> provide floating point and indexing operations.
>
> ---
>
> That's far beyond machine language three years before article claims
> anything more advanced than that was used.
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Capital One Data Breach-100 Million Customers affected

2019-08-01 Thread Edward Finnell
Yeah, I'm missing a few key points. How is this PCI compliant? So the firewall 
was misconfigured, but how did they get access to my_biga$$_masterfile, 
my_biga$$_requests, and my_biga$$_revocations with no encryption? Inquiring 
minds want to know-hackers long gone probably more than one.

In a message dated 8/1/2019 5:10:39 PM Central Standard Time, 
jesse1.robin...@sce.com writes:
better care of your precious data than you can. I sense Death of a Salesman...

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: IBM Destination z - Of Elephants and Mainframes

2019-08-01 Thread Seymour J Metz
Re 1957: with a SOAP II manual dated February 1957, how likely is it that the 
original SOAP was 1957?

As for COBOL, the report of the CODASYL short range committee didn't come out 
until 1960, so no reasonable person can fault COBOL for not being available 
until 1960. Predecessors COMTRAN, FACT and FLOW-MATIC were available earlier.

Was there a 702 AUTOCODER, or was 705 AUTOCODER the first?


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3


From: IBM Mainframe Discussion List  on behalf of 
Gabe Goldberg 
Sent: Thursday, August 1, 2019 4:44 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: IBM Destination z - Of Elephants and Mainframes

Think back… think way back, possibly to before you were born. Think of
the reasons why SHARE was founded in 1955, and the main activities of
SHARE. Once upon a time, when electronic computing technology was still
being figured out, each new machine was so different from its
predecessors that it was necessary to rewrite a whole new set of
utilities and drivers and applications for it. Even Assembly language
wasn’t available until 1957 (and the first COBOL compiler didn’t come
out until 1960) so most of this stuff had to be manually entered in
machine language.

http://secure-web.cisco.com/1sRflfpe_3MG-JJUXevBrHIvSyIEW9PsN2rYTWuTGqwBOAr-zFGHfNpUHvitRCLM_aCV9TSaREWmqUw_dpuFq2vpu-8gKxXZHSZE35BOXEQXdrprFGNKVESoQ0I00X03S9o8Yusb57C1545gU063YaXNTiyDJ_qwTiOHbvrZn-lL_8pKpLLxQ7rX9tBC3UCMgjbBqZgDI64oxgsleEgXwy84H-vMG9T4Es-zfkq9MbQLpd6YDZmf3loSs5fASiqKFwuWHZRV7sD2eQ22H8pR-Ag71cg41mlrqsQybgDR1EIh3B1Io7vZRxBNQ6JiKStnS86x_3hPa3RKCzsKv2h_CAHIQXoNbB3wAkfAAbD4VaG9Eu0ZgA0VouB7UkXZ5MUtGkMp4ulNnDWH6KEQKxSy9of51-PV2ok86Ql0JEK7d4DBnKdPKgo383q0YKCQ9xLYq/http%3A%2F%2Fdestinationz.org%2FMainframe-Solution%2FTrends%2Felephants-and-mainframes

Um, no. ACM SIGPLAN History of Programming Languages Conference 1978
article on FORTRAN says:

Page 166 1.3 Programming Systems in 1954

Most "automatic programming" systems  were either assembly programs, or
subroutine-fixing programs, or, most popularly, interpretive systems to
provide floating point and indexing operations.

---

That's far beyond machine language three years before article claims
anything more advanced than that was used.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: IBM Destination z - Of Elephants and Mainframes

2019-08-01 Thread Reg Harbeck
Thank you, Gabe. I'm honoured that you read my writing so closely, and I take 
your correction seriously. I'll be more careful how I phrase such things in 
future articles.

FWIW, I am aware that Fortran and other pre-COBOL languages already existed, so 
perhaps I should have said "much of this stuff" instead.

(And to those who have made other suggestions on IBM-MAIN that I should have 
caught, but missed, in the past, my apologies: still getting into good habits 
of keeping up with this important part of the mainframe ecosystem.)

Reg Harbeck
+1.403.605.7986

P.S. Looking forward to seeing many of you in Pittsburgh next week.

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Gabe Goldberg
Sent: August 1, 2019 13:45
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: IBM Destination z - Of Elephants and Mainframes

Think back… think way back, possibly to before you were born. Think of the 
reasons why SHARE was founded in 1955, and the main activities of SHARE. Once 
upon a time, when electronic computing technology was still being figured out, 
each new machine was so different from its predecessors that it was necessary 
to rewrite a whole new set of utilities and drivers and applications for it. 
Even Assembly language wasn’t available until 1957 (and the first COBOL 
compiler didn’t come out until 1960) so most of this stuff had to be manually 
entered in machine language.

http://destinationz.org/Mainframe-Solution/Trends/elephants-and-mainframes

Um, no. ACM SIGPLAN History of Programming Languages Conference 1978 article on 
FORTRAN says:

Page 166 1.3 Programming Systems in 1954

Most "automatic programming" systems  were either assembly programs, or 
subroutine-fixing programs, or, most popularly, interpretive systems to provide 
floating point and indexing operations.

---

That's far beyond machine language three years before article claims anything 
more advanced than that was used.

--
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


IBM Destination z - Of Elephants and Mainframes

2019-08-01 Thread Gabe Goldberg
Think back… think way back, possibly to before you were born. Think of 
the reasons why SHARE was founded in 1955, and the main activities of 
SHARE. Once upon a time, when electronic computing technology was still 
being figured out, each new machine was so different from its 
predecessors that it was necessary to rewrite a whole new set of 
utilities and drivers and applications for it. Even Assembly language 
wasn’t available until 1957 (and the first COBOL compiler didn’t come 
out until 1960) so most of this stuff had to be manually entered in 
machine language.


http://destinationz.org/Mainframe-Solution/Trends/elephants-and-mainframes

Um, no. ACM SIGPLAN History of Programming Languages Conference 1978 
article on FORTRAN says:


Page 166 1.3 Programming Systems in 1954

Most "automatic programming" systems  were either assembly programs, or 
subroutine-fixing programs, or, most popularly, interpretive systems to 
provide floating point and indexing operations.


---

That's far beyond machine language three years before article claims 
anything more advanced than that was used.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: SMPE usermod to add .jar files to JAVA

2019-08-01 Thread Paul Gilmartin
On Wed, 31 Jul 2019 19:10:49 +, Jousma, David wrote:

>Well,  in the end, it may not have been so hard to accomplish.   I have to run 
>compares against the original and SMPE installed jar files, but the gist of it 
>is
>
>++ JAR(MAJV831P)  /* $java_home/lib/ext/PKKeyM.jar */   
>   DISTLIB (AAJVHFS)
>   SYSLIB  (SAJV80M)
>   PARM (PATHMODE(0,6,4,4)) 
>   LINK ('../lib/ext/PKKeyM.jar').  
>
>Followed by inline by the output of GIMDTS of the transformed jar file read 
>from PATH seemed to work.
>
I'm curious about how comprehensive SMPE's support of zFS objects is.
For example, does the GIMDTS SYSUT2 reflect the values of extended
(admittedly non-POSIX) attributes such as CCSID and FILEFMT, and are
the restored by the RECEIVE; APPLY sequence?  It's a shame if these
valuable (at least to z/OS) metadata are not supported.

ISPF, for example, has good support for combinations such as CCSID=UTF-8
and FILEFMT=RECORD.  These matter in text files; less in .jar.

Is there an extended compare utility that compares metadata also?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: dfsort: Sort job to get price variance records

2019-08-01 Thread John McKown
On Thu, Aug 1, 2019 at 11:20 AM retired mainframer 
wrote:

> Why are two records desired for 96.12 but only one for 95.12?
>

Because there are two different "keys" for the 95.12 There is

50338 789997580026.00 36052910DF

and

50318 789997580026.00 36052910DF

In the second "key", the price in all three records is the same: 95.12. So
there is no variance in the price. There are just duplicate records.



>
> > -Original Message-
> > From: IBM Mainframe Discussion List  On
> > Behalf Of Ron Thomas
> > Sent: Thursday, August 01, 2019 8:03 AM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: dfsort: Sort job to get price variance records
> >
> > Ok Elardus.
> >
> > I will paste the requirement and output files  generated again
> >
> > We have a FB File LRECL = 80 bytes and here below is the layout.
> Buy_price is at
> > position 65 of length 10 bytes . We need to pull those item nbrs
> > which has same UPC,Vendor nbr ,State Code but there is price difference.
> Could
> > anyone let me know how this to be done using dfsort.
> >
> > Input file :-
> >
> > ITEM NUMBER   UPC_NBR   VendorNbr STATE_CODE
> >   BUY_PRICE
> > 50338 789997580026.00 36052910DF  96.12
> > 50338 789997580026.00 36052910DF  96.12
> > 50338 789997580026.00 36052910DF  95.12
> > 50318 789997580026.00 36052910DF  95.12
> > 50318 789997580026.00 36052911DF  95.12
> > 50318 789997580026.00 36052911DF  95.12
> >
> > Desired o/p
> >
> > 50338 789997580026.00 36052910DF  96.12
> > 50338 789997580026.00 36052910DF  96.12
> > 50338 789997580026.00 36052910DF  95.12
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread John McKown
On Thu, Aug 1, 2019 at 8:22 AM Cameron Conacher  wrote:

> Hello to the DFSORT folks.
> I have a file of data containing extracts from some JCL.
> Specifically, I am looking for all values of DATACLAS.
> This all relates back to Pervasive Encryption. I just want a quick report
> of the DATACLAS values in use today, as well as the counts for each
> DATACLAS item I find.
>
> I ran a quick compare to get a report from our JCL Library, and now I am
> building a SORT to look at the variable length input file data.
> I can use 'INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=') to select a subset of
> records from the original compare report.
> I could take this file and play with it in ISPF EDIT to pull out the eight
> bytes following 'DATACLAS='.
> However, I am wondering if I can do this in DFSORT.
> So, if I have
>   DATACLAS=FRED,
> I would want to extract and summarize FRED and if I have
>DATACLAS=POTATO I would want to extract and summarize POTATO
> I guess the question is how can I extract characters from the input records
> that appear following the SubString match?
>
> Thanks
>


Presenting an alternative route: The DATACLASS for a catalogued dataset is
in the catalog. Maybe you could use some sort of catalog product to scan
all your catalogs and extract the DSN and DATACLASS.

-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread Sri h Kolusu
> Given that the OP said this was JCL, the DATACLAS= could be terminated
with
> a BLANK or a COMMA. So I think he needs three ENDBEFR= statements testing
> for C' ' C',' and C')'


Thanks John.  I missed that.

Cameron,

Here are the updated control cards

//SYSINDD *
  INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=',OR,
5,70,SS,EQ,C'DATACLAS(')

  INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',
STARTAFT=C'DATACLAS(',
ENDBEFR=C')',ENDBEFR=C',',
ENDBEFR=C' ',FIXLEN=8)),
  BUILD=(1,4,%01)

  SORT FIELDS=(5,8,CH,A)

  OUTFIL REMOVECC,NODETAIL,VTOF,BUILD=(80X),
  HEADER2=('DATACLASS  COUNT',/,
   '-   '),
  SECTIONS=(5,8,
  TRAILER3=(5,8,4X,
COUNT=(M10,LENGTH=8)))
/*


Thanks,
Kolusu
DFSORT Development
IBM Corporation

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread John McKown
On Thu, Aug 1, 2019 at 11:17 AM Sri h Kolusu  wrote:

> > Here is what I ended up with using (retyped from my ISPF screen) .
>
> Cameron,
>
> You can optimize your control cards, You can have multiple STARTAFT and
> ENDBEFR parms on PARSE.
>
> Use the following Control cards which will give you the desired results
>
> //SYSINDD *
>   OPTION VLSCMP
>   INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=',OR,
> 5,70,SS,EQ,C'DATACLAS(')
>
>   INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',
> STARTAFT=C'DATACLAS(',
> ENDBEFR=C')',
> ENDBEFR=C' ',FIXLEN=8)),
>

Given that the OP said this was JCL, the DATACLAS= could be terminated with
a BLANK or a COMMA. So I think he needs three ENDBEFR= statements testing
for C' ' C',' and C')'

  BUILD=(1,4,%01)
>
>   SORT FIELDS=(5,8,CH,A)
>
>   OUTFIL REMOVECC,NODETAIL,VTOF,BUILD=(80X),
>   HEADER2=('DATACLASS  COUNT',/,
>'-   '),
>   SECTIONS=(5,8,
>   TRAILER3=(5,8,4X,
> COUNT=(M10,LENGTH=8)))
> /*
>
> Thanks,
> Kolusu
> DFSORT Development
> IBM Corporation
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: dfsort: Sort job to get price variance records

2019-08-01 Thread retired mainframer
Why are two records desired for 96.12 but only one for 95.12?

> -Original Message-
> From: IBM Mainframe Discussion List  On
> Behalf Of Ron Thomas
> Sent: Thursday, August 01, 2019 8:03 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: dfsort: Sort job to get price variance records
> 
> Ok Elardus.
> 
> I will paste the requirement and output files  generated again
> 
> We have a FB File LRECL = 80 bytes and here below is the layout. Buy_price is 
> at
> position 65 of length 10 bytes . We need to pull those item nbrs
> which has same UPC,Vendor nbr ,State Code but there is price difference. Could
> anyone let me know how this to be done using dfsort.
> 
> Input file :-
> 
> ITEM NUMBER   UPC_NBR   VendorNbr STATE_CODE
>   BUY_PRICE
> 50338 789997580026.00 36052910DF  96.12
> 50338 789997580026.00 36052910DF  96.12
> 50338 789997580026.00 36052910DF  95.12
> 50318 789997580026.00 36052910DF  95.12
> 50318 789997580026.00 36052911DF  95.12
> 50318 789997580026.00 36052911DF  95.12
> 
> Desired o/p
> 
> 50338 789997580026.00 36052910DF  96.12
> 50338 789997580026.00 36052910DF  96.12
> 50338 789997580026.00 36052910DF  95.12

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread Sri h Kolusu
> Here is what I ended up with using (retyped from my ISPF screen) .

Cameron,

You can optimize your control cards, You can have multiple STARTAFT and
ENDBEFR parms on PARSE.

Use the following Control cards which will give you the desired results

//SYSINDD *
  OPTION VLSCMP
  INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=',OR,
5,70,SS,EQ,C'DATACLAS(')

  INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',
STARTAFT=C'DATACLAS(',
ENDBEFR=C')',
ENDBEFR=C' ',FIXLEN=8)),
  BUILD=(1,4,%01)

  SORT FIELDS=(5,8,CH,A)

  OUTFIL REMOVECC,NODETAIL,VTOF,BUILD=(80X),
  HEADER2=('DATACLASS  COUNT',/,
   '-   '),
  SECTIONS=(5,8,
  TRAILER3=(5,8,4X,
COUNT=(M10,LENGTH=8)))
/*

Thanks,
Kolusu
DFSORT Development
IBM Corporation

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread Cameron Conacher
Oh very nice.
I like the report!! Just never thought about it.

Amazing.

Thank you!

On Thu, Aug 1, 2019 at 11:26 AM Sri h Kolusu  wrote:

> > I would want to extract and summarize FRED and if I have
> >DATACLAS=POTATO I would want to extract and summarize POTATO
>
>
> Cameron Conacher,
>
> Use the following DFSORT JCL which will give you the desired results. I
> coded the JCL to handle if your input is VB or FB based on the INCLUDE cond
> you showed.
>
> //STEP0100 EXEC PGM=SORT
> //SYSOUT   DD SYSOUT=*
> //SORTIN   DD *
> SOME HEADER - NOT INCLUDED
> DATACLAS=POTATO  - NEEDED
> DATACLAS=FRED
>   DATACLAS=POTATO  - NEEDED
>DATACLAS=POTATO  - NEEDED
> SOME OTHER RECORD - NOT INCLUDED
>   DATACLAS=CONACHER
> DATACLAS=CONACHER
>DATACLAS=CONACHER
> //SORTOUT  DD SYSOUT=*
> //SYSINDD *
>   INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=')
>
>   INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',
> ENDBEFR=C' ',FIXLEN=8)),
>   BUILD=(1,4,%01)
>
>   SORT FIELDS=(5,8,CH,A)
>
>   OUTFIL REMOVECC,NODETAIL,VTOF,BUILD=(80X),
>   HEADER2=('DATACLASS  COUNT',/,
>'-   '),
>   SECTIONS=(5,8,
>   TRAILER3=(5,8,4X,
> COUNT=(M10,LENGTH=8)))
> /*
>
> The output from this job is
>
> DATACLASS  COUNT
> -   
> CONACHER   3
> FRED   1
> POTATO 3
>
>
> Further if you have any questions please let me know
>
> Thanks,
> Kolusu
> DFSORT Development
> IBM Corporation
>
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread Cameron Conacher
Thanks everyone,
I found that sometime I see DATACLAS=value and sometimes I would see
DATACLAS(value) so I made a couple of changes to allow VB input and FB
output, as well as choosing the DATACLAS format.

Here is what I ended up with using (retyped from my ISPF screen) .

OPTION VLSCMP
RECORD TYPE=V
INCLUDE COND=(5,70,SS,EQ,C'DATACLAS')

INREC IFOUTLEN=21,
   IFTHEN=(WHEN=(5,70,SS,EQ,C'DATACLAS=',
   PARSE=(%01=(ENDBEFR=C'DATACLAS=',FIXLEN=8),
   %02=(ENDBEFR=C',',FIXLEN=8)),
   BUILD=(1,4,5:%02,13:X'001C')),
   IFTHEN=(WHEN=(5,70,SS,EQ,C'DATACLAS(',
   PARSE=(%03=(ENDBEFR=C'DATACLAS(',FIXLEN=8),
   %04=(ENDBEFR=C')',FIXLEN=8)),
   BUILD=(1,4,5:%04,13:X'001C'))

SORT FIELDS=(5,8,CH,A)
SUM FIELDS=(13,8,PD)

OUTFIL FNAMES=SORTOF01,CONVERT,OUTREC=(5,16)

END




On Thu, Aug 1, 2019 at 10:27 AM John McKown 
wrote:

> On Thu, Aug 1, 2019 at 8:43 AM John McKown 
> wrote:
>
> > On Thu, Aug 1, 2019 at 8:22 AM Cameron Conacher 
> > wrote:
> >
> >> Hello to the DFSORT folks.
> >> I have a file of data containing extracts from some JCL.
> >> Specifically, I am looking for all values of DATACLAS.
> >> This all relates back to Pervasive Encryption. I just want a quick
> report
> >> of the DATACLAS values in use today, as well as the counts for each
> >> DATACLAS item I find.
> >>
> >> I ran a quick compare to get a report from our JCL Library, and now I am
> >> building a SORT to look at the variable length input file data.
> >> I can use 'INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=') to select a subset of
> >> records from the original compare report.
> >> I could take this file and play with it in ISPF EDIT to pull out the
> eight
> >> bytes following 'DATACLAS='.
> >> However, I am wondering if I can do this in DFSORT.
> >> So, if I have
> >>   DATACLAS=FRED,
> >> I would want to extract and summarize FRED and if I have
> >>DATACLAS=POTATO I would want to extract and summarize POTATO
> >> I guess the question is how can I extract characters from the input
> >> records
> >> that appear following the SubString match?
> >>
> >> Thanks
> >>
> >>
> >
> > I am not a DFSORT expert. But I think that you'd be better off trying to
> > use PARSE.
> >
> https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.iceg200/rrwvf.htm
> >
> > OUTREC PARSE=(%01=(STARTAFT=C'DATACLAS=',ENDBEFR=C',')),
> >   BUILD=(%01)
> >
> >
> > I didn't include all the other SORT control cards.
> >
>
> Tough morning. Perhaps this would be better:
>
>   INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=')
>   INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',ENDBEFR=C',')),
>  BUILD=(%01,9:C' ')
>   SORT FIELDS=(1,8,CH,A)
>   SUM FIELDS=NONE
>
>
> The only thing which concerns me is whether the BUILD= is correct to make a
> fixed length output record.
>
>
>
>
>
> >
> > --
> > A sine curve goes off to infinity, or at least the end of the blackboard.
> > -- Prof. Steiner
> >
> > Maranatha! <><
> > John McKown
> >
>
>
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
>
> Maranatha! <><
> John McKown
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Sort job to get price variance records

2019-08-01 Thread Ron Thomas
Thanks a lot Kolusu.. You are amazing to say the least !!!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Sort job to get price variance records

2019-08-01 Thread Sri h Kolusu
>>I am getting the o/p as expected , but not sure whether what i have done
is completely correct . Could you please check and let me know if the above
needs correction ?

Ron,

You are NOT getting the o/p as expected. You shouldn't be writing the
50318 789997580026.00 36052911 DF  record as it does NOT have any
record with a price difference. You simply did not follow the directions
that I gave.

STEP 1 should be writing 2 files, but you only wrote 1 file and you added
your own logic of counts. Not sure as to why you need the counts.
Your Price starts at 65 and not 64.  I accidentally mentioned 64 and you
the owner of the data should be able to correct it to the right positions.

Since you had at least put in a effort and  tried to code the job based on
the directions, I will show you the optimized control cards. (please don't
expect it all the time)

//STEP0100 EXEC PGM=SORT
//SYSOUT   DD SYSOUT=*
//SORTIN   DD *
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052911 DF   95.12
50318 789997580026.00 36052911 DF   95.12
//ORIG DD DSN=&&INA,DISP=(,PASS),SPACE=(CYL,(1,1),RLSE)
//PULL DD DSN=&&INB,DISP=(,PASS),SPACE=(CYL,(1,1),RLSE)
//SYSINDD *
  SORT FIELDS=(1,37,CH,A)

  OUTREC IFTHEN=(WHEN=INIT,OVERLAY=(81:C'0')),
IFTHEN=(WHEN=GROUP,KEYBEGIN=(1,37),PUSH=(81:65,10)),
IFTHEN=(WHEN=(65,10,CH,NE,81,10,CH),OVERLAY=(92:C'P'))

  OUTFIL FNAMES=ORIG,BUILD=(1,80)

  OUTFIL FNAMES=PULL,BUILD=(80X),
 REMOVECC,NODETAIL,
 INCLUDE=(92,1,CH,EQ,C'P'),
  SECTIONS=(1,37,TRAILER3=(1,37))
/*
//STEP0200 EXEC PGM=SORT
//SYSOUT   DD SYSOUT=*
//INA  DD DSN=&&INA,DISP=(OLD,DELETE)
//INB  DD DSN=&&INB,DISP=(OLD,DELETE)
//SORTOUT  DD SYSOUT=*
//SYSINDD *
  OPTION COPY
  JOINKEYS F1=INA,FIELDS=(1,37,A),SORTED,NOSEQCK
  JOINKEYS F2=INB,FIELDS=(1,37,A),SORTED,NOSEQCK
  REFORMAT FIELDS=(F1:1,80)
/*


The output from this job is

50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12


Thanks,
Kolusu
DFSORT Development
IBM Corporation

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread Sri h Kolusu
> I would want to extract and summarize FRED and if I have
>DATACLAS=POTATO I would want to extract and summarize POTATO


Cameron Conacher,

Use the following DFSORT JCL which will give you the desired results. I
coded the JCL to handle if your input is VB or FB based on the INCLUDE cond
you showed.

//STEP0100 EXEC PGM=SORT
//SYSOUT   DD SYSOUT=*
//SORTIN   DD *
SOME HEADER - NOT INCLUDED
DATACLAS=POTATO  - NEEDED
DATACLAS=FRED
  DATACLAS=POTATO  - NEEDED
   DATACLAS=POTATO  - NEEDED
SOME OTHER RECORD - NOT INCLUDED
  DATACLAS=CONACHER
DATACLAS=CONACHER
   DATACLAS=CONACHER
//SORTOUT  DD SYSOUT=*
//SYSINDD *
  INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=')

  INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',
ENDBEFR=C' ',FIXLEN=8)),
  BUILD=(1,4,%01)

  SORT FIELDS=(5,8,CH,A)

  OUTFIL REMOVECC,NODETAIL,VTOF,BUILD=(80X),
  HEADER2=('DATACLASS  COUNT',/,
   '-   '),
  SECTIONS=(5,8,
  TRAILER3=(5,8,4X,
COUNT=(M10,LENGTH=8)))
/*

The output from this job is

DATACLASS  COUNT
-   
CONACHER   3
FRED   1
POTATO 3


Further if you have any questions please let me know

Thanks,
Kolusu
DFSORT Development
IBM Corporation


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: dfsort: Sort job to get price variance records

2019-08-01 Thread Ron Thomas
Ok Elardus. 

I will paste the requirement and output files  generated again 

We have a FB File LRECL = 80 bytes and here below is the layout. Buy_price is 
at position 65 of length 10 bytes . We need to pull those item nbrs
which has same UPC,Vendor nbr ,State Code but there is price difference. Could 
anyone let me know how this to be done using dfsort. 

Input file :-

ITEM NUMBER UPC_NBR   VendorNbr STATE_CODE  BUY_PRICE
50338   789997580026.00 36052910DF  96.12
50338   789997580026.00 36052910DF  96.12
50338   789997580026.00 36052910DF  95.12
50318   789997580026.00 36052910DF  95.12
50318   789997580026.00 36052911DF  95.12
50318   789997580026.00 36052911DF  95.12

Desired o/p

50338   789997580026.00 36052910DF  96.12
50338   789997580026.00 36052910DF  96.12
50338   789997580026.00 36052910DF  95.12


Code created: - 

//STEP03   EXEC SORT
//SORTIN   DD *
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052911 DF   95.12
50318 789997580026.00 36052911 DF   95.12
//SORTOUT  DD DSN=T01.RXVD.PULL,
//SPACE=(CYL,(50,50),RLSE),VOL=(,,,99),
//DISP=(NEW,CATLG,DELETE)
//SYSINDD *
 SORT FIELDS=(1,37,CH,A)
 OUTREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(1,37),PUSH=(81:65,10)),
IFTHEN=(WHEN=(64,10,CH,NE,81,10,CH),OVERLAY=(92:C'P'))
 OUTFIL FNAMES=SORTOUT,REMOVECC,NODETAIL,
 INCLUDE=(92,1,CH,EQ,C'P'),
 SECTIONS=(1,64,TRAILER3=(1,64,COUNT=(EDIT=())),65,10)
/*

output file  Generated -

50318 789997580026.00 36052910 DF  1
50318 789997580026.00 36052911 DF  2
50338 789997580026.00 36052910 DF  3

I am not sure whether this o/p is correct .  

Also for the Joinkeys . This below is what i have coded

//STEP01   EXEC SORT
//SYSOUT   DD SYSOUT=*
// DD SYSOUT=*
//BOTH DD DD SYSOUT=*
//SORTJNF1 DD *
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052911 DF   95.12
50318 789997580026.00 36052911 DF   95.12
//SORTJNF2 DD DSN=T01.RXVD.PULL,DISP=SHR--> O/p 
from the above step
//SYSINDD *
 JOINKEYS FILES=F1,FIELDS=(1,37,A),SORTED,NOSEQCK
 JOINKEYS FILES=F2,FIELDS=(1,37,A),SORTED,NOSEQCK
 REFORMAT FIELDS=(F1:01,80,F2:01,92,?)
 OPTION COPY
 JOIN UNPAIRED,F1,F2
 OUTFIL FNAMES=BOTH,
 INCLUDE=(173,1,CH,EQ,C'B'),BUILD=(1,80)
/*


output file  generated

50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12

The above o/p generated based on the sample file is correct, but I am not  sure 
whether the summarization done in the first step  is correct.


Regards
Ron T

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread John McKown
On Thu, Aug 1, 2019 at 8:43 AM John McKown 
wrote:

> On Thu, Aug 1, 2019 at 8:22 AM Cameron Conacher 
> wrote:
>
>> Hello to the DFSORT folks.
>> I have a file of data containing extracts from some JCL.
>> Specifically, I am looking for all values of DATACLAS.
>> This all relates back to Pervasive Encryption. I just want a quick report
>> of the DATACLAS values in use today, as well as the counts for each
>> DATACLAS item I find.
>>
>> I ran a quick compare to get a report from our JCL Library, and now I am
>> building a SORT to look at the variable length input file data.
>> I can use 'INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=') to select a subset of
>> records from the original compare report.
>> I could take this file and play with it in ISPF EDIT to pull out the eight
>> bytes following 'DATACLAS='.
>> However, I am wondering if I can do this in DFSORT.
>> So, if I have
>>   DATACLAS=FRED,
>> I would want to extract and summarize FRED and if I have
>>DATACLAS=POTATO I would want to extract and summarize POTATO
>> I guess the question is how can I extract characters from the input
>> records
>> that appear following the SubString match?
>>
>> Thanks
>>
>>
>
> I am not a DFSORT expert. But I think that you'd be better off trying to
> use PARSE.
> https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.iceg200/rrwvf.htm
>
> OUTREC PARSE=(%01=(STARTAFT=C'DATACLAS=',ENDBEFR=C',')),
>   BUILD=(%01)
>
>
> I didn't include all the other SORT control cards.
>

Tough morning. Perhaps this would be better:

  INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=')
  INREC PARSE=(%01=(STARTAFT=C'DATACLAS=',ENDBEFR=C',')),
 BUILD=(%01,9:C' ')
  SORT FIELDS=(1,8,CH,A)
  SUM FIELDS=NONE


The only thing which concerns me is whether the BUILD= is correct to make a
fixed length output record.





>
> --
> A sine curve goes off to infinity, or at least the end of the blackboard.
> -- Prof. Steiner
>
> Maranatha! <><
> John McKown
>


-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Sort job to get price variance records

2019-08-01 Thread Ron Thomas
Ok Kolusu, will remove dfsort tag from subject line . Thanks again for 
providing the steps. Here is what i have done 

//STEP03   EXEC SORT
//SORTIN   DD *
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   96.12
50338 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052910 DF   95.12
50318 789997580026.00 36052911 DF   95.12
50318 789997580026.00 36052911 DF   95.12
//SORTOUT  DD DSN=T01.RXVD.PULL,
//SPACE=(CYL,(50,50),RLSE),VOL=(,,,99),
//DISP=(NEW,CATLG,DELETE)
//SYSINDD *
 SORT FIELDS=(1,37,CH,A)
 OUTREC IFTHEN=(WHEN=GROUP,KEYBEGIN=(1,37),PUSH=(81:65,10)),
IFTHEN=(WHEN=(64,10,CH,NE,81,10,CH),OVERLAY=(92:C'P'))
 OUTFIL FNAMES=SORTOUT,REMOVECC,NODETAIL,
 INCLUDE=(92,1,CH,EQ,C'P'),
 SECTIONS=(1,64,TRAILER3=(1,64,COUNT=(EDIT=())),65,10)
/*

O/p Generated

50318 789997580026.00 36052910 DF  1
50318 789997580026.00 36052911 DF  2
50338 789997580026.00 36052910 DF  3

I am not sure whether this o/p is correct .  

Also for the Joinkeys . This below is what i have coded

JOINKEYS FILES=F1,FIELDS=(1,37,A),SORTED,NOSEQCK
JOINKEYS FILES=F2,FIELDS=(1,37,A),SORTED,NOSEQCK
REFORMAT FIELDS=(F1:01,80,F2:01,92,?)
OPTION COPY
JOIN UNPAIRED,F1,F2
OUTFIL FNAMES=BOTH,
INCLUDE=(173,1,CH,EQ,C'B'),BUILD=(1,80)

I am getting the o/p as expected , but not sure whether what i have done is 
completely correct . Could you please check and let me know if the above needs 
correction ?

Regards
Ron T

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Extract next eight character positions after SubString Match

2019-08-01 Thread John McKown
On Thu, Aug 1, 2019 at 8:22 AM Cameron Conacher  wrote:

> Hello to the DFSORT folks.
> I have a file of data containing extracts from some JCL.
> Specifically, I am looking for all values of DATACLAS.
> This all relates back to Pervasive Encryption. I just want a quick report
> of the DATACLAS values in use today, as well as the counts for each
> DATACLAS item I find.
>
> I ran a quick compare to get a report from our JCL Library, and now I am
> building a SORT to look at the variable length input file data.
> I can use 'INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=') to select a subset of
> records from the original compare report.
> I could take this file and play with it in ISPF EDIT to pull out the eight
> bytes following 'DATACLAS='.
> However, I am wondering if I can do this in DFSORT.
> So, if I have
>   DATACLAS=FRED,
> I would want to extract and summarize FRED and if I have
>DATACLAS=POTATO I would want to extract and summarize POTATO
> I guess the question is how can I extract characters from the input records
> that appear following the SubString match?
>
> Thanks
>
>

I am not a DFSORT expert. But I think that you'd be better off trying to
use PARSE.
https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.iceg200/rrwvf.htm

OUTREC PARSE=(%01=(STARTAFT=C'DATACLAS=',ENDBEFR=C',')),
  BUILD=(%01)


I didn't include all the other SORT control cards.

-- 
A sine curve goes off to infinity, or at least the end of the blackboard.
-- Prof. Steiner

Maranatha! <><
John McKown

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Extract next eight character positions after SubString Match

2019-08-01 Thread Cameron Conacher
Hello to the DFSORT folks.
I have a file of data containing extracts from some JCL.
Specifically, I am looking for all values of DATACLAS.
This all relates back to Pervasive Encryption. I just want a quick report
of the DATACLAS values in use today, as well as the counts for each
DATACLAS item I find.

I ran a quick compare to get a report from our JCL Library, and now I am
building a SORT to look at the variable length input file data.
I can use 'INCLUDE COND=(5,70,SS,EQ,C'DATACLAS=') to select a subset of
records from the original compare report.
I could take this file and play with it in ISPF EDIT to pull out the eight
bytes following 'DATACLAS='.
However, I am wondering if I can do this in DFSORT.
So, if I have
  DATACLAS=FRED,
I would want to extract and summarize FRED and if I have
   DATACLAS=POTATO I would want to extract and summarize POTATO
I guess the question is how can I extract characters from the input records
that appear following the SubString match?

Thanks

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN