Re: Finding the STEIN of another address space
Whew! That makes more sense. After all, I had coded using the ASSBISQN and it worked. Thanks for the further clarification Peter. Lennie Dymoke-Bradshaw -Original Message- From: IBM Mainframe Discussion List On Behalf Of Peter Relson Sent: 25 November 2020 00:06 To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Finding the STEIN of another address space To (my)self: Open mouth, insert foot. Or its analog in typing. I was thinking of the ASTE sequence number, not the ASTE instance number. The ASTE instance number is indeed set when an address space starts, changed only when an ASID is reused. And matches ASSBISQN (which then, correctly, unlike what I said, is the answer to the original poster's query). Thanks to Erik J for noticing. Peter Relson z/OS Core Technology Design -- 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: Finding the STEIN of another address space
https://www.ibm.com/support/knowledgecenter/SSLTBW_2.2.0/com.ibm.zos.v2r2.erbb500/jobro.htm Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of John McKown Sent: Tuesday, November 24, 2020 4:11 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Finding the STEIN of another address space I'm afraid that I simply must ask. If every Address Space has a STEIN, where is the BEER? -- 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: Finding the STEIN of another address space
I'm afraid that I simply must ask. If every Address Space has a STEIN, where is the BEER? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Finding the STEIN of another address space
To (my)self: Open mouth, insert foot. Or its analog in typing. I was thinking of the ASTE sequence number, not the ASTE instance number. The ASTE instance number is indeed set when an address space starts, changed only when an ASID is reused. And matches ASSBISQN (which then, correctly, unlike what I said, is the answer to the original poster's query). Thanks to Erik J for noticing. Peter Relson z/OS Core Technology Design -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: For those that use S99ERMSG .....
I use the formatter because that's what the manual said to do. I didn't know about the direct access option, but I'll look into it if it comes up. sas On Tue, Nov 24, 2020 at 2:13 PM Binyamin Dissen wrote: > For those that use S88ERMSG, do you tend to process the IGDMCSMG directly > or > do you use the call to IEFDB476 to 'format' it? > > As the block is pretty well defined, why make the format call? > > -- > Binyamin Dissen > http://www.dissensoftware.com > > Director, Dissen Software, Bar & Grill - Israel > > > Should you use the mailblocks package and expect a response from me, > you should preauthorize the dissensoftware.com domain. > > I very rarely bother responding to challenge/response systems, > especially those from irresponsible companies. > > -- > 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: Has anyone integrated Rexx with IKJPARS?
I don't beleive that either squished or unsquished is a technical term, but if they're going to use one then why shouldn't we use the other? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Jackson, Rob Sent: Tuesday, November 24, 2020 2:09 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? Not that I found. But I take it as a given they maintain an un-squished version. By the way, I did not come up with that technical term. They all have header comments like this: /REXX**/ /* Part: AOFEIZPD Squished: 19 May 2011 */ First Horizon Bank Mainframe Technical Support -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Tuesday, November 24, 2020 12:27 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? [External Email. Exercise caution when clicking links or opening attachments.] Did IBM also provide a libray of unsquished REXX code? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Jackson, Rob Sent: Monday, November 23, 2020 10:19 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? Years ago while disabling some built-in automation in SA for z/OS I found that the REXX code SA actually ran live was almost all "squished." I didn't dig into it, but I assumed (I still believe safely) that it was to reduce interpreter overhead. I just took a look at it tonight to see how the efficiency-minded SA developers coded keywords. A brief look says the majority are first-letter capitalized (as Mike said to do, I believe--which is the reason I always have) or completely capitalized; however, there are enough exceptions to make me wonder. By the way, if you haven't seen it, here's a snippet as an example. It is really . . . something: If cond = 'NOVALUE' | cond = 'HALT' Then rc = 'N/A';Select When cond = 'HALT' Then desc = 'CLIST HALTED' When cond = 'SYNTAX' Then desc = errortext(rc);When cond = 'FAILURE' Then Do If rc = -1 Then;desc = 'COMMAND NOT FOUND';If rc = -3 Then desc = 'COMMAND NOT PERMITTED';End;Otherwise Nop;End "AOFMSG "cond",760,LOG,"loc.0me","sigl","rc",'"desc"'";Call Aof_Exit -5;Exit -5 Aof_Silent_Error:;Call Aof_Exit 0;Exit 0;Aof_Exit:;Procedure Expose loc. Do ix = 1 to Words(loc.0claim_tickets);ticket = WORD(loc.0claim_tickets,ix) Call INGPXDEL ticket;End;if loc.0UserExit = 'Y' then;call @User_Exit lrc = Arg(1);If Arg(2) <> 'TEXT' then;If datatype(lrc,'W') ^= 1 Then lrc = 0 Select;When cglobal('AOFDEBUG') = 'Y' Then "AOFMSG" loc.0me",702,LOG,"time()","opid()","lrc;When loc.0debug = 'Y' Then Call Aof_Debug 'COMPLETE, RC='||lrc||'.';Otherwise nop;End;Exit lrc First Horizon Bank Mainframe Technical Support -Original Message- From: IBM Mainframe Discussion List On Behalf Of Jeremy Nicoll Sent: Monday, November 23, 2020 9:50 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? [External Email. Exercise caution when clicking links or opening attachments.] On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: > Performance reasons. Without the quotes REXX first interprets MVS as a > variable name Are you sure? I thought that environment (after address) was one of the few places in REXX where quotes were unnecessary because what's typed there is regarded as a constant. And, that if you actually wanted a variable's value to be used, you'd have to code address value varname > Back in the MVS & MVS/XA Days, these types of performance > optimizations were actually quite noticeable. Even if what you said above was true, I doubt very much that capitalising the environment name would ever have make a measurable difference, bearing in mind how few times one would typically specify an address statement in a typical exec. > I similarly "always" capitalize REXX Key words, to save REXX from > having to spend cycles actually FOLDING then up. It's been years since I wrote any REXX on a mainframe, but I know I didn't uppercase my code back then ... and a quick look at current manuals shows sample code is sometimes in uppercase, and sometimes mixed case. Is this idea that uppercase REXX is more efficient something that everyone here accepts? -- Jeremy Nicoll - my opinions are my own. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN Confidentiality notice: This e-mail message, including any attachments, may contain legally privileged and/or confidential information. If you are not the intended recipient(s), or the
For those that use S99ERMSG .....
For those that use S88ERMSG, do you tend to process the IGDMCSMG directly or do you use the call to IEFDB476 to 'format' it? As the block is pretty well defined, why make the format call? -- Binyamin Dissen http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Is ISGENQ a bit pricey?
D GRS RESPONSE=S0W1 ISG343I 14.07.42 GRS STATUS 495 SYSTEMSTATE SYSTEMSTATE S0W1 ACTIVE GRS RING MODE INFORMATION RESMIL: 10 TOLINT:180 SYNCHRES: YES ENQMAXU: 16384 ENQMAXA:25 AUTHQLVL:2 MONITOR:NO GRSMON: NONE D XCF RESPONSE=S0W1 IXC334I 14.08.07 DISPLAY XCF 497 SYSPLEX SVSCPLEX: S0W1 SYSPLEX INITIALIZATION TIME: 11/17/2020 09:41:16.129505 On Tue, Nov 24, 2020 at 1:56 PM Ed Jaffe wrote: > On 11/24/2020 10:39 AM, Kirk Wolf wrote: > > I guess that makes sense with SCOPE=SYSTEMS, but I'm doing this on a > system > > that isn't on a sysplex (but it is running second level at IBM RDP). > > What do you see when you issue these two commands? > > D GRS > D XCF > > -- > Phoenix Software International > Edward E. Jaffe > 831 Parkview Drive North > El Segundo, CA 90245 > https://www.phoenixsoftware.com/ > > > > > This e-mail message, including any attachments, appended messages and the > information contained therein, is for the sole use of the intended > recipient(s). If you are not an intended recipient or have otherwise > received this email message in error, any use, dissemination, distribution, > review, storage or copying of this e-mail message and the information > contained therein is strictly prohibited. If you are not an intended > recipient, please contact the sender by reply e-mail and destroy all copies > of this email message and do not otherwise utilize or retain this email > message or any or all of the information contained therein. Although this > email message and any attachments or appended messages are believed to be > free of any virus or other defect that might affect any computer system > into > which it is received and opened, it is the responsibility of the recipient > to ensure that it is virus free and no responsibility is accepted by the > sender for any loss or damage arising in any way from its opening or use. > > -- > 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: Is ISGENQ a bit pricey?
On 11/24/2020 10:39 AM, Kirk Wolf wrote: I guess that makes sense with SCOPE=SYSTEMS, but I'm doing this on a system that isn't on a sysplex (but it is running second level at IBM RDP). What do you see when you issue these two commands? D GRS D XCF -- Phoenix Software International Edward E. Jaffe 831 Parkview Drive North El Segundo, CA 90245 https://www.phoenixsoftware.com/ This e-mail message, including any attachments, appended messages and the information contained therein, is for the sole use of the intended recipient(s). If you are not an intended recipient or have otherwise received this email message in error, any use, dissemination, distribution, review, storage or copying of this e-mail message and the information contained therein is strictly prohibited. If you are not an intended recipient, please contact the sender by reply e-mail and destroy all copies of this email message and do not otherwise utilize or retain this email message or any or all of the information contained therein. Although this email message and any attachments or appended messages are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by the sender for any loss or damage arising in any way from its opening or use. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Is ISGENQ a bit pricey?
I'm doing ISPF-compatible member enqueues, while loading a bunch of members with BPAM/BSAM. I'm following the doc, which indicate SCOPE=SYSTEMS: https://www.ibm.com/support/knowledgecenter/SSLTBW_2.3.0/com.ibm.zos.v2r3.f54pc00/isppcmmnamen.htm I guess that I don't understand the distinction between GRS and sharing within a SYSPLEX wrt SCOPE=SYSTEMS. I had assumed that SCOPE=SYSTEMS is not only GRS, but also for serializing across members of a sysplex. No? BTW: with SCOPE=SYSTEM, it is blazing fast. On Tue, Nov 24, 2020 at 12:48 PM Tony Harminc wrote: > On Tue, 24 Nov 2020 at 13:39, Kirk Wolf wrote: > > >ISGENQ > >REQUEST=OBTAIN, > >COND=YES, > >QNAME=QN,RNAME=RN,RNAMELEN=52, > >CONTROL=EXCLUSIVE, > >SCOPE=SYSTEMS, > >RETCODE=RC,RSNCODE=RSN, > >ENQTOKEN=MYTOK > > > I notice that Obtains takes about 14ms and Releases about 12ms, so 100 > > iterations is almost 3 seconds. > > > > I guess that makes sense with SCOPE=SYSTEMS, but I'm doing this on a > system > > that isn't on a sysplex (but it is running second level at IBM RDP). > > I don't understand why you have SCOPE=SYSTEMS... Are you sharing a > resource across systems that are not in a sysplex? This is possible > with GRS, but not common these days, and can lead to problems. That > you are running in a VM doesn't seem relevant. > > Tony H. > > -- > 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: Has anyone integrated Rexx with IKJPARS?
Not that I found. But I take it as a given they maintain an un-squished version. By the way, I did not come up with that technical term. They all have header comments like this: /REXX**/ /* Part: AOFEIZPD Squished: 19 May 2011 */ First Horizon Bank Mainframe Technical Support -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Tuesday, November 24, 2020 12:27 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? [External Email. Exercise caution when clicking links or opening attachments.] Did IBM also provide a libray of unsquished REXX code? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Jackson, Rob Sent: Monday, November 23, 2020 10:19 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? Years ago while disabling some built-in automation in SA for z/OS I found that the REXX code SA actually ran live was almost all "squished." I didn't dig into it, but I assumed (I still believe safely) that it was to reduce interpreter overhead. I just took a look at it tonight to see how the efficiency-minded SA developers coded keywords. A brief look says the majority are first-letter capitalized (as Mike said to do, I believe--which is the reason I always have) or completely capitalized; however, there are enough exceptions to make me wonder. By the way, if you haven't seen it, here's a snippet as an example. It is really . . . something: If cond = 'NOVALUE' | cond = 'HALT' Then rc = 'N/A';Select When cond = 'HALT' Then desc = 'CLIST HALTED' When cond = 'SYNTAX' Then desc = errortext(rc);When cond = 'FAILURE' Then Do If rc = -1 Then;desc = 'COMMAND NOT FOUND';If rc = -3 Then desc = 'COMMAND NOT PERMITTED';End;Otherwise Nop;End "AOFMSG "cond",760,LOG,"loc.0me","sigl","rc",'"desc"'";Call Aof_Exit -5;Exit -5 Aof_Silent_Error:;Call Aof_Exit 0;Exit 0;Aof_Exit:;Procedure Expose loc. Do ix = 1 to Words(loc.0claim_tickets);ticket = WORD(loc.0claim_tickets,ix) Call INGPXDEL ticket;End;if loc.0UserExit = 'Y' then;call @User_Exit lrc = Arg(1);If Arg(2) <> 'TEXT' then;If datatype(lrc,'W') ^= 1 Then lrc = 0 Select;When cglobal('AOFDEBUG') = 'Y' Then "AOFMSG" loc.0me",702,LOG,"time()","opid()","lrc;When loc.0debug = 'Y' Then Call Aof_Debug 'COMPLETE, RC='||lrc||'.';Otherwise nop;End;Exit lrc First Horizon Bank Mainframe Technical Support -Original Message- From: IBM Mainframe Discussion List On Behalf Of Jeremy Nicoll Sent: Monday, November 23, 2020 9:50 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? [External Email. Exercise caution when clicking links or opening attachments.] On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: > Performance reasons. Without the quotes REXX first interprets MVS as a > variable name Are you sure? I thought that environment (after address) was one of the few places in REXX where quotes were unnecessary because what's typed there is regarded as a constant. And, that if you actually wanted a variable's value to be used, you'd have to code address value varname > Back in the MVS & MVS/XA Days, these types of performance > optimizations were actually quite noticeable. Even if what you said above was true, I doubt very much that capitalising the environment name would ever have make a measurable difference, bearing in mind how few times one would typically specify an address statement in a typical exec. > I similarly "always" capitalize REXX Key words, to save REXX from > having to spend cycles actually FOLDING then up. It's been years since I wrote any REXX on a mainframe, but I know I didn't uppercase my code back then ... and a quick look at current manuals shows sample code is sometimes in uppercase, and sometimes mixed case. Is this idea that uppercase REXX is more efficient something that everyone here accepts? -- Jeremy Nicoll - my opinions are my own. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN Confidentiality notice: This e-mail message, including any attachments, may contain legally privileged and/or confidential information. If you are not the intended recipient(s), or the employee or agent responsible for delivery of this message to the intended recipient(s), you are hereby notified that any dissemination, distribution, or copying of this e-mail message is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete this e-mail message from your computer. -- For IBM-MAIN
Re: Is ISGENQ a bit pricey?
On Tue, 24 Nov 2020 at 13:39, Kirk Wolf wrote: >ISGENQ >REQUEST=OBTAIN, >COND=YES, >QNAME=QN,RNAME=RN,RNAMELEN=52, >CONTROL=EXCLUSIVE, >SCOPE=SYSTEMS, >RETCODE=RC,RSNCODE=RSN, >ENQTOKEN=MYTOK > I notice that Obtains takes about 14ms and Releases about 12ms, so 100 > iterations is almost 3 seconds. > > I guess that makes sense with SCOPE=SYSTEMS, but I'm doing this on a system > that isn't on a sysplex (but it is running second level at IBM RDP). I don't understand why you have SCOPE=SYSTEMS... Are you sharing a resource across systems that are not in a sysplex? This is possible with GRS, but not common these days, and can lead to problems. That you are running in a VM doesn't seem relevant. Tony H. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Unable to ALLOC dsn without new
Familiarity? Operand parsing? Stack? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Lizette Koehler Sent: Tuesday, November 24, 2020 1:11 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Unable to ALLOC dsn without new I would put a LISTC ENT for the dataset before the allocation If RC > 0 Then write out some diagnostics Not sure why people are still writing in CLIST rather than using REXX. But to each their own Lizette -Original Message- From: IBM Mainframe Discussion List On Behalf Of Elaine Beal Sent: Tuesday, November 24, 2020 9:36 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Unable to ALLOC dsn without new I give up :), asking for help Defining a new user and logon proc issues SET = ALLOC FI(ISPPROF) SHR DA('') the dsn is new and evidently the alloc fails but i can manually alloc a new dsn without the new parm (under another ID) if I try a manual allocate with the failing ID (and no new parm), it fails with ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED ENTER DATA SET NAME - I thought you had to have the new parm but i can ALLOC a new dsn under another id without it. The ALLOC proc works on another LPAR. Thanks, Elaine -- 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: Unable to ALLOC dsn without new
On Tue, 24 Nov 2020 10:35:40 -0600, Elaine Beal wrote: >I give up :), asking for help > >Defining a new user and logon proc issues > >SET = >ALLOC FI(ISPPROF) SHR DA('') > >the dsn is new and evidently the alloc fails > >but i can manually alloc a new dsn without the new parm (under another ID) > >if I try a manual allocate with the failing ID (and no new parm), it fails with > >ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') > DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED > ENTER DATA SET NAME - > >I thought you had to have the new parm but i can ALLOC a new dsn under another >id without it. > >The ALLOC proc works on another LPAR. Why are you saying SHR? That indicates that the data set already exists. If this was in JCL, NEW would be the default if you don't say NEW, OLD, or SHR. But if you say SHR the data set must already exist. I don't know if TSO will similarly default to NEW if you omit SHR, but it seems correct for it to complain if you say SHR when the data set does not exist. -- Walt -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Is ISGENQ a bit pricey?
I was working on some code that involved repeated: ISGENQ OBTAIN do something ISGENQ RELEASE With these options: ISGENQ REQUEST=OBTAIN, COND=YES, QNAME=QN,RNAME=RN,RNAMELEN=52, CONTROL=EXCLUSIVE, SCOPE=SYSTEMS, RETCODE=RC,RSNCODE=RSN, ENQTOKEN=MYTOK ISGENQ REQUEST=RELEASE, COND=YES, RETCODE=RC,RSNCODE=RSN, ENQTOKEN=MYTOK I notice that Obtains takes about 14ms and Releases about 12ms, so 100 iterations is almost 3 seconds. I guess that makes sense with SCOPE=SYSTEMS, but I'm doing this on a system that isn't on a sysplex (but it is running second level at IBM RDP). Any thoughts appreciated. Kirk Wolf Dovetailed Technologies http://dovetail.com -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Unable to ALLOC dsn without new
I would put a LISTC ENT for the dataset before the allocation If RC > 0 Then write out some diagnostics Not sure why people are still writing in CLIST rather than using REXX. But to each their own Lizette -Original Message- From: IBM Mainframe Discussion List On Behalf Of Elaine Beal Sent: Tuesday, November 24, 2020 9:36 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Unable to ALLOC dsn without new I give up :), asking for help Defining a new user and logon proc issues SET = ALLOC FI(ISPPROF) SHR DA('') the dsn is new and evidently the alloc fails but i can manually alloc a new dsn without the new parm (under another ID) if I try a manual allocate with the failing ID (and no new parm), it fails with ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED ENTER DATA SET NAME - I thought you had to have the new parm but i can ALLOC a new dsn under another id without it. The ALLOC proc works on another LPAR. Thanks, Elaine -- 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: Unable to ALLOC dsn without new
aarrgghh. sorry about that one too. RACF profiles are created correctly -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Has anyone integrated Rexx with IKJPARS?
As I recall, NEATER made it readable, but there is no way to reconstruct the original indentation of, e.g., comments. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Paul Gilmartin <000433f07816-dmarc-requ...@listserv.ua.edu> Sent: Tuesday, November 24, 2020 12:39 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? On Tue, 24 Nov 2020 17:26:30 +, Seymour J Metz wrote: >Did IBM also provide a libray of unsquished REXX code? > On CMS, they tend to provide two: source and compiled: https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.rexa100/h198160575.htm Would a pretty-printer have untangled your squisned PL/1? There's a thread going on a Curl forum concerning methods of transferring file permissions. This chore is amplified by extended attributes. And the z/OS extensions to FTP for transferring load modules make no accommodation for possible need to have a non-IBM waystation. -- gil -- 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: Has anyone integrated Rexx with IKJPARS?
On Tue, 24 Nov 2020 17:26:30 +, Seymour J Metz wrote: >Did IBM also provide a libray of unsquished REXX code? > On CMS, they tend to provide two: source and compiled: https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.rexa100/h198160575.htm Would a pretty-printer have untangled your squisned PL/1? There's a thread going on a Curl forum concerning methods of transferring file permissions. This chore is amplified by extended attributes. And the z/OS extensions to FTP for transferring load modules make no accommodation for possible need to have a non-IBM waystation. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Unable to ALLOC dsn without new
What about the relevant security profiles? Was there a security violation logged? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Elaine Beal Sent: Tuesday, November 24, 2020 12:24 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Unable to ALLOC dsn without new sorry, yes, there is an alias defined -- 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: Has anyone integrated Rexx with IKJPARS?
Did IBM also provide a libray of unsquished REXX code? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Jackson, Rob Sent: Monday, November 23, 2020 10:19 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? Years ago while disabling some built-in automation in SA for z/OS I found that the REXX code SA actually ran live was almost all "squished." I didn't dig into it, but I assumed (I still believe safely) that it was to reduce interpreter overhead. I just took a look at it tonight to see how the efficiency-minded SA developers coded keywords. A brief look says the majority are first-letter capitalized (as Mike said to do, I believe--which is the reason I always have) or completely capitalized; however, there are enough exceptions to make me wonder. By the way, if you haven't seen it, here's a snippet as an example. It is really . . . something: If cond = 'NOVALUE' | cond = 'HALT' Then rc = 'N/A';Select When cond = 'HALT' Then desc = 'CLIST HALTED' When cond = 'SYNTAX' Then desc = errortext(rc);When cond = 'FAILURE' Then Do If rc = -1 Then;desc = 'COMMAND NOT FOUND';If rc = -3 Then desc = 'COMMAND NOT PERMITTED';End;Otherwise Nop;End "AOFMSG "cond",760,LOG,"loc.0me","sigl","rc",'"desc"'";Call Aof_Exit -5;Exit -5 Aof_Silent_Error:;Call Aof_Exit 0;Exit 0;Aof_Exit:;Procedure Expose loc. Do ix = 1 to Words(loc.0claim_tickets);ticket = WORD(loc.0claim_tickets,ix) Call INGPXDEL ticket;End;if loc.0UserExit = 'Y' then;call @User_Exit lrc = Arg(1);If Arg(2) <> 'TEXT' then;If datatype(lrc,'W') ^= 1 Then lrc = 0 Select;When cglobal('AOFDEBUG') = 'Y' Then "AOFMSG" loc.0me",702,LOG,"time()","opid()","lrc;When loc.0debug = 'Y' Then Call Aof_Debug 'COMPLETE, RC='||lrc||'.';Otherwise nop;End;Exit lrc First Horizon Bank Mainframe Technical Support -Original Message- From: IBM Mainframe Discussion List On Behalf Of Jeremy Nicoll Sent: Monday, November 23, 2020 9:50 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? [External Email. Exercise caution when clicking links or opening attachments.] On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: > Performance reasons. Without the quotes REXX first interprets MVS as a > variable name Are you sure? I thought that environment (after address) was one of the few places in REXX where quotes were unnecessary because what's typed there is regarded as a constant. And, that if you actually wanted a variable's value to be used, you'd have to code address value varname > Back in the MVS & MVS/XA Days, these types of performance > optimizations were actually quite noticeable. Even if what you said above was true, I doubt very much that capitalising the environment name would ever have make a measurable difference, bearing in mind how few times one would typically specify an address statement in a typical exec. > I similarly “always” capitalize REXX Key words, to save REXX from > having to spend cycles actually FOLDING then up. It's been years since I wrote any REXX on a mainframe, but I know I didn't uppercase my code back then ... and a quick look at current manuals shows sample code is sometimes in uppercase, and sometimes mixed case. Is this idea that uppercase REXX is more efficient something that everyone here accepts? -- Jeremy Nicoll - my opinions are my own. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN Confidentiality notice: This e-mail message, including any attachments, may contain legally privileged and/or confidential information. If you are not the intended recipient(s), or the employee or agent responsible for delivery of this message to the intended recipient(s), you are hereby notified that any dissemination, distribution, or copying of this e-mail message is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete this e-mail message from your computer. -- 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: Unable to ALLOC dsn without new
sorry, yes, there is an alias defined -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Unable to ALLOC dsn without new
First, check whether the userid is an alias to a user catalog. Second, if you don't already have a dialog for creating a ne user, I recommend that you write one to automate everything. It's generally easier to diagnose problems under TSO if you enable all output, e.g., PROFILE MSGID WTPMSG.; in this case I'm pretty confident that it's a catalog or security issue. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Elaine Beal Sent: Tuesday, November 24, 2020 11:35 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Unable to ALLOC dsn without new I give up :), asking for help Defining a new user and logon proc issues SET = ALLOC FI(ISPPROF) SHR DA('') the dsn is new and evidently the alloc fails but i can manually alloc a new dsn without the new parm (under another ID) if I try a manual allocate with the failing ID (and no new parm), it fails with ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED ENTER DATA SET NAME - I thought you had to have the new parm but i can ALLOC a new dsn under another id without it. The ALLOC proc works on another LPAR. Thanks, Elaine -- 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: Unable to ALLOC dsn without new
On Tue, 24 Nov 2020 10:35:40 -0600, Elaine Beal wrote: >... >ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') > DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED > ENTER DATA SET NAME - > This is an either/or message of the sort I despise. The code and text should distinguish between two cases with distinct code and text: o DATA SET GAYLEYC.ISPTABL NOT IN CATALOG o CATALOG CAN NOT BE ACCESSED In either case the message should identify the catalog. If it's MASTER, that's a big step toward problem determination. z/OS is far less storage-constrained than when such catch-all messages were invented. It's past time to fix them. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Has anyone integrated Rexx with IKJPARS?
> uppercase REXX is more efficient Depending on how the interpreter is written I would guess there is no difference. If I wrote it, the logic would be to convert the token to uppercase and then look it up in a table. "Converting a token to uppercase" is no faster if it is already uppercase. I suppose one might look up the token first in a list of uppercase keywords, and then if that failed, convert and try again, but that seems to me to be an odd way of doing things. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Jeremy Nicoll Sent: Monday, November 23, 2020 6:50 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: > Performance reasons. Without the quotes REXX first interprets MVS as a > variable name Are you sure? I thought that environment (after address) was one of the few places in REXX where quotes were unnecessary because what's typed there is regarded as a constant. And, that if you actually wanted a variable's value to be used, you'd have to code address value varname > Back in the MVS & MVS/XA Days, these types of performance optimizations > were actually quite noticeable. Even if what you said above was true, I doubt very much that capitalising the environment name would ever have make a measurable difference, bearing in mind how few times one would typically specify an address statement in a typical exec. > I similarly “always” capitalize REXX Key words, to save REXX from > having to spend cycles actually FOLDING then up. It's been years since I wrote any REXX on a mainframe, but I know I didn't uppercase my code back then ... and a quick look at current manuals shows sample code is sometimes in uppercase, and sometimes mixed case. Is this idea that uppercase REXX is more efficient something that everyone here accepts? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Unable to ALLOC dsn without new
On Tue, 24 Nov 2020 10:35:40 -0600, Elaine Beal wrote: >... >ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') > DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED > ENTER DATA SET NAME - > Do you need to DEFINE a catalog alias? SHR? NEW? Whatever. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Unable to ALLOC dsn without new
I give up :), asking for help Defining a new user and logon proc issues SET = ALLOC FI(ISPPROF) SHR DA('') the dsn is new and evidently the alloc fails but i can manually alloc a new dsn without the new parm (under another ID) if I try a manual allocate with the failing ID (and no new parm), it fails with ALLOC FI(ISPPROF) SHR DA('gayleyc.isptabl') DATA SET GAYLEYC.ISPTABL NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED ENTER DATA SET NAME - I thought you had to have the new parm but i can ALLOC a new dsn under another id without it. The ALLOC proc works on another LPAR. Thanks, Elaine -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Has anyone integrated Rexx with IKJPARS?
I might believe ADDRESS (CMD) Unfortunately, CALL does not have a similar option, nor support the NAME option of ANSI REXX. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Al Ferguson Sent: Monday, November 23, 2020 10:56 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? They are not necessary, but you can use a variable after the ADDRESS. I have written a few REXX programs where I used: ADDRESS CMD Where I set CMD = “environ actual-command”. Any non-quoted word will: 1. Be folded up to all caps, if not already 2. Determine if it is a “REXX reserved word” (environments are not reserved words) 3. If not, it is a variable and is resolved (non-initialized variables resolve to the variable name folded to all caps) 4. The resolved string is then passed to the REXX Interpreter 5. Then executed (or if not executable, an error raised) Quoted strings are passed, as is, to the Interpreter; skipping the first 3 steps. Sent via Al Ferguson’s iPad > On Nov 23, 2020, at 20:50, Jeremy Nicoll > wrote: > > On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: >> Performance reasons. Without the quotes REXX first interprets MVS as a >> variable name > > Are you sure? > > I thought that environment (after address) was one of the few places in > REXX where quotes were unnecessary because what's typed there is > regarded as a constant. > > And, that if you actually wanted a variable's value to be used, you'd have > to code > > address value varname > > >> Back in the MVS & MVS/XA Days, these types of performance optimizations >> were actually quite noticeable. > > Even if what you said above was true, I doubt very much that capitalising > the environment name would ever have make a measurable difference, > bearing in mind how few times one would typically specify an address > statement in a typical exec. > > >> I similarly “always” capitalize REXX Key words, to save REXX from >> having to spend cycles actually FOLDING then up. > > It's been years since I wrote any REXX on a mainframe, but I know I didn't > uppercase my code back then ... and a quick look at current manuals shows > sample code is sometimes in uppercase, and sometimes mixed case. > > Is this idea that uppercase REXX is more efficient something that everyone > here accepts? > > -- > Jeremy Nicoll - my opinions are my own. > > -- > 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: Has anyone integrated Rexx with IKJPARS?
"Note that the names of built-infunctions (and generally the names of external routines, too) are in uppercase; therefore, you should uppercase the name in the literal string." That seems to say that REXX does *NOT* force it upper. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Paul Gilmartin <000433f07816-dmarc-requ...@listserv.ua.edu> Sent: Monday, November 23, 2020 11:05 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? On Tue, 24 Nov 2020 02:07:20 +, Seymour J Metz wrote: >I don't know why he quoted it, but quoting the environment name is certainly >valid. It's probably a matter of local style. > IIRC, in CMS quoted environment names and external function names are taken as-is. In TSO they are forced upper. In OMVS I don't know whether 'wombat'() and 'WOMBAT'() can distinguish the respective functions in UNIX files. On Mon, 23 Nov 2020 18:34:14 -0600, Al Ferguson wrote: >FYI: EXECIO is supported by MVS and is not part of the TSO >extensions/functions of REXX. > ADDRESS “MVS” “EXECIO ” > >It appears to work under TSO, because REXX then passes it to MVS before >throughing an error. > Who excuses the unmatched "("? But do I remember vaguely that a missing ")" allowed in TSO commands? >EXECIO can be used under IRXMVS, > "IRXMVS"? "IRXJCL"? Whatever. >but you will need to use BPXWDYN if you want to do dynamic allocation >(under OS390, BPXWDYN was part of, and required,USS. As of zOS, >this is no longer the case). > IIRC, WJS early made BPXWDYN available as a load module on the Tools & Toys page, but it never depended on OMVS. Irritatingly, ADDRESS MVS EXECIO under OMVS has different syntax and semantics from ADDRESS MVS EXECIO under TSO. I understand that "ADDRESS sh 'time'" is different from "ADDRESS TSO 'time'", but the same host environment should be the same. On Tue, 24 Nov 2020 11:57:55 +1000, Peter Vels wrote: >x all 'foo bar' >del all x > Of course. Thanks. The drawback is that you're flying blind; you don't see the lines you're about to delete. But IIRC vaguely that there's a command that swaps X and NX lines. Counting keystrokes because I believe interactive editing should be a motor skill; ergonomically minimal: Don't you need a couple s in there? On Mon, 23 Nov 2020 20:20:31 -0600, Al Ferguson wrote: >Performance reasons. Without the quotes REXX first interprets MVS as a >variable name, which (probable) has not been set, so takes on the value of the >variable name in caps. By putting it in caps, and enclosing it in quotes, I >save REXX a few steps and it goes directly to the MVS ADDRESS environment to >find the EXECIO function. > The formal syntax of Rexx is a nightmare. Consider the differences between: address MVS address ( MVS ) address( MVS ) address( "MVS" ) ... all different. >... >I similarly “always” capitalize REXX Key words, to save REXX from having to >spend cycles actually FOLDING then up. Old habits, but again I think more >readable. > I doubt that matters much. But there's an obe\servable advantage of "x==y" over "X=Y". But beware the semantic difference. And function calls are expensive. PARSE is faster than SUBSTR() if you can do the same thing with either. -- gil -- 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: Has anyone integrated Rexx with IKJPARS?
Compressing REXX executable code in large packages is reasonable if the uncompressed form is available for maintenance. OS/2 has a neat trick; the first time you call a REXX script, the compiler saves the tokenized code in an extended attribute; the next time you call it, the interpreter uses the existing tokenized form. I once had the "pleasure" of getting a PL/I program with all unnecessary white space removed; I was not amused. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Al Ferguson Sent: Monday, November 23, 2020 11:14 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Has anyone integrated Rexx with IKJPARS? As for notable performance; we had a low memory, dual CP, water cooled, heavily overcommitted processor. My first major program covered IBM CSP v3.2 to v3.3, and converted DB2 View names w/shortened column names (7 characters or less, as v3.2 supported up to 8 character variables). This ran for 5.75 hours over our code base; ~5.25 with these and a few other optimizations (e.g. putting an entire DO loops on 1 line where possible). Since then IBM has made numerous REXX performance improvements and supports more memory, more efficiently. This means these optimizations are much less relevant. But, if your code is heavily used, it is still worth it. Also, I think it is more readable. Sent via Al Ferguson’s iPad > On Nov 23, 2020, at 21:56, Al Ferguson wrote: > > They are not necessary, but you can use a variable after the ADDRESS. I > have written a few REXX programs where I used: >ADDRESS CMD > > Where I set CMD = “environ actual-command”. > > Any non-quoted word will: >1.Be folded up to all caps, if not already >2.Determine if it is a “REXX reserved word” >(environments are not reserved words) >3.If not, it is a variable and is resolved >(non-initialized variables resolve to the variable name folded to all > caps) >4.The resolved string is then passed to the REXX Interpreter >5.Then executed (or if not executable, an error raised) > > Quoted strings are passed, as is, to the Interpreter; skipping the first 3 > steps. > > Sent via Al Ferguson’s iPad > >>> On Nov 23, 2020, at 20:50, Jeremy Nicoll >>> wrote: >>> >>> On Tue, 24 Nov 2020, at 02:20, Al Ferguson wrote: >>> Performance reasons. Without the quotes REXX first interprets MVS as a >>> variable name >> >> Are you sure? >> >> I thought that environment (after address) was one of the few places in >> REXX where quotes were unnecessary because what's typed there is >> regarded as a constant. >> >> And, that if you actually wanted a variable's value to be used, you'd have >> to code >> >> address value varname >> >> >>> Back in the MVS & MVS/XA Days, these types of performance optimizations >>> were actually quite noticeable. >> >> Even if what you said above was true, I doubt very much that capitalising >> the environment name would ever have make a measurable difference, >> bearing in mind how few times one would typically specify an address >> statement in a typical exec. >> >> >>> I similarly “always” capitalize REXX Key words, to save REXX from >>> having to spend cycles actually FOLDING then up. >> >> It's been years since I wrote any REXX on a mainframe, but I know I didn't >> uppercase my code back then ... and a quick look at current manuals shows >> sample code is sometimes in uppercase, and sometimes mixed case. >> >> Is this idea that uppercase REXX is more efficient something that everyone >> here accepts? >> >> -- >> Jeremy Nicoll - my opinions are my own. >> >> -- >> 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