FW: Hogan Financial Systems. It is a banking system

2021-01-13 Thread
Hello,

I have been contacted by a company with the below request.  Please contact
me if interested.

 

Please rack your brain for any one that can teach Hogan Financial Systems.
It is a banking system.

 

Thanks,

David Mingee  ming...@prodigy.net  

 

 

 

 


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


Re: Progam directory AD/Cycle C/370

2021-01-13 Thread Dan Zhang
I have added the full IBM COBOL compiler version table on the IBM COBOL wiki 
page at https://en.wikipedia.org/wiki/IBM_COBOL.

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


Re: CCSID descriptions

2021-01-13 Thread Windt, W.K.F. van der (Fred)
Ah, that is at least part of the information that was previously available. 
Thank for the tip!

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of Tom 
Brennan
Sent: woensdag 13 januari 2021 18:16
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: CCSID descriptions

After the last time things were changed, I've been going here:

https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ibm.com%2Fsupport%2Fknowledgecenter%2FSSEQ5Y_5.9.0%2Fcom.ibm.pcomm.doc%2Freference%2Fhtml%2Fhcp_reference02.htmdata=04%7C01%7CFred.van.der.Windt%40ing.com%7Cf02dd3ba16f04ebb607d08d8b7e6f41e%7C587b6ea13db94fe1a9d785d4c64ce5cc%7C0%7C0%7C637461549862419122%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000sdata=af4SpUP5BEmorjeaKGMZES7OvSGuSwVLR88n4Dm%2FsaY%3Dreserved=0

On 1/13/2021 12:58 AM, Windt, W.K.F. van der (Fred) wrote:
> Hi,
>
> The IBM website used to have complete descriptions of every CCSID including a 
> complete overview of every character (glyph) in that CCSID with it's 
> encoding. Simply googling "IBM CCSID 1140" would quickly get you to the page 
> of CCSID 1140. The CCSID was in the url so you could quickly switch to 
> another CCSID by changing the url. But with the change to Knowledge Center I 
> can't find those pages anymore... Does anybody know where the CCCSID 
> descriptions have gone?
>
> Thanks,
>
> Fred!
>
> -
> ATTENTION:
> The information in this e-mail is confidential and only meant for the 
> intended recipient. If you are not the intended recipient, don't use or 
> disclose it in any way. Please let the sender know and delete the message 
> immediately.
> -
>
> --
> 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
-
ATTENTION:
The information in this e-mail is confidential and only meant for the intended 
recipient. If you are not the intended recipient, don't use or disclose it in 
any way. Please let the sender know and delete the message immediately.
-

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


Re: Why LE taking Transaction Dump rather than CEEDUMP?

2021-01-13 Thread David Crayford
There should be a reason code 
https://www.ibm.com/support/knowledgecenter/SSLTBW_2.2.0/com.ibm.zos.v2r2.ceea900/cs00015.htm.


I agree that most of the time the CEEDUMP is enough for diagnosis. If I 
need to go deeper I use IBM Fault Analyzer which has a really good UI. 
Last resort is IPCS
if I need to read the systrace. IPCS is super powerful but it could do 
with a new UI.


On 14/01/2021 12:57 am, Charles Mills wrote:

Thx.

Found it the old-fashioned with just good ol' debugging.

Buffer overrun :-( so who knows what I may have been clobbering.

Would be nice if LE put out a message to say exactly what its problem was (its 
problem that caused it to abandon CEEDUMP).

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of David Crayford
Sent: Wednesday, January 13, 2021 7:23 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Why LE taking Transaction Dump rather than CEEDUMP?

In my experience this is because LE can't produce a CEEDUMP because a
recursive condition is detected. Usually save area chains have been
overwritten.
This may be one of those cases where TRAP(OFF) may be better so you can
get a dump without LE getting in the way.

--
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: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Edgington, Jerry
Thanks Tom. I think I understand. :) 

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of Tom 
Mathias
Sent: Wednesday, January 13, 2021 12:29 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

This message was sent from an external source outside of Western & Southern's 
network. Do not click links or open attachments unless you recognize the sender 
and know the contents are safe.


Jerry,

Based upon what you are trying to do, I suggest the following:

Make the total weights for LPARs 1, 2, 3, and 4 add up to 1000, assuming all 
four are normally active.  Then you can easily do the math and for example, 
give LPAR 2 say 15% of the machine by setting its weight to 150 (15/1000).  
This is the only LPAR you would want to cap.  Have LPARs 1, 3 and 4, have 
weights that together add up to the remaining 85% and don't cap them.  

If there are spare CPU cycles, then your uncapped LPARs will be able to use 
them too.  LPAR 2 would be the only one limited.

Don't forget to also set up the number of processors in each LPAR 
appropriately.  For example, if you have 10 processors and you only give LPAR 
#2 one processor, then it can only ever use one processor, even if its weight 
says 15%.   Or, if you want a production LPAR to have 3/8 of the system, then 
it needs at least 4 processors if you have a total of 10 so that it can fully 
use its 37.5% of the system.  And if you give it say 5 processors, then it 
could even get up to 50% of the system if other LPARs weren't fully using their 
processing power.  

Tom

--
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: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Tom Mathias
Jerry,

Based upon what you are trying to do, I suggest the following:

Make the total weights for LPARs 1, 2, 3, and 4 add up to 1000, assuming all 
four are normally active.  Then you can easily do the math and for example, 
give LPAR 2 say 15% of the machine by setting its weight to 150 (15/1000).  
This is the only LPAR you would want to cap.  Have LPARs 1, 3 and 4, have 
weights that together add up to the remaining 85% and don't cap them.  

If there are spare CPU cycles, then your uncapped LPARs will be able to use 
them too.  LPAR 2 would be the only one limited.

Don't forget to also set up the number of processors in each LPAR 
appropriately.  For example, if you have 10 processors and you only give LPAR 
#2 one processor, then it can only ever use one processor, even if its weight 
says 15%.   Or, if you want a production LPAR to have 3/8 of the system, then 
it needs at least 4 processors if you have a total of 10 so that it can fully 
use its 37.5% of the system.  And if you give it say 5 processors, then it 
could even get up to 50% of the system if other LPARs weren't fully using their 
processing power.  

Tom

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


Re: CCSID descriptions

2021-01-13 Thread Tom Brennan

After the last time things were changed, I've been going here:

https://www.ibm.com/support/knowledgecenter/SSEQ5Y_5.9.0/com.ibm.pcomm.doc/reference/html/hcp_reference02.htm

On 1/13/2021 12:58 AM, Windt, W.K.F. van der (Fred) wrote:

Hi,

The IBM website used to have complete descriptions of every CCSID including a complete 
overview of every character (glyph) in that CCSID with it's encoding. Simply googling 
"IBM CCSID 1140" would quickly get you to the page of CCSID 1140. The CCSID was 
in the url so you could quickly switch to another CCSID by changing the url. But with the 
change to Knowledge Center I can't find those pages anymore... Does anybody know where 
the CCCSID descriptions have gone?

Thanks,

Fred!

-
ATTENTION:
The information in this e-mail is confidential and only meant for the intended 
recipient. If you are not the intended recipient, don't use or disclose it in 
any way. Please let the sender know and delete the message immediately.
-

--
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: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Edgington, Jerry
Thank you, Tom.  That is exactly what I was reading.  So, here is what I am 
attempting

- to allow Production LPAR to use all the machine, which is production.  
- to allow the Test LPAR to use, if busy, up to a certain amount of CPU

The other LPARs, I am not really concerned about.  

My thinking so far.

Change the defined capacity to 0, then move the current defined to the LPAR 
weights. So, I think that would provide what I am looking for.

Thanks,
Jerry 

 

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of Tom 
Mathias
Sent: Wednesday, January 13, 2021 11:57 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

This message was sent from an external source outside of Western & Southern's 
network. Do not click links or open attachments unless you recognize the sender 
and know the contents are safe.


Jerry,

MSU settings (LPAR or group) are enforced by software.  LPAR weights (LPAR 
level only) and absolute capping (at the LPAR or group level) are enforced by 
the hardware/firmware itself.  

Weights apply only to active LPARs and control the LPAR's portion of shared 
processors.  In your example, if all 4 LPARs are active and have weights equal 
to their initial values (30, 10, 10, 30), then LPAR #1 can use 30/80 or about 
37.5% of the shared processors.   If LPAR #1 doesn't have capping explicitly 
turned on, then if LPARs #2-4 aren't using their portion of resources, then 
LPAR #1 could get more.  Conversely, if you wind up with only LPAR #1 active, 
then LPAR #1 can use 30/30 of the processors or 100% of the system.  

If you don't use software management (like WLM), then you can leave the defined 
capacity (which is == MSUs) set to 0.  If you want LPARs #1 and #4 to not be 
capped, then make sure the image profile is set up to not cap (and you can 
check/change via "Change LPAR Controls" on the HMC).  If you want LPAR #2 to be 
capped, then you can turn on capping in the image profile.

But, what type of capping do you want?  Are you trying to ensure you don't 
exceed some license agreement for processing power in LPAR #2?  If so, then you 
should instead use "absolute capping".  You could either set an absolute cap 
limit on that specific LPAR or if appropriate, you could set an absolute cap 
limit on an LPAR group if you want a group of LPARs to be limited in total.

For example, maybe you are licensed to only run at most 2 processors worth of 
power in a given LPAR and no more than say 5 processors worth of power for the 
entire machine.  In that case, you could set each LPAR with this restriction up 
be capped at 2 processors and then put these LPARs into a group with an 
absolute cap of 5.

On the other hand, if you just want to ensure that LPAR #2 doesn't use too much 
power (perhaps because it is used for test purposes), then simply capping in 
the image might be enough because you presumably wouldn't care if the test LPAR 
used all of the processing power if it happened that it was the only LPAR that 
was active.

The "Processor Resource/Systems Manager Planning Guide" (e.g. SB10-7175) has a 
lot more details on how LPAR weights and capping and the like work.  Still, I 
know that it is complicated, particularly as there are a number of ways that an 
LPAR can wind up being capped, either explicitly or implicitly.  

--
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: Why LE taking Transaction Dump rather than CEEDUMP?

2021-01-13 Thread Seymour J Metz
First, without a functioning IPCS all choices are bad. I would probably take a 
SYSUDUMP or SYSABEND, look at the RB chains and look at the trace table, but 
browsing that from SPOOL is a lot less convenient from IPCS and I don't know 
whether your shop is including the trace table.

Have you done anything to increase CPU or virtual storage consumption? Is there 
anything unusual in the log?


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


From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Charles Mills [charl...@mcn.org]
Sent: Wednesday, January 13, 2021 9:59 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Why LE taking Transaction Dump rather than CEEDUMP?

I have a medium-sized C++ application under development (conventional
batch). I have gotten fairly used to and fairly fond of debugging S0C4's and
the like with the LE CEEDUMP (which pinpoints that sort of error down to the
source code file and line number).

Suddenly -- and I can't quite define "suddenly" ("I didn't change anything")
-- ABENDs have started instead producing a Transaction Dump, which I find
much less convenient, especially since at the moment Dallas has IPCS hosed
up and unusable on our machine. (If I code a SYSUDUMP DD I also get one of
those, which is even less convenient for higher level language problems.)

Why would LE start issuing Transaction Dumps rather than CEEDUMPs? There are
no TRAP(OFF) or anything similar in the source code or in the LE runtime
options. A CEEDUMP DD statement makes no difference. There is no ESTAE
issued by my code. How the heck do I get LE back to a CEEDUMP, or what the
heck should I be looking for?

z/OS V2R4

+CEE3798I ATTEMPTING TO TAKE A DUMP FOR ABEND U4087 TO DATA SET:
blah.blah.blah
IGD100I 03DE ALLOCATED TO DDNAME SYS3 DATACLAS ()

IEA822I COMPLETE TRANSACTION DUMP WRITTEN TO blah.blah.blah

+CEE3797I LANGUAGE ENVIRONMENT HAS DYNAMICALLY CREATED A DUMP.

+CEE0374C CONDITION=CEE3204S TOKEN=00030C84 59C3C5C5   455

  WHILE RUNNING PROGRAM myprogrm

  AT THE TIME OF INTERRUPT

  PSW 078D1400 9AE4AC66

  GPR 0-3 FD09 FD09 1B5D522C 1AE4ABF2

  GPR 4-7 1AE4ACF0 1AE541C0 1AE541C0 1AE541D3

  GPR 8-B 1B584878 0008 1B5BD2AC 1B5E68D0

  GPR C-F 1B5771D8 1B584A58 1B5F1FAD 1B584A28


Charles

--
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: Why LE taking Transaction Dump rather than CEEDUMP?

2021-01-13 Thread Charles Mills
Thx.

Found it the old-fashioned with just good ol' debugging.

Buffer overrun :-( so who knows what I may have been clobbering.

Would be nice if LE put out a message to say exactly what its problem was (its 
problem that caused it to abandon CEEDUMP).

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of David Crayford
Sent: Wednesday, January 13, 2021 7:23 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Why LE taking Transaction Dump rather than CEEDUMP?

In my experience this is because LE can't produce a CEEDUMP because a 
recursive condition is detected. Usually save area chains have been 
overwritten.
This may be one of those cases where TRAP(OFF) may be better so you can 
get a dump without LE getting in the way.

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


Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Tom Mathias
Jerry,

MSU settings (LPAR or group) are enforced by software.  LPAR weights (LPAR 
level only) and absolute capping (at the LPAR or group level) are enforced by 
the hardware/firmware itself.  

Weights apply only to active LPARs and control the LPAR's portion of shared 
processors.  In your example, if all 4 LPARs are active and have weights equal 
to their initial values (30, 10, 10, 30), then LPAR #1 can use 30/80 or about 
37.5% of the shared processors.   If LPAR #1 doesn't have capping explicitly 
turned on, then if LPARs #2-4 aren't using their portion of resources, then 
LPAR #1 could get more.  Conversely, if you wind up with only LPAR #1 active, 
then LPAR #1 can use 30/30 of the processors or 100% of the system.  

If you don't use software management (like WLM), then you can leave the defined 
capacity (which is == MSUs) set to 0.  If you want LPARs #1 and #4 to not be 
capped, then make sure the image profile is set up to not cap (and you can 
check/change via "Change LPAR Controls" on the HMC).  If you want LPAR #2 to be 
capped, then you can turn on capping in the image profile.

But, what type of capping do you want?  Are you trying to ensure you don't 
exceed some license agreement for processing power in LPAR #2?  If so, then you 
should instead use "absolute capping".  You could either set an absolute cap 
limit on that specific LPAR or if appropriate, you could set an absolute cap 
limit on an LPAR group if you want a group of LPARs to be limited in total.

For example, maybe you are licensed to only run at most 2 processors worth of 
power in a given LPAR and no more than say 5 processors worth of power for the 
entire machine.  In that case, you could set each LPAR with this restriction up 
be capped at 2 processors and then put these LPARs into a group with an 
absolute cap of 5.

On the other hand, if you just want to ensure that LPAR #2 doesn't use too much 
power (perhaps because it is used for test purposes), then simply capping in 
the image might be enough because you presumably wouldn't care if the test LPAR 
used all of the processing power if it happened that it was the only LPAR that 
was active.

The "Processor Resource/Systems Manager Planning Guide" (e.g. SB10-7175) has a 
lot more details on how LPAR weights and capping and the like work.  Still, I 
know that it is complicated, particularly as there are a number of ways that an 
LPAR can wind up being capped, either explicitly or implicitly.  

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


Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Bfishing
Remember that LPAR weights defined from the HMC really only come into play
when the system is running hot.
Capping will keep an LPAR from exceeding the number of MSU's being
consumed.  This is generally done to help control cost.

On Wed, Jan 13, 2021 at 10:35 AM Edgington, Jerry <
jerry.edging...@westernsouthernlife.com> wrote:

> Thanks Paul.  Yes, the defined capacity was setup like LPAR weights,
> instead of MSUs.  My goal is to have LPAR #1 and #4, not capped, with LPAR
> #2, capped.  So, I am thinking of changing the defined capacities to 0, and
> update the initial, max and min with the current defined capacity.  But,
> still researching it.
>
> Jerry
>
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf
> Of Feller, Paul
> Sent: Wednesday, January 13, 2021 10:28 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Question about LPAR weights and LPAR group controls [EXTERNAL]
>
> This message was sent from an external source outside of Western &
> Southern's network. Do not click links or open attachments unless you
> recognize the sender and know the contents are safe.
>
> 
>
> Jerry, from what I recall the define capacity is related to what you want
> to limit the lpar to for MSU usage.  You can have an lpar as part of a
> group that is capped plus you can cap the lpar itself.  I've done that
> before.  If I read your email correctly you have a group capacity of 20 MSU
> which is less then the defined capacity.  If that is true I find it
> interesting that the HMC would let you do that.  My comments are based on
> what I understand related to group capacity stuff and defined capacity
> stuff.
>
> From the help screen on the HMC: Defined capacity - The measure of
> processor resource consumption for a logical partition, expressed in
> millions of service units (MSU) per hour.
>
>
>
> Thanks..
>
> Paul Feller
> GTS Mainframe Technical Support
>
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf
> Of Edgington, Jerry
> Sent: Wednesday, January 13, 2021 8:37 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Question about LPAR weights and LPAR group controls [EXTERNAL]
>
> I am looking for some advice about how LPAR group controls, weights and
> MSUs work. We have one LPAR group with all the LPAR as members, with MSU
> group capacity value.  On each LPAR, we have LPAR initial and min/max
> weights.
>
> LPAR group capacity   20 MSU
> LPAR #1defined capacity = 900, Initial=30,
> min=20, max=30
> LPAR #2defined capacity = 60, initial =
> 10, min = 5, max=10
> LPAR #3defined capacity = 60, initial =
> 10, min = 5, max=10
> LPAR #4defined capacity = 135, init = 30
>
> Questions:
>
> 1)  Does the defined capacity units = MSU or LPAR weights?
>
> 2)  Is LPAR #1 definition mean 900 MSUs? And LPAR #2 with 60 MSUs?
>
> 3)  What would be the capacity of LPAR #1?
>
> 4)  Can LPAR #2 cause CPU issues for LPAR #1?
>
> Thanks, I thought I understood this stuff, but it would seem I don't.
>
> Jerry Edgington
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send email
> to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> Please note:  This message originated outside your organization. Please
> use caution when opening links or attachments.
>
> --
> 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
>


-- 

><º>`·.¸¸´¯`·.¸.·´¯`·...¸>(((º>
.·´¯`·.><º>`·.¸¸.·´¯`·.¸.·´¯`·...¸><º>

<>< Go fishing ><>

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


Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Edgington, Jerry
Thanks Paul.  Yes, the defined capacity was setup like LPAR weights, instead of 
MSUs.  My goal is to have LPAR #1 and #4, not capped, with LPAR #2, capped.  
So, I am thinking of changing the defined capacities to 0, and update the 
initial, max and min with the current defined capacity.  But, still researching 
it.

Jerry 

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Feller, Paul
Sent: Wednesday, January 13, 2021 10:28 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Question about LPAR weights and LPAR group controls [EXTERNAL]

This message was sent from an external source outside of Western & Southern's 
network. Do not click links or open attachments unless you recognize the sender 
and know the contents are safe.


Jerry, from what I recall the define capacity is related to what you want to 
limit the lpar to for MSU usage.  You can have an lpar as part of a group that 
is capped plus you can cap the lpar itself.  I've done that before.  If I read 
your email correctly you have a group capacity of 20 MSU which is less then the 
defined capacity.  If that is true I find it interesting that the HMC would let 
you do that.  My comments are based on what I understand related to group 
capacity stuff and defined capacity stuff.

>From the help screen on the HMC: Defined capacity - The measure of processor 
>resource consumption for a logical partition, expressed in millions of service 
>units (MSU) per hour.



Thanks.. 
  
Paul Feller
GTS Mainframe Technical Support

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Edgington, Jerry
Sent: Wednesday, January 13, 2021 8:37 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Question about LPAR weights and LPAR group controls [EXTERNAL]

I am looking for some advice about how LPAR group controls, weights and MSUs 
work. We have one LPAR group with all the LPAR as members, with MSU group 
capacity value.  On each LPAR, we have LPAR initial and min/max weights.

LPAR group capacity   20 MSU
LPAR #1defined capacity = 900, Initial=30, 
min=20, max=30
LPAR #2defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #3defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #4defined capacity = 135, init = 30

Questions:

1)  Does the defined capacity units = MSU or LPAR weights?

2)  Is LPAR #1 definition mean 900 MSUs? And LPAR #2 with 60 MSUs?

3)  What would be the capacity of LPAR #1?

4)  Can LPAR #2 cause CPU issues for LPAR #1?

Thanks, I thought I understood this stuff, but it would seem I don't.

Jerry Edgington

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

--
Please note:  This message originated outside your organization. Please use 
caution when opening links or attachments.

--
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: Question about LPAR weights and LPAR group controls [EXTERNAL]

2021-01-13 Thread Feller, Paul
Jerry, from what I recall the define capacity is related to what you want to 
limit the lpar to for MSU usage.  You can have an lpar as part of a group that 
is capped plus you can cap the lpar itself.  I've done that before.  If I read 
your email correctly you have a group capacity of 20 MSU which is less then the 
defined capacity.  If that is true I find it interesting that the HMC would let 
you do that.  My comments are based on what I understand related to group 
capacity stuff and defined capacity stuff.

>From the help screen on the HMC: Defined capacity - The measure of processor 
>resource consumption for a logical partition, expressed in millions of service 
>units (MSU) per hour.



Thanks.. 
  
Paul Feller
GTS Mainframe Technical Support

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Edgington, Jerry
Sent: Wednesday, January 13, 2021 8:37 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Question about LPAR weights and LPAR group controls [EXTERNAL]

I am looking for some advice about how LPAR group controls, weights and MSUs 
work. We have one LPAR group with all the LPAR as members, with MSU group 
capacity value.  On each LPAR, we have LPAR initial and min/max weights.

LPAR group capacity   20 MSU
LPAR #1defined capacity = 900, Initial=30, 
min=20, max=30
LPAR #2defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #3defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #4defined capacity = 135, init = 30

Questions:

1)  Does the defined capacity units = MSU or LPAR weights?

2)  Is LPAR #1 definition mean 900 MSUs? And LPAR #2 with 60 MSUs?

3)  What would be the capacity of LPAR #1?

4)  Can LPAR #2 cause CPU issues for LPAR #1?

Thanks, I thought I understood this stuff, but it would seem I don't.

Jerry Edgington

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

--
Please note:  This message originated outside your organization. Please use 
caution when opening links or attachments.

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


Re: Why LE taking Transaction Dump rather than CEEDUMP?

2021-01-13 Thread David Crayford
In my experience this is because LE can't produce a CEEDUMP because a 
recursive condition is detected. Usually save area chains have been 
overwritten.
This may be one of those cases where TRAP(OFF) may be better so you can 
get a dump without LE getting in the way.


On 13/01/2021 10:59 pm, Charles Mills wrote:

I have a medium-sized C++ application under development (conventional
batch). I have gotten fairly used to and fairly fond of debugging S0C4's and
the like with the LE CEEDUMP (which pinpoints that sort of error down to the
source code file and line number).

Suddenly -- and I can't quite define "suddenly" ("I didn't change anything")
-- ABENDs have started instead producing a Transaction Dump, which I find
much less convenient, especially since at the moment Dallas has IPCS hosed
up and unusable on our machine. (If I code a SYSUDUMP DD I also get one of
those, which is even less convenient for higher level language problems.)

Why would LE start issuing Transaction Dumps rather than CEEDUMPs? There are
no TRAP(OFF) or anything similar in the source code or in the LE runtime
options. A CEEDUMP DD statement makes no difference. There is no ESTAE
issued by my code. How the heck do I get LE back to a CEEDUMP, or what the
heck should I be looking for?

z/OS V2R4

+CEE3798I ATTEMPTING TO TAKE A DUMP FOR ABEND U4087 TO DATA SET:
blah.blah.blah
IGD100I 03DE ALLOCATED TO DDNAME SYS3 DATACLAS ()

IEA822I COMPLETE TRANSACTION DUMP WRITTEN TO blah.blah.blah

+CEE3797I LANGUAGE ENVIRONMENT HAS DYNAMICALLY CREATED A DUMP.

+CEE0374C CONDITION=CEE3204S TOKEN=00030C84 59C3C5C5   455

   WHILE RUNNING PROGRAM myprogrm

   AT THE TIME OF INTERRUPT

   PSW 078D1400 9AE4AC66

   GPR 0-3 FD09 FD09 1B5D522C 1AE4ABF2

   GPR 4-7 1AE4ACF0 1AE541C0 1AE541C0 1AE541D3

   GPR 8-B 1B584878 0008 1B5BD2AC 1B5E68D0

   GPR C-F 1B5771D8 1B584A58 1B5F1FAD 1B584A28


Charles

--
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: CCSID descriptions

2021-01-13 Thread Norbert Friemel
On Wed, 13 Jan 2021 08:58:49 +, Windt, W.K.F. van der (Fred) wrote:

>Hi,
>
>The IBM website used to have complete descriptions of every CCSID including a 
>complete overview of every character (glyph) in that CCSID with it's encoding. 
>Simply googling "IBM CCSID 1140" would quickly get you to the page of CCSID 
>1140. The CCSID was in the url so you could quickly switch to another CCSID by 
>changing the url. But with the change to Knowledge Center I can't find those 
>pages anymore... Does anybody know where the CCCSID descriptions have gone?
>

Not a website but ... 
ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/

Norbert Friemel

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


Why LE taking Transaction Dump rather than CEEDUMP?

2021-01-13 Thread Charles Mills
I have a medium-sized C++ application under development (conventional
batch). I have gotten fairly used to and fairly fond of debugging S0C4's and
the like with the LE CEEDUMP (which pinpoints that sort of error down to the
source code file and line number).

Suddenly -- and I can't quite define "suddenly" ("I didn't change anything")
-- ABENDs have started instead producing a Transaction Dump, which I find
much less convenient, especially since at the moment Dallas has IPCS hosed
up and unusable on our machine. (If I code a SYSUDUMP DD I also get one of
those, which is even less convenient for higher level language problems.)

Why would LE start issuing Transaction Dumps rather than CEEDUMPs? There are
no TRAP(OFF) or anything similar in the source code or in the LE runtime
options. A CEEDUMP DD statement makes no difference. There is no ESTAE
issued by my code. How the heck do I get LE back to a CEEDUMP, or what the
heck should I be looking for?

z/OS V2R4

+CEE3798I ATTEMPTING TO TAKE A DUMP FOR ABEND U4087 TO DATA SET:
blah.blah.blah  
IGD100I 03DE ALLOCATED TO DDNAME SYS3 DATACLAS ()

IEA822I COMPLETE TRANSACTION DUMP WRITTEN TO blah.blah.blah

+CEE3797I LANGUAGE ENVIRONMENT HAS DYNAMICALLY CREATED A DUMP.

+CEE0374C CONDITION=CEE3204S TOKEN=00030C84 59C3C5C5   455

  WHILE RUNNING PROGRAM myprogrm

  AT THE TIME OF INTERRUPT

  PSW 078D1400 9AE4AC66

  GPR 0-3 FD09 FD09 1B5D522C 1AE4ABF2

  GPR 4-7 1AE4ACF0 1AE541C0 1AE541C0 1AE541D3

  GPR 8-B 1B584878 0008 1B5BD2AC 1B5E68D0

  GPR C-F 1B5771D8 1B584A58 1B5F1FAD 1B584A28


Charles 

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


Question about LPAR weights and LPAR group controls

2021-01-13 Thread Edgington, Jerry
I am looking for some advice about how LPAR group controls, weights and MSUs 
work. We have one LPAR group with all the LPAR as members, with MSU group 
capacity value.  On each LPAR, we have LPAR initial and min/max weights.

LPAR group capacity   20 MSU
LPAR #1defined capacity = 900, Initial=30, 
min=20, max=30
LPAR #2defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #3defined capacity = 60, initial = 10, min 
= 5, max=10
LPAR #4defined capacity = 135, init = 30

Questions:

1)  Does the defined capacity units = MSU or LPAR weights?

2)  Is LPAR #1 definition mean 900 MSUs? And LPAR #2 with 60 MSUs?

3)  What would be the capacity of LPAR #1?

4)  Can LPAR #2 cause CPU issues for LPAR #1?

Thanks, I thought I understood this stuff, but it would seem I don't.

Jerry Edgington

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


SAS Institute IP claims against World Programming fail again

2021-01-13 Thread Nick Ciancio
it appears that the copyright and patent infringement claims that SAS brought 
against WPS have been dismissed or withdrawn.

https://www.worldprogramming.com/press/sas_institute_ip_claims_against_world_programming_fail_again/

https://law.justia.com/cases/federal/district-courts/texas/txedce/2:2018cv00295/183557/465/

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


Re: Request for help with removing sequence numbers from PDS members

2021-01-13 Thread CM Poncelet
See attached 'EDITMAC.txt' on how to process all members of a PDS using
REXX and edit macros.
 
- PDSMEM is ASM, with EQUREGS just being "R0 EQU 0" etc. Assemble and
link-edit that.
- CALSTRIP is REXX. Copy it to your SYSEXEC PDS library.
- STRIP73  is a REXX edit macro. Copy it to your SYSEXEC PDS library.
 
You can then invoke it (as %CALSTRIP )
interactively or in batch TSO.
 
Cheers, Chris Poncelet (retired sysprog)
 

On 12/01/2021 11:26, Sean Gleann wrote:
> Hi Andy
>
> "is it just that you're seeing the RC20 from the ISREDIT" - in this
> particular version of the REXX it is, but as previously detailed I had
> problems with the syntax of the CONTROL ERRORS statement.
> "Does the REXX continue afterwards if you uncomment the code" - in a manner
> of speaking, yes. The whole job terminates with RC990.
> Here's the SYSTSPRT produced by running the uncommented REXX, with 'trace
> i' specified:
>
>


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
MEMBER NAME  PDSMEM
=== 
 
*
* LIST ALL MEMBERS OF A PDS *
*   *
*   *
*   *
*
*
 PRINT NOGEN
PDSMEM   CSECT
 EQUREGS
*
*
 START OF MACROS 
*
*
 MACRO
   READREC 
   READ  DECB,SF,,BUFFER,256
 CHECK DECB,DSORG=ALL
 MEND
*
 MACRO
   WRITEREC 
   PUT   REPORT,OUTPUT
 MEND
*
*
 END OF MACROS **
*
*
DIRECT   DSECT
DATA DSXL2 LENGTH OF THIS DIRECTORY BLOCK
NAME DSCL8 NAME OF THIS/NEXT MEMBER
TTR  DSXL3 TRACK ADDRESS OF MEMBER
CDSX   0:ALIAS;1-2:#UBLOCKS;3-7:#HALFWORDS
*
PDSMEM   CSECT
 STM   R14,R12,12(R13) SAVE REGISTERS
 LRR11,R15 LOAD ENTRY POINT ADDRESS
 USING PDSMEM,R11  BASE REGISTER = R11
 STR13,SAVEBLK+8   BACKWARD POINTER
 LRR6,R13
 LAR13,SAVEBLK OUR SAVE AREA
 STR13,4(,R6)  FORWARD POINTER
*
STARTOPEN  (PDS,(INPUT))   OPEN DIRECTORY
 OPEN  (REPORT,(OUTPUT))   OPEN LIST OF MEMBERS FILE
*
 USING DIRECT,R9   BASE DIRECTORY BUFFER ON R9
*
NEXTREC  READREC PDS   READ DIRECTORY BLOCK
 LAR9,BUFFER-2 MAP DSECT OVER IT LESS 'DATA' LENGTH
 LHR7,DATA+2   LOAD BUFFER LENGTH INTO R7
 ARR7,R9   R7 <- END OF BUFFER ADDRESS
 LAR9,2(,R9)   R9 <- START OF BUFFER ADDRESS
NEXT CLR   R9,R7   AT END OF BUFFER?
 BENEXTREC - YES: READ NEXT DIRECTORY BLOCK
 MVC   C_S,C   - NO:  CHECK WHETHER ALIAS
 NIC_S,B'1000'   ALIAS?
 BNE   SKIP  - YES: SKIP THIS ENTRY
 CLI   NAME,X'FF'- NO: END OF DIRECTORY?
 BEEOJ - YES: TERMINATE
 MVC   OUTPUT,NAME - NO:  TAKE THIS MEMBER NAME
 WRITEREC AND WRITE IT TO REPORT
SKIP MVC   C_S,C   FIND OFFSET TO NEXT MEMBER NAME
 NIC_S,B'0001' ZERO-OUT IRRELEVANT BITS
 XRR8,R8   CLEAR R8 FOR USE AS WORK REGISTER
 ICM   R8,B'0001',C_S  R8 <- NUMBER OF HALFWORDS
 SLL   R8,1R8 <- NUMBER OF BYTES
 LAR9,12(R8,R9)R9 <- ADDRESS-2 OF NEXT MEMBER NAME
 B NEXTGO PROCESS NEXT MEMBER NAME
*
EOJ  CLOSE (PDS,,REPORT)   CLOSE FILES
*
FINISH   L R13,SAVEBLK+8   RESTORE CALLER'S R13
 LMR14,R12,12(R13) RESTORE REGISTERS
 XRR15,R15 CLEAR RETURN CODE
 BRR14 RETURN TO CALLER
*
*
 FILES **
*
*
REPORT   DCB   DDNAME=REPORT,  X
   DSORG=PS,   X
  

CCSID descriptions

2021-01-13 Thread Windt, W.K.F. van der (Fred)
Hi,

The IBM website used to have complete descriptions of every CCSID including a 
complete overview of every character (glyph) in that CCSID with it's encoding. 
Simply googling "IBM CCSID 1140" would quickly get you to the page of CCSID 
1140. The CCSID was in the url so you could quickly switch to another CCSID by 
changing the url. But with the change to Knowledge Center I can't find those 
pages anymore... Does anybody know where the CCCSID descriptions have gone?

Thanks,

Fred!

-
ATTENTION:
The information in this e-mail is confidential and only meant for the intended 
recipient. If you are not the intended recipient, don't use or disclose it in 
any way. Please let the sender know and delete the message immediately.
-

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


Re: Request for help with removing sequence numbers from PDS members

2021-01-13 Thread Mike Schwab
If any lines have blank sequence numbers, your editor may change the
profile to nonum.
So the easiest is NUM 73 80 to overwrite any existing characters, then
UNNUM to remove the new sequence numbers.

On Wed, Jan 13, 2021 at 2:07 AM Wayne Bickerdike  wrote:
>
> UNNUM in the EDIT macro works better if the member has real sequence
> numbers. If it's just any text that happens to be NUM or CHAR, the picture
> works better :)
>
> On Wed, Jan 13, 2021 at 7:02 PM Wayne Bickerdike  wrote:
>
> > ALLMEM source:
> >
> > /* REXX */
> > /**/
> > /**/
> > /* Routine to run the edit macro ALL  against all members of a*/
> > /* library.   */
> > /**/
> > /* COMPONENTS */
> > /* 1.  REXX routine 'ALLMEM'  */
> > /* 2.  REXX routine 'ALL '*/
> > /**/
> > /**/
> >   address "TSO"
> >   Arg PARMSTR
> >   Parse value PARMSTR with PARM1 LEFTOVER
> >   'ISPEXEC VGET (ZUSER ZTIME ZDATE)'
> >   if PARM1 \= '' then LDSN = PARM1
> >   else
> > do
> >   Say 'Parameter missing. Expecting a PDS name'
> >   exit
> > end
> >   LDSN = strip(LDSN,,"'")
> >   say LDSN
> >   X = OUTTRAP("LCAT.")
> >   "LISTDS '" || LDSN ||"' MEMBERS"
> >   X = OUTTRAP("OFF")
> >   N = 1
> >   STARTMEM = 'N'
> >   RLC = 0
> >   Say "Enter Edit macro to run "
> >   Pull macname
> >   x =,
> >   "ADDRESS 'ISPEXEC' 'EDIT DATASET('''LDSNM''') MACRO(",
> >macname")'"
> >   do A=1 to LCAT.0
> > if STARTMEM = 'Y' then
> >   do
> > MEMBER = strip(LCAT.N,B,' ')
> > say MEMBER
> > LDSNM = LDSN'('MEMBER')'
> >   INTERPRET x
> >   end
> > if LCAT.N = '--MEMBERS--' then STARTMEM = 'Y'
> > N = N + 1
> > if LCAT.N = '#END#' then RLC = 99
> >   end
> > Return
> >
> > And the EDIT macro, for example ALL
> >
> > /* REXX */
> > ADDRESS "ISREDIT"
> > ADDRESS 'ISPEXEC' 'CONTROL ERRORS RETURN'
> > "MACRO (PARM) NOPROCESS"
> > "C ALL P'=' ' '  73 80 "
> >
> > In this example I use the Picture notation P'='  so anything in cc73-80 is
> > matched and set to spaces.
> >
> > PDS with 3 numbered members:
> >
> > Command - Enter "/" to select action
> > -
> > allmem   BDB204.PDS
> >
> > BDB204.PDS
> > Enter Edit macro to run
> >
> > ALL
> >
> > ALL
> > A
> > B
> > C
> > ***
> >
> >
> >
> >
> >
> >
> >
> > "END"
> >
> >
> > On Wed, Jan 13, 2021 at 6:43 PM Wayne Bickerdike 
> > wrote:
> >
> >> I have a REXX called ALLMEM, it gets the member list and calls an edit
> >> macro.
> >>
> >> I usually run it from 3.4. I'll post it here when I get my system going.
> >>
> >> On Wed, Jan 13, 2021 at 5:00 AM Paul Gilmartin <
> >> 000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
> >>
> >>> On Tue, 12 Jan 2021 13:46:07 -0400, Clark Morris wrote:
> >>> >>
> >>> >>And a general note: when using ISPF edit to remove sequence numbers
> >>> from a
> >>> >>(large) number of (large) members, you might need to cater for the
> >>> fact that a
> >>> >>PDS might need to be compressed at some stage in the middle of your
> >>> processing!
> >>> >
> >>> >Use of update in place should work if all that is being done is
> >>> >sequence number stripping since the size of the member does not
> >>> >change.
> >>> >
> >>> Does ISPF Edit update in place, even optionally?  I think PDS usually
> >>> creates a new member.
> >>>
> >>> -- gil
> >>>
> >>> --
> >>> For IBM-MAIN subscribe / signoff / archive access instructions,
> >>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> >>>
> >>
> >>
> >> --
> >> Wayne V. Bickerdike
> >>
> >>
> >
> > --
> > Wayne V. Bickerdike
> >
> >
>
> --
> Wayne V. Bickerdike
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



-- 
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

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


Re: Request for help with removing sequence numbers from PDS members

2021-01-13 Thread Wayne Bickerdike
UNNUM in the EDIT macro works better if the member has real sequence
numbers. If it's just any text that happens to be NUM or CHAR, the picture
works better :)

On Wed, Jan 13, 2021 at 7:02 PM Wayne Bickerdike  wrote:

> ALLMEM source:
>
> /* REXX */
> /**/
> /**/
> /* Routine to run the edit macro ALL  against all members of a*/
> /* library.   */
> /**/
> /* COMPONENTS */
> /* 1.  REXX routine 'ALLMEM'  */
> /* 2.  REXX routine 'ALL '*/
> /**/
> /**/
>   address "TSO"
>   Arg PARMSTR
>   Parse value PARMSTR with PARM1 LEFTOVER
>   'ISPEXEC VGET (ZUSER ZTIME ZDATE)'
>   if PARM1 \= '' then LDSN = PARM1
>   else
> do
>   Say 'Parameter missing. Expecting a PDS name'
>   exit
> end
>   LDSN = strip(LDSN,,"'")
>   say LDSN
>   X = OUTTRAP("LCAT.")
>   "LISTDS '" || LDSN ||"' MEMBERS"
>   X = OUTTRAP("OFF")
>   N = 1
>   STARTMEM = 'N'
>   RLC = 0
>   Say "Enter Edit macro to run "
>   Pull macname
>   x =,
>   "ADDRESS 'ISPEXEC' 'EDIT DATASET('''LDSNM''') MACRO(",
>macname")'"
>   do A=1 to LCAT.0
> if STARTMEM = 'Y' then
>   do
> MEMBER = strip(LCAT.N,B,' ')
> say MEMBER
> LDSNM = LDSN'('MEMBER')'
>   INTERPRET x
>   end
> if LCAT.N = '--MEMBERS--' then STARTMEM = 'Y'
> N = N + 1
> if LCAT.N = '#END#' then RLC = 99
>   end
> Return
>
> And the EDIT macro, for example ALL
>
> /* REXX */
> ADDRESS "ISREDIT"
> ADDRESS 'ISPEXEC' 'CONTROL ERRORS RETURN'
> "MACRO (PARM) NOPROCESS"
> "C ALL P'=' ' '  73 80 "
>
> In this example I use the Picture notation P'='  so anything in cc73-80 is
> matched and set to spaces.
>
> PDS with 3 numbered members:
>
> Command - Enter "/" to select action
> -
> allmem   BDB204.PDS
>
> BDB204.PDS
> Enter Edit macro to run
>
> ALL
>
> ALL
> A
> B
> C
> ***
>
>
>
>
>
>
>
> "END"
>
>
> On Wed, Jan 13, 2021 at 6:43 PM Wayne Bickerdike 
> wrote:
>
>> I have a REXX called ALLMEM, it gets the member list and calls an edit
>> macro.
>>
>> I usually run it from 3.4. I'll post it here when I get my system going.
>>
>> On Wed, Jan 13, 2021 at 5:00 AM Paul Gilmartin <
>> 000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
>>
>>> On Tue, 12 Jan 2021 13:46:07 -0400, Clark Morris wrote:
>>> >>
>>> >>And a general note: when using ISPF edit to remove sequence numbers
>>> from a
>>> >>(large) number of (large) members, you might need to cater for the
>>> fact that a
>>> >>PDS might need to be compressed at some stage in the middle of your
>>> processing!
>>> >
>>> >Use of update in place should work if all that is being done is
>>> >sequence number stripping since the size of the member does not
>>> >change.
>>> >
>>> Does ISPF Edit update in place, even optionally?  I think PDS usually
>>> creates a new member.
>>>
>>> -- gil
>>>
>>> --
>>> For IBM-MAIN subscribe / signoff / archive access instructions,
>>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>>>
>>
>>
>> --
>> Wayne V. Bickerdike
>>
>>
>
> --
> Wayne V. Bickerdike
>
>

-- 
Wayne V. Bickerdike

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


Re: Request for help with removing sequence numbers from PDS members

2021-01-13 Thread Wayne Bickerdike
ALLMEM source:

/* REXX */
/**/
/**/
/* Routine to run the edit macro ALL  against all members of a*/
/* library.   */
/**/
/* COMPONENTS */
/* 1.  REXX routine 'ALLMEM'  */
/* 2.  REXX routine 'ALL '*/
/**/
/**/
  address "TSO"
  Arg PARMSTR
  Parse value PARMSTR with PARM1 LEFTOVER
  'ISPEXEC VGET (ZUSER ZTIME ZDATE)'
  if PARM1 \= '' then LDSN = PARM1
  else
do
  Say 'Parameter missing. Expecting a PDS name'
  exit
end
  LDSN = strip(LDSN,,"'")
  say LDSN
  X = OUTTRAP("LCAT.")
  "LISTDS '" || LDSN ||"' MEMBERS"
  X = OUTTRAP("OFF")
  N = 1
  STARTMEM = 'N'
  RLC = 0
  Say "Enter Edit macro to run "
  Pull macname
  x =,
  "ADDRESS 'ISPEXEC' 'EDIT DATASET('''LDSNM''') MACRO(",
   macname")'"
  do A=1 to LCAT.0
if STARTMEM = 'Y' then
  do
MEMBER = strip(LCAT.N,B,' ')
say MEMBER
LDSNM = LDSN'('MEMBER')'
  INTERPRET x
  end
if LCAT.N = '--MEMBERS--' then STARTMEM = 'Y'
N = N + 1
if LCAT.N = '#END#' then RLC = 99
  end
Return

And the EDIT macro, for example ALL

/* REXX */
ADDRESS "ISREDIT"
ADDRESS 'ISPEXEC' 'CONTROL ERRORS RETURN'
"MACRO (PARM) NOPROCESS"
"C ALL P'=' ' '  73 80 "

In this example I use the Picture notation P'='  so anything in cc73-80 is
matched and set to spaces.

PDS with 3 numbered members:

Command - Enter "/" to select action
-
allmem   BDB204.PDS

BDB204.PDS
Enter Edit macro to run

ALL

ALL
A
B
C
***







"END"


On Wed, Jan 13, 2021 at 6:43 PM Wayne Bickerdike  wrote:

> I have a REXX called ALLMEM, it gets the member list and calls an edit
> macro.
>
> I usually run it from 3.4. I'll post it here when I get my system going.
>
> On Wed, Jan 13, 2021 at 5:00 AM Paul Gilmartin <
> 000433f07816-dmarc-requ...@listserv.ua.edu> wrote:
>
>> On Tue, 12 Jan 2021 13:46:07 -0400, Clark Morris wrote:
>> >>
>> >>And a general note: when using ISPF edit to remove sequence numbers
>> from a
>> >>(large) number of (large) members, you might need to cater for the fact
>> that a
>> >>PDS might need to be compressed at some stage in the middle of your
>> processing!
>> >
>> >Use of update in place should work if all that is being done is
>> >sequence number stripping since the size of the member does not
>> >change.
>> >
>> Does ISPF Edit update in place, even optionally?  I think PDS usually
>> creates a new member.
>>
>> -- gil
>>
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>>
>
>
> --
> Wayne V. Bickerdike
>
>

-- 
Wayne V. Bickerdike

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