Edit Compare between zOS and Unix Files

186 views
Skip to first unread message

Karlheinz Wittemann

unread,
Apr 2, 2024, 6:28:28 AM4/2/24
to ispf-...@nd.edu
Hallo,
 
what i did is: Write some records to an zos file (PS or PO-Member) and copy this to an unix file. When I do a comp in edit, I get a result, that all blank-lines are different between zos and unix.
 
I tried a lot of different things, at least to interpret the screen buffer but this is horrible and without sense if lrecl is several 100 byte long.
 
Any idea?
 
Tanks,
Heinz
 
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Karlheinz Wittemann (+49 176 5624 4567)
sp Service Professional GmbH
Drosselweg 47
26639 Wiesmoor
 
Mainframe - 2nd to none
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

Paul Gilmartin

unread,
Apr 2, 2024, 11:26:10 AM4/2/24
to ispf-...@nd.edu
On 4/2/24 04:28:24, Karlheinz Wittemann wrote:
> Hallo,
> what i did is: Write some records to an zos file (PS or PO-Member) and copy this to an unix file. When I do a comp in edit, I get a result, that all blank-lines are different between zos and unix.
> .
What utility did you use to copy PS/PO to UNIX?

Were you unable to write directly to the UNIX file, bypassing the copy?

> I tried a lot of different things, at least to interpret the screen buffer but this is horrible and without sense if lrecl is several 100 byte long.
> Any idea?
> .
Long ago, the Data Management manual stated that the minimum allowed
value for the count in an RDW was 5. ISPF accommodated that by padding
any empty line with a single blank. Later, Using Data Sets relaxed
that minimum to 4. ISPF long, perhaps still, retained the behavior
to comply with a rule no longer in force.

Programmers familiar with desktop editors such as vi and Notepad++
expect editors not to treat blanks specially and perceive any
meddling with blanks by an editor as data corruption, causing
false positives in diff.

--
gil

Marvin Knight

unread,
Apr 3, 2024, 1:24:58 PM4/3/24
to ispf-...@nd.edu

When you Edit the Unix file make sure the “Preserve VB record length” field is selected on the Edit Entry panel.

 

                          EDIT Entry Panel                     

                                                                

Object Name:                                                   

/u/knightm/copy1                                               

  Initial Macro  . .                                           

  Profile Name . . .           (Blank defaults to Type)        

  Format Name  . . .                                           

  Panel Name . . . .           (Leave blank for default)       

  Record Length  . .                                           

  Line Command Table                                           

                                                                

  Options                           Data Encoding              

  /  Confirm Cancel/Move/Replace       1. ASCII                

     EDIT Mixed Mode                   2. UTF-8                

  /  Preserve VB record length                                 

     Warn on First Data Change                                 

                                                                

Press ENTER to continue. Press CANCEL to cancel action.        

 

 

Marvin Knight

 

From: ispf-...@nd.edu <ispf-...@nd.edu> On Behalf Of Karlheinz Wittemann
Sent: Tuesday, April 2, 2024 5:28 AM
To: ispf-...@nd.edu
Subject: [EXTERNAL] [ISPF-L] Edit Compare between zOS and Unix Files

 

Hallo, what i did is: Write some records to an zos file (PS or PO-Member) and copy this to an unix file. When I do a comp in edit, I get a result, that all blank-lines are different between zos and unix. I tried a lot of different things, at

ZjQcmQRYFpfptBannerStart

This Message Is From an Untrusted Sender

You have not previously corresponded with this sender.

    Report Suspicious    ‌

ZjQcmQRYFpfptBannerEnd

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.
To view this discussion on the web visit https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/1569001413.249217.1712053704671%40email.df.eu.

Paul Gilmartin

unread,
Apr 3, 2024, 1:55:10 PM4/3/24
to ispf-...@nd.edu
On 4/3/24 11:23:58, Marvin Knight wrote:
> When you Edit the Unix file make sure the “Preserve VB record length” field is selected on the Edit Entry panel.
>                         EDIT Entry Panel
> ...
>   /  Preserve VB record length
> ...
I believe that option, faithful to its name, will add or remove
a corresponding number of trailing blanks when characters are
deleted or inserted earlier in the record in order to
“Preserve VB record length”. This is not the behavior that
programmers have come to expect with vi and desktop editors,
which leave blanks unchanged when changes are made elsewhere in
a record.

Is there any option to leave blanks unchanged when changes
are made elsewhere in a record?


> *From: Karlheinz Wittemann
> *Sent:* Tuesday, April 2, 2024 5:28 AM
>
> Hallo, what i did is: Write some records to an zos file (PS or PO-Member) and copy this to an unix file. When I do a comp in edit, I get a result, that all blank-lines are different between zos and unix. I tried a lot of different things, at least to interpret the screen buffer but this is horrible and without sense if lrecl is several 100 byte long.

--
gil

Marvin Knight

unread,
Apr 3, 2024, 5:53:35 PM4/3/24
to ispf-...@nd.edu
ISPF Edit removes trailing spaces from Variable records when it writes the file. For a UNIX file there is no requirement for at least 1 blank character. So ISPF removes all blanks. For non-unix files ISPF keeps at least 1 space. The preserve VB record length will keep the existing RDW when back scanning so as not to remove required spaces. However there is no way in EDIT to force trailing spaces to a variable file when increasing the RDW.

Marvin
--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.
To view this discussion on the web visit https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/474ced45-41de-47f1-ad28-37a1dabdeac0%40AIM.com .

Paul Gilmartin

unread,
Apr 3, 2024, 6:23:39 PM4/3/24
to ispf-...@nd.edu
On 4/3/24 15:53:30, Marvin Knight wrote:
> ISPF Edit removes trailing spaces from Variable records when it writes the file. For a UNIX file there is no requirement for at least 1 blank character. So ISPF removes all blanks. For non-unix files ISPF keeps at least 1 space.
> .
Where is there a requirement "for at least 1 blank"? For example, in:
<https://www.ibm.com/docs/en/zos-basic-skills?topic=set-data-record-formats>,
I read:
V (Variable)
This format has one logical record as one physical block.
A variable-length logical record consists of a record
descriptor word (RDW) followed by the data. The record
descriptor word is a 4-byte field describing the record.
The first 2 bytes contain the length of the logical record
(including the 4-byte RDW). The length can be from 4 to
32,760 bytes.

If the length of the logical record is 4 bytes, it consists
solely of the RDW and no blank should be required.

--
gil

Marvin Knight

unread,
Apr 4, 2024, 6:42:08 AM4/4/24
to ispf-...@nd.edu
Edit has always kept at least 1 blank for a non unix file.
With UNIX it will actually remove the 1 blank.
"Preserve VB record length" will keep the existing RDW unless you make the length longer in Edit by adding non blank data that goes past the existing RDW length.

Marvin

-----Original Message-----
From: 'Paul Gilmartin' via ISPF discussion list <ispf-...@nd.edu>
Sent: Wednesday, April 3, 2024 5:24 PM
To: ispf-...@nd.edu
Subject: [EXTERNAL] Re: [ISPF-L] Edit Compare between zOS and Unix Files

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.
To view this discussion on the web visit https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/12681d9e-1b45-4294-841c-dee5a0f7ff4e%40AIM.com .

Paul Gilmartin

unread,
Apr 4, 2024, 11:03:50 PM4/4/24
to ispf-...@nd.edu
On 4/4/24 04:42:03, Marvin Knight wrote:
> Edit has always kept at least 1 blank for a non unix file.
> .
Why?

--
gil

Marvin Knight

unread,
Apr 5, 2024, 11:13:26 AM4/5/24
to ispf-...@nd.edu
Gil,
I don’t know if it is still a DFSMS restriction, but the JCL manual still shows LRECL has a minimum length of 5

https://www.ibm.com/docs/en/zos/3.1.0?topic=lp-subparameter-definition-3
Note: When RECFM is F or U, the length must not exceed DCB BLKSIZE. For RECFM=D or V, the length must be a minimum of 5 and a maximum of BLKSIZE minus 4 to account for the 4 byte record descriptor word (RDW) preceding the data in every record. For RECFM=VS, the length can exceed BLKSIZE. For unblocked records when DCB RKP=0, the length is for only the data portion of the record. LRECL=0 is valid only for RECFM=U.

Marvin


-----Original Message-----
From: 'Paul Gilmartin' via ISPF discussion list <ispf-...@nd.edu>
Sent: Thursday, April 4, 2024 10:04 PM
To: ispf-...@nd.edu
Subject: [EXTERNAL] Re: [ISPF-L] Edit Compare between zOS and Unix Files

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.
To view this discussion on the web visit https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/ad109e5b-8f13-48d6-a5ea-618b5dc33c78%40AIM.com .

Paul Gilmartin

unread,
Apr 12, 2024, 12:05:42 PM4/12/24
to ispf-...@nd.edu
On 4/5/24 09:13:19, Marvin Knight wrote:
> Gil,
> I don’t know if it is still a DFSMS restriction, but the JCL manual still shows LRECL has a minimum length of 5
> .
That's irrelevant. It has always been possible for individual records
with RECFM=V[B] to have RDW values less than LRECL, down to the
DFSMS minimum documented in Using Data Sets as 4. Edit is enforcing a
"rule" that doesn't exist.

This thread started when a user edited Unix and PO/PS files expecting
similar results but discovered inconsistencies in the treatment of
blanks. ISPF should remedy this inconsistency by treating blanks rhe
same in PS/PO data sets rather than enforcing an imaginary rule.

How many users have found it beneficial that with PRESERVE checked,
when characters are inserted or deleted earlier in the line, Edit
adjusts trailing blanks to "preserve" the value of the RDW?

<https://www.ibm.com/docs/en/zos/3.1.0?topic=records-record-descriptor-word-rdw>
... The first 2 bytes contain the length (LL) of the logical record
(including the 4-byte RDW). The length can be from 4 to 32,760.

(32,760? 32,756 because of the BDW? BDW-4?)

--
Thanks,
gil

Roger Bolan

unread,
Apr 13, 2024, 11:34:15 AM4/13/24
to ispf-...@nd.edu
The only time I really find it necessary to preserve trailing blanks is if you're editing a file with architected structured fields like AFP records. That's because some fields have defined lengths and the AFP structured field itself has an encoded length.

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.

Paul Gilmartin

unread,
Apr 13, 2024, 11:56:36 AM4/13/24
to ispf-...@nd.edu
On 4/13/24 09:34:00, Roger Bolan wrote:
> The only time I really find it necessary to preserve trailing blanks is if you're editing a file with architected structured fields like AFP records. That's because some fields have defined lengths and the AFP structured field itself has an encoded length.
>
Ah! A plausible motivation for the recondite PRESERVE option. Thanks!

"AFP" = "Advanced Function Printing"?
How does AFP handle variable width fonts, such as the popular Utf-8?

--
gil

Roger Bolan

unread,
Apr 14, 2024, 11:12:13 PM4/14/24
to ispf-...@nd.edu
Fonts like that are non-FOCA (Font Object Content Architecture).  They come as part of the z/OS Font Collection with a Resource Access Table, and the AFP files use an MDR (Map Data Resource) structured field to reference them.
for details on the MDR structured field and the triplets it can use. 

But, in general, AFP structured fields always contain a two byte length for the whole field in the two bytes that immediately follow the x'5A' carriage control byte.  That length includes everything in the AFP structured field even if it has trailing blanks.  For example, the last field could be a fixed length 8 character name, where the user only used a 5 character name and the last 3 bytes of that field would be trailing blanks x'40' that still need to be there.  The RDW length is always the AFP structured field length plus 5 bytes.  If the file is edited without preserving blanks (the RDW length) the RDW changes automatically and the trailing blanks disappear but the AFP structured field length is now wrong. 

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.

robhb...@gmail.com

unread,
May 6, 2024, 5:13:11 PM5/6/24
to ispf-...@nd.edu

This task has come up often enough that I should have automated it before:  I want to search for one or more strings in each of the libraries from which my client submits production jobs.  Each time I need to do this I go to ISPF 3.14, fill in a character string and one of the production JCL libraries, and fire it off.  Then another production library, and another, and so on.  Long past time I write a REXX to do this, because it’s going to come up again.

 

I’m sure I’ve done something like it before; there’s an ISPF service for it, isn’t there?  Or maybe something else, because I’m looking in the ISPF dialogue services guide and I don’t see it.  Where can I find it, please?

 

---

Bob Bridges, robhb...@gmail.com, cell 336 382-7313

 

/* Jonny snorted. "You mean out among the decadence of the big worlds? Come on, Jame, you don't really believe that sophistication implies depravity, do you?" / "Of course not. But someone's bound to try and convince you that depravity implies sophistication."  From _Cobra_ by Timothy Zahn */

lbd...@gmail.com

unread,
May 7, 2024, 7:14:38 AM5/7/24
to ispf-...@nd.edu
With 3.14 you can use SRCHFOR - if you want to do it in batch check out ISPF options 3.14/15


Lionel B. Dyck <><
Github: https://github.com/lbdyck
System Z Enthusiasts Discord: https://discord.gg/sze

“Worry more about your character than your reputation. Character is what you are, reputation merely what others think you are.” - - - John Wooden

From: ispf-...@nd.edu <ispf-...@nd.edu> On Behalf Of robhb...@gmail.com
Sent: Monday, May 6, 2024 4:13 PM
To: ispf-...@nd.edu
Subject: [ISPF-L] Automating 3.14 for multiple PDSs

This task has come up often enough that I should have automated it before: I want to search for one or more strings in each of the libraries from which my client submits production jobs. Each time I need to do this I go to ISPF 3.14, fill in a character string and one of the production JCL libraries, and fire it off. Then another production library, and another, and so on. Long past time I write a REXX to do this, because it’s going to come up again.

I’m sure I’ve done something like it before; there’s an ISPF service for it, isn’t there? Or maybe something else, because I’m looking in the ISPF dialogue services guide and I don’t see it. Where can I find it, please?

---
Bob Bridges, mailto:robhb...@gmail.com, cell 336 382-7313

/* Jonny snorted. "You mean out among the decadence of the big worlds? Come on, Jame, you don't really believe that sophistication implies depravity, do you?" / "Of course not. But someone's bound to try and convince you that depravity implies sophistication." From _Cobra_ by Timothy Zahn */
--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mailto:ispf-l-list...@nd.edu.
To view this discussion on the web visit https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/030101da9ffa%24303aa100%2490afe300%24%40gmail.com?utm_medium=email&utm_source=footer.

Hewson, Bruce

unread,
May 7, 2024, 7:20:26 AM5/7/24
to ispf-...@nd.edu, lbd...@gmail.com, [External] robhbridges@gmail.com
//USERID3D JOB (),'SEARCH DATASETS',
// CLASS=A,
// MSGCLASS=X,
// NOTIFY=&SYSUID
//*
//SEARCH EXEC PGM=ISRSUPC,
// PARM=(SRCHCMP,
// 'LONGLN NOPRTCC ANYC SDUPM')
//NEWDD DD DISP=SHR,DSN=DATASET.DB.MCS
// DD DISP=SHR,DSN=DATASET.IB.MCS
// DD DISP=SHR,DSN=DATASET.NT.MCS
// DD DISP=SHR,DSN=DATASET.OS.MCS
//OUTDD DD SYSOUT=(X)
//SYSIN DD *
SRCHFOR '++VER'
SRCHFOR '++ VER'
SRCHFOR ' FMID('
/*

Batch search multiple datasets

-----Original Message-----
From: [External] ispf-...@nd.edu On Behalf Of [External] lbd...@gmail.com
Sent: Tuesday, May 7, 2024 7:15 PM
To: ispf-...@nd.edu
Subject: RE: [ISPF-L] Automating 3.14 for multiple PDSs

With 3.14 you can use SRCHFOR - if you want to do it in batch check out ISPF options 3.14/15


Lionel B. Dyck <><
Github: https://urldefense.com/v3/__https://github.com/lbdyck__;!!Jkho33Y!kzxqeRaipH3FpQOEj81hHnOIjHQaVcvkTpW8MJHcj8qJHRrFfp-S7P8UyoyDxJ1zg59kV40ZqyH2nFA$
System Z Enthusiasts Discord: https://urldefense.com/v3/__https://discord.gg/sze__;!!Jkho33Y!kzxqeRaipH3FpQOEj81hHnOIjHQaVcvkTpW8MJHcj8qJHRrFfp-S7P8UyoyDxJ1zg59kV40ZEJ16Z8c$

“Worry more about your character than your reputation. Character is what you are, reputation merely what others think you are.” - - - John Wooden

From: ispf-...@nd.edu <ispf-...@nd.edu> On Behalf Of robhb...@gmail.com
Sent: Monday, May 6, 2024 4:13 PM
To: ispf-...@nd.edu
Subject: [ISPF-L] Automating 3.14 for multiple PDSs

This task has come up often enough that I should have automated it before: I want to search for one or more strings in each of the libraries from which my client submits production jobs. Each time I need to do this I go to ISPF 3.14, fill in a character string and one of the production JCL libraries, and fire it off. Then another production library, and another, and so on. Long past time I write a REXX to do this, because it’s going to come up again.

I’m sure I’ve done something like it before; there’s an ISPF service for it, isn’t there? Or maybe something else, because I’m looking in the ISPF dialogue services guide and I don’t see it. Where can I find it, please?

---
Bob Bridges, mailto:robhb...@gmail.com, cell 336 382-7313

/* Jonny snorted. "You mean out among the decadence of the big worlds? Come on, Jame, you don't really believe that sophistication implies depravity, do you?" / "Of course not. But someone's bound to try and convince you that depravity implies sophistication." From _Cobra_ by Timothy Zahn */
--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mailto:ispf-l-list...@nd.edu.
To view this discussion on the web visit https://urldefense.com/v3/__https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/030101da9ffa*24303aa100*2490afe300*24*40gmail.com?utm_medium=email&utm_source=footer__;JSUlJQ!!Jkho33Y!kzxqeRaipH3FpQOEj81hHnOIjHQaVcvkTpW8MJHcj8qJHRrFfp-S7P8UyoyDxJ1zg59kV40ZoDeJ504$ .

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.
To view this discussion on the web visit https://urldefense.com/v3/__https://groups.google.com/a/nd.edu/d/msgid/ispf-l-list/00c801daa06f*24bd0a6500*24371f2f00*24*40gmail.com__;JSUlJQ!!Jkho33Y!kzxqeRaipH3FpQOEj81hHnOIjHQaVcvkTpW8MJHcj8qJHRrFfp-S7P8UyoyDxJ1zg59kV40ZJI9tjWU$ .

Paul Gilmartin

unread,
May 7, 2024, 12:15:37 PM5/7/24
to 'Hewson, Bruce ' via ISPF discussion list
On 5/7/24 05:20:13, 'Hewson, Bruce wrote:
> ...
> //SEARCH EXEC PGM=ISRSUPC,
> // PARM=(SRCHCMP,
> // 'LONGLN NOPRTCC ANYC SDUPM')
> //NEWDD DD DISP=SHR,DSN=DATASET.DB.MCS
> // DD DISP=SHR,DSN=DATASET.IB.MCS
> // DD DISP=SHR,DSN=DATASET.NT.MCS
> // DD DISP=SHR,DSN=DATASET.OS.MCS
> ...
> Batch search multiple datasets
> .
Will that search similarly named members in multiple catenands?

Does the OP require that?

> From: robhbridges
> Sent: Monday, May 6, 2024 4:13 PM
>
> This task has come up often enough that I should have automated it before: I want to search for one or more strings in each of the libraries from which my client submits production jobs.

--
gil

Pedro Vera

unread,
May 7, 2024, 4:35:18 PM5/7/24
to ISPF discussion list, Paul Gilmartin
re: " With 3.14 you can use SRCHFOR"
 
SRCHFOR is both a primary command and a line command in ISPF 3.4.  

You first list a bunch of datasets using ISPF 3.4, and as a primary command, you type it on the "Command ==>"  line and it will search every one of the datasets that you have listed.  It will have an indication of in which data set the text was found.
 
As a line command, it will only search in the data set that you selected, but you can also use the '=' line command to repeat the search on other data sets.



Ray Mullins

unread,
May 7, 2024, 5:29:39 PM5/7/24
to ispf-...@nd.edu
You need the SDUPM parameter to search identically-named members in lower data sets in the concatenation.

--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.


--
M. Ray Mullins
Roseville, CA, USA

German is essentially a form of assembly language consisting entirely of far calls heavily accented with throaty guttural sounds. ---ilvi
French is essentially German with messed-up pronunciation and spelling.  --Robert B Wilson
English is essentially French converted to 7-bit ASCII.  ---Christophe Pierret [for Alain LaBonté]

Bruce Hewson

unread,
May 7, 2024, 9:33:38 PM5/7/24
to ispf-...@nd.edu
Hello Gil,

I believe it does.

Regards
Bruce

From: 'Paul Gilmartin' via ISPF discussion list <ispf-...@nd.edu>
Sent: Wednesday, 8 May 2024 00:15
To: 'Hewson, Bruce ' via ISPF discussion list <ispf-...@nd.edu>
Subject: Re: [ISPF-L] Automating 3.14 for multiple PDSs
 
--
You received this message because you are subscribed to the Google Groups "ISPF discussion list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispf-l-list...@nd.edu.

robhb...@gmail.com

unread,
May 8, 2024, 10:57:45 AM5/8/24
to ispf-...@nd.edu
Speaking as the OP, my current task involves an app we recently upgraded. The old load library has some modules in it that don't appear in the new version, and we recently discovered that one of those modules is still needed.

So now we're wondering about the rest of the modules that disappeared. I made a list of them (about half a dozen), and I volunteered to search for production JCL that might refer to any of those modules (in a PROGRAM= clause, most likely). I have a list of the PDSs that contain production JCL - all the libraries I know about, anyway - and I want to search each of those JCL libraries for any mention of any of load modules.

So to answer Gil' question, yes, I do want to be sure the search looks for the load modules in later JCL libraries even if it's already found mention of it in an earlier one. I think I saw that addressed in one of the posts.

I was planning to write a REXX to do this in the foreground, not for any compelling reason, just because I tend to think in terms of foreground for most simple jobs. I envision the JCL libraries being hard-coded into the exec, and when I want to run it I just supply the search strings at the command line. But for longer lists of search strings I can easily see that might get cumbersome; I suppose I should start with batch.

---
Bob Bridges, robhb...@gmail.com, cell 336 382-7313

/* This may not be the last time that I mention this, but this is not much fun. -from the early 2001 log of Cam Lewis, captain of "Team Adventure" in a 'round-the-world catamaran race. They were rounding the Horn at the time. */

-----Original Message-----
From: 'Paul Gilmartin' via ISPF discussion list <ispf-...@nd.edu>
Sent: Tuesday, May 7, 2024 12:15

Will that search similarly named members in multiple catenands?

Does the OP require that?

--- On 5/7/24 05:20:13, 'Hewson, Bruce wrote:
> //SEARCH EXEC PGM=ISRSUPC,
> // PARM=(SRCHCMP,
> // 'LONGLN NOPRTCC ANYC SDUPM')
> //NEWDD DD DISP=SHR,DSN=DATASET.DB.MCS
> // DD DISP=SHR,DSN=DATASET.IB.MCS
> // DD DISP=SHR,DSN=DATASET.NT.MCS
> // DD DISP=SHR,DSN=DATASET.OS.MCS
>
> Batch search multiple datasets

Pedro Vera

unread,
May 8, 2024, 5:14:27 PM5/8/24
to ISPF discussion list, robhb...@gmail.com
re: " in a PROGRAM= clause, most likely"
 
Another case that you should consider is for load modules that issue a LINK to or LOAD of an external module.  That is, you should search the new load libraries themselves for references to your 'missing' load modules.  

robhb...@gmail.com

unread,
May 8, 2024, 5:56:54 PM5/8/24
to Pedro Vera, ISPF discussion list

It’s even worse than that.  Up ’til now I’ve been describing the problem in general terms, but to be specific:  The load module we need from the old load library is named SCCAPSIL.  My search of the production JCL libraries failed to find SCCAPSIL, just as it failed to find any of the other missing modules, too.  So does that mean none of them are used?

 

No.  Two jobs in those JCL libraries refer to SYS2.PARMLIB(parm1 and ...2).  Both parm1 and parm2 invoke CICS transaction SCAC.  SCAC translates to load module SCCAPSIL.  No search of the production JCL is going to find a load module that’s invoked in so indirect a manner.  It isn’t clear to me how we’re going to solve this.

 

But at least I now know how to search many PDSs for multiple character strings.  Thanks, all.

 

---

Bob Bridges, robhb...@gmail.com, cell 336 382-7313

 

/* There are two rules for ultimate success in life:

  1) Never tell everything you know.

  -Randy Keck */

 

 

From: Pedro Vera <psv...@gmail.com>
Sent: Wednesday, May 8, 2024 17:14

 

re: " in a PROGRAM= clause, most likely"
 
Another case that you should consider is for load modules that issue a LINK to or LOAD of an external module.  That is, you should search the new load libraries themselves for references to your 'missing' load modules.  

--- On Wednesday, May 8, 2024 at 7:57:45 AM UTC-7 robhb...@gmail.com wrote:

...my current task involves an app we recently upgraded. The old load library has some modules in it that don't appear in the new version, and we recently discovered that one of those modules is still needed.

Reply all
Reply to author
Forward
0 new messages