Re: Friday Follies/Why won't this work?/TSO Rant #387
I would describe that as a failure of the panel; ALLOCATE is correctly processing the input it receives. How about an RFE for all panels that uppercase their command line to include an annotation that they do so or to display the translated input. As for concatenating classical datasets with Unix paths, that is but one example of many where the corpse of orthogonality lies bleeding on the ground. Nor is IBM the only poster child for that. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu] Sent: Sunday, May 24, 2020 11:37 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 On Sun, 24 May 2020 18:26:13 -0700, Charles Mills wrote: >... >+1 (What the H*** is gained by uppercasing a CART where the underlying >service supports any 64-bit value? Don't over validate! This is the problem >with various utilities that could handle UNIX files except that the utility >"validates" the filename and rejects slashes or lowercase letters.) > Most conspicuous to me is the failure of "TSO ALLOCATE PATH('/dev/null')" on various ISPF panel command lines. And semantic more than semantic, the failure of SYSEXEC or AMATERSE UNPACK SYSUT1 when allocated to UNIX directories or files. It seems to be a gratuitous check on DSORG which can be circumvented by pre-concatenating an empty Classic DSN. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
On Sun, 24 May 2020 18:26:13 -0700, Charles Mills wrote: >... >+1 (What the H*** is gained by uppercasing a CART where the underlying >service supports any 64-bit value? Don't over validate! This is the problem >with various utilities that could handle UNIX files except that the utility >"validates" the filename and rejects slashes or lowercase letters.) > Most conspicuous to me is the failure of "TSO ALLOCATE PATH('/dev/null')" on various ISPF panel command lines. And semantic more than semantic, the failure of SYSEXEC or AMATERSE UNPACK SYSUT1 when allocated to UNIX directories or files. It seems to be a gratuitous check on DSORG which can be circumvented by pre-concatenating an empty Classic DSN. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
> +1 (What the H*** is gained by uppercasing a CART where the underlying > service supports any 64-bit value? Inertia? Blind adherence to poorly understood specifications. There are lots of pathlogies in large organizations that could explain it. Report it, and if it comes back BAD then submit an RFE. There is nothing in TSO that either requires the misbehavior or that requires the documentation of the misbehavior to be camouflaged. I've already submitted an RFC, but IMHO it's the code that should be changed. -- 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: Sunday, May 24, 2020 9:26 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 +1 (SUBMIT) +1 (Doc) +1 (What the H*** is gained by uppercasing a CART where the underlying service supports any 64-bit value? Don't over validate! This is the problem with various utilities that could handle UNIX files except that the utility "validates" the filename and rejects slashes or lowercase letters.) I've done my part on various RCF's but not so far on this one. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Sunday, May 24, 2020 5:53 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Never mind case; when will SUBMIT recognize that 80 is not the only integer? Also, when TSO (sub)commands upper case their input, the documentation should say so in an obvious location as part of the (sub)command description. Finally, when a TSO (sub)command provides the facilities of a documented subroutine or assembler macro, it should not impose additional syntactic constraints or transformations beyond those documented for the underlying services. OTOH, people should RTFM and submit an RCF if they find TFM to be deficient. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu] Sent: Sunday, May 24, 2020 7:34 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 On Sun, 24 May 2020 14:26:51 -0700, Charles Mills wrote: > >'MyCart01' (as written, in camel-case) was my intended CART and it is a valid CART: a CART may have any 64-bit value. The problem was that the CONSOLE command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as to uppercase it the problem would have disappeared, but two wrongs don't make a right. > It's far overdue that interfaces quit forcing the limitations of the 029 keypunch on users. Decades ago, I learned that if I need upper case I press the SHIFT key; otherwise I should get what I type. It's fine for functions to be case insensitive, case sensitive, or monocase. It's wrong for upstream processes to second-guess -- they're too often wrong. And it was a design error for Binder to provide a CASE UPPER option. CASE MIXED, compatible with Linkage Editor, should always be in force. -- 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 -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Right! Let the service fail and then report its error. Don't introduce some new error to document and be learned. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Paul Gilmartin Sent: Sunday, May 24, 2020 6:19 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 On Mon, 25 May 2020 00:53:04 +, Seymour J Metz wrote: >Never mind case; when will SUBMIT recognize that 80 is not the only integer? > >Also, when TSO (sub)commands upper case their input, the documentation should >say so in an obvious location as part of the (sub)command description. > >Finally, when a TSO (sub)command provides the facilities of a documented >subroutine or assembler macro, it should not impose additional syntactic >constraints or transformations beyond those documented for the underlying >services. > Further, when a user violates the documented restrictions of a subroutine or assembler macro (possibly by directly issuing an SVC), that service should fail and report the error. I think of such as trying to STOW "Fred.txt". -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
+1 (SUBMIT) +1 (Doc) +1 (What the H*** is gained by uppercasing a CART where the underlying service supports any 64-bit value? Don't over validate! This is the problem with various utilities that could handle UNIX files except that the utility "validates" the filename and rejects slashes or lowercase letters.) I've done my part on various RCF's but not so far on this one. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Sunday, May 24, 2020 5:53 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Never mind case; when will SUBMIT recognize that 80 is not the only integer? Also, when TSO (sub)commands upper case their input, the documentation should say so in an obvious location as part of the (sub)command description. Finally, when a TSO (sub)command provides the facilities of a documented subroutine or assembler macro, it should not impose additional syntactic constraints or transformations beyond those documented for the underlying services. OTOH, people should RTFM and submit an RCF if they find TFM to be deficient. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu] Sent: Sunday, May 24, 2020 7:34 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 On Sun, 24 May 2020 14:26:51 -0700, Charles Mills wrote: > >'MyCart01' (as written, in camel-case) was my intended CART and it is a valid CART: a CART may have any 64-bit value. The problem was that the CONSOLE command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as to uppercase it the problem would have disappeared, but two wrongs don't make a right. > It's far overdue that interfaces quit forcing the limitations of the 029 keypunch on users. Decades ago, I learned that if I need upper case I press the SHIFT key; otherwise I should get what I type. It's fine for functions to be case insensitive, case sensitive, or monocase. It's wrong for upstream processes to second-guess -- they're too often wrong. And it was a design error for Binder to provide a CASE UPPER option. CASE MIXED, compatible with Linkage Editor, should always be in force. -- 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 -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
On Mon, 25 May 2020 00:53:04 +, Seymour J Metz wrote: >Never mind case; when will SUBMIT recognize that 80 is not the only integer? > >Also, when TSO (sub)commands upper case their input, the documentation should >say so in an obvious location as part of the (sub)command description. > >Finally, when a TSO (sub)command provides the facilities of a documented >subroutine or assembler macro, it should not impose additional syntactic >constraints or transformations beyond those documented for the underlying >services. > Further, when a user violates the documented restrictions of a subroutine or assembler macro (possibly by directly issuing an SVC), that service should fail and report the error. I think of such as trying to STOW "Fred.txt". >OTOH, people should RTFM and submit an RCF if they find TFM to be deficient. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Never mind case; when will SUBMIT recognize that 80 is not the only integer? Also, when TSO (sub)commands upper case their input, the documentation should say so in an obvious location as part of the (sub)command description. Finally, when a TSO (sub)command provides the facilities of a documented subroutine or assembler macro, it should not impose additional syntactic constraints or transformations beyond those documented for the underlying services. OTOH, people should RTFM and submit an RCF if they find TFM to be deficient. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Paul Gilmartin [000433f07816-dmarc-requ...@listserv.ua.edu] Sent: Sunday, May 24, 2020 7:34 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 On Sun, 24 May 2020 14:26:51 -0700, Charles Mills wrote: > >'MyCart01' (as written, in camel-case) was my intended CART and it is a valid >CART: a CART may have any 64-bit value. The problem was that the CONSOLE >command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as >to uppercase it the problem would have disappeared, but two wrongs don't make >a right. > It's far overdue that interfaces quit forcing the limitations of the 029 keypunch on users. Decades ago, I learned that if I need upper case I press the SHIFT key; otherwise I should get what I type. It's fine for functions to be case insensitive, case sensitive, or monocase. It's wrong for upstream processes to second-guess -- they're too often wrong. And it was a design error for Binder to provide a CASE UPPER option. CASE MIXED, compatible with Linkage Editor, should always be in force. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
On Sun, 24 May 2020 14:26:51 -0700, Charles Mills wrote: > >'MyCart01' (as written, in camel-case) was my intended CART and it is a valid >CART: a CART may have any 64-bit value. The problem was that the CONSOLE >command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as >to uppercase it the problem would have disappeared, but two wrongs don't make >a right. > It's far overdue that interfaces quit forcing the limitations of the 029 keypunch on users. Decades ago, I learned that if I need upper case I press the SHIFT key; otherwise I should get what I type. It's fine for functions to be case insensitive, case sensitive, or monocase. It's wrong for upstream processes to second-guess -- they're too often wrong. And it was a design error for Binder to provide a CASE UPPER option. CASE MIXED, compatible with Linkage Editor, should always be in force. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
No, the problem is you didn't adhere to the interface, possibly because the relevant statement is not (RCF submitted*) in the obvious location. CONSOLE is not the only case where you need to know the case behavior of the command. I never said that you should uppercase everything, only that you should use the *correct* case for the task at hand, and that I've seen a lot of errors stemming from the failure to do so. You are incorrect in your fantasy that you are a telepath. You are imputing to me beliefs and impressions that I have never held and claims that I have never made. Please rebut claims that people actually made, not claims you invented on the spot. As for the subject line, it's wrongheaded. It's not some abstract TSO in the sky that uppercased the CART, it's, e.g., the CONSOLE command, the CART subcommand. I've been using TSO commands with mixed case operands since before you could spell TSO, and they worked just fine. * You could try to submit a problem report, but I suspect that it will be closed as BAD. -- 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: Sunday, May 24, 2020 5:26 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 The problem was NOT that Rexx (or my coding style) failed to uppercase an operand; the problem was that TSO did. Note my subject line: a rant about TSO. 'MyCart01' (as written, in camel-case) was my intended CART and it is a valid CART: a CART may have any 64-bit value. The problem was that the CONSOLE command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as to uppercase it the problem would have disappeared, but two wrongs don't make a right. Had Rexx or my coding style inadvertently uppercased my intended CART it would simply have created a false impression of what constitutes a valid CART. Note what the first almost correct answerer posted: "Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find." He is incorrect in his impression of what constitutes a valid CART, and his wrong impression of CART validity would be reinforced if Rexx or my coding style "corrected" my camel-case CART. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Saturday, May 23, 2020 11:20 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > You seem stuck on this capitalization thing. You seem to forget that this thread started on a capitalization issue. You also seem to assume that my alleged fixation affects the way others code. You might note that of the three error issues I listed, capitalization was last - why did you single it out? > I’ve never had such a problem, K3wl. What about code written by others. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
The problem was NOT that Rexx (or my coding style) failed to uppercase an operand; the problem was that TSO did. Note my subject line: a rant about TSO. 'MyCart01' (as written, in camel-case) was my intended CART and it is a valid CART: a CART may have any 64-bit value. The problem was that the CONSOLE command uppercased it to MYCART01. Yes, had I written my Rexx in such a way as to uppercase it the problem would have disappeared, but two wrongs don't make a right. Had Rexx or my coding style inadvertently uppercased my intended CART it would simply have created a false impression of what constitutes a valid CART. Note what the first almost correct answerer posted: "Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find." He is incorrect in his impression of what constitutes a valid CART, and his wrong impression of CART validity would be reinforced if Rexx or my coding style "corrected" my camel-case CART. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Saturday, May 23, 2020 11:20 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > You seem stuck on this capitalization thing. You seem to forget that this thread started on a capitalization issue. You also seem to assume that my alleged fixation affects the way others code. You might note that of the three error issues I listed, capitalization was last - why did you single it out? > I’ve never had such a problem, K3wl. What about code written by others. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
> You seem stuck on this capitalization thing. You seem to forget that this thread started on a capitalization issue. You also seem to assume that my alleged fixation affects the way others code. You might note that of the three error issues I listed, capitalization was last - why did you single it out? > I’ve never had such a problem, K3wl. What about code written by others. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Phil Smith III [li...@akphs.com] Sent: Sunday, May 24, 2020 1:56 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Metz wrote: >Well, I've only been using REXX for 35 years. The problems that I have seen >from not quoting words have been few and far between, not nearly as many as, >e.g., problems related to continuation, omitting a period in a stem, incorrect >capitalization in a string literal. You seem stuck on this capitalization thing. I’ve never had such a problem, perhaps because I capitalize literals as needed. I’d never assume that mixed case in a literal is OK unless it’s deliberate, no matter the environment. Part of my Rexx Programming Style presentation, given at SHARE many times! 😊 I have seen nasty bugs from not quoting literals, not to mention the performance hit. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Metz wrote: >Well, I've only been using REXX for 35 years. The problems that I have seen >from not quoting words have been few and far between, not nearly as many as, >e.g., problems related to continuation, omitting a period in a stem, incorrect >capitalization in a string literal. You seem stuck on this capitalization thing. I’ve never had such a problem, perhaps because I capitalize literals as needed. I’d never assume that mixed case in a literal is OK unless it’s deliberate, no matter the environment. Part of my Rexx Programming Style presentation, given at SHARE many times! 😊 I have seen nasty bugs from not quoting literals, not to mention the performance hit. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Well, I've only been using REXX for 35 years. The problems that I have seen from not quoting words have been few and far between, not nearly as many as, e.g., problems related to continuation, omitting a period in a stem, incorrect capitalization in a string literal. BTDT,GTS -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Phil Smith III [li...@akphs.com] Sent: Friday, May 22, 2020 8:47 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Metz wrote: > Running with signal on novalue and quoting everything leads to hard-to-debug > surprises errors when you get the case wrong (present example is typical.) ;-) After almost 40 years of writing Rexx, I've never had that problem. Quoting literals avoids far more problems than it causes, as does SIGNAL ON NOVALUE. You want hard-to-debug surprises, try not quoting a literal and then having someone define a variable that happens to match your literal token. ...phsiii -- 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: Friday Follies/Why won't this work?/TSO Rant #387
This is great David, thank you kind sir On Sat, May 23, 2020 at 3:54 AM David Crayford wrote: > On 2020-05-23 3:20 AM, scott Ford wrote: > > I got bit on case and end of line characters using GIT. I was using > > Notepad++ and had the EOL set incorrectly, duh ! > > > Create a .gitattributes file to control line endings > https://www.edwardthomson.com/blog/git_for_windows_line_endings.html > > > > Scott > > > > On Fri, May 22, 2020 at 3:10 PM Seymour J Metz wrote: > > > >> While I started with upper case only languages and progressed to case > >> independent languages, there is a case for case dependent languages. It > >> helps if you have a good IDE. > >> > >> > >> -- > >> Shmuel (Seymour J.) Metz > >> http://mason.gmu.edu/~smetz3 > >> > >> > >> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on > behalf > >> of Steve Smith [sasd...@gmail.com] > >> Sent: Friday, May 22, 2020 3:00 PM > >> To: IBM-MAIN@LISTSERV.UA.EDU > >> Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > >> > >> Case sensitivity is the root of all evil. > >> > >> sas > >> > >> Disclaimer: The above may contain excessive generalization, hyperbole, > and > >> offend your sensibilities. I'd say I'm sorry, but that would just add > >> flat-out lying to the mix. > >> > >> -- > >> 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 > -- Scott Ford IDMWORKS z/OS Development -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
On 2020-05-23 3:20 AM, scott Ford wrote: I got bit on case and end of line characters using GIT. I was using Notepad++ and had the EOL set incorrectly, duh ! Create a .gitattributes file to control line endings https://www.edwardthomson.com/blog/git_for_windows_line_endings.html Scott On Fri, May 22, 2020 at 3:10 PM Seymour J Metz wrote: While I started with upper case only languages and progressed to case independent languages, there is a case for case dependent languages. It helps if you have a good IDE. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Steve Smith [sasd...@gmail.com] Sent: Friday, May 22, 2020 3:00 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Case sensitivity is the root of all evil. sas Disclaimer: The above may contain excessive generalization, hyperbole, and offend your sensibilities. I'd say I'm sorry, but that would just add flat-out lying to the mix. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Slight diversion. A colleague wanted some REXX code so I sent it as an XMIT file. He was working remotely and said, the RECEIVE fails. When I next saw him, I went to his desk and watched the RECEIVE command. Boom, "UNABLE TO ALLOCATE LOG.MISC". He had TSO PROFILE(NOPREFIX) and didn't have RACF ALTER against LOG prefix. For years he was wrapping quotes around his dataset names. I mean everywhere! On Sat, May 23, 2020 at 10:48 AM Phil Smith III wrote: > Metz wrote: > > > Running with signal on novalue and quoting everything leads to > hard-to-debug surprises errors when you get the case wrong (present > example is typical.) ;-) > > > > After almost 40 years of writing Rexx, I've never had that problem. > Quoting literals avoids far more problems than it causes, as > does SIGNAL ON NOVALUE. You want hard-to-debug surprises, try not quoting > a literal and then having someone define a variable that > happens to match your literal token. > > > > ...phsiii > > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Have to say that I agree 100% with @Phil (other than that I have only been coding Rexx for about 25 years). The other problem with omitting SIGNAL ON NOVALUE is that you can code IF ARG(1) = FOOO ... and never realize that ARG(1) will never equal FOOO because the variable is really named FOO, and FOOO will always have a value of, well, 'FOOO'. The problem is compounded by the fact that Rexx is not compiled and so references to undefined variables only show up if you actually execute the code in question, which may not happen in testing. (I know, everyone on this list tests every code path, but some of our associates might forget once in a while.) If you have access to a Rexx compiler I recommend compiling any significant "production" Rexx code. You don't have to actually run the compiled Rexx -- it's just that the compiler will pick up problems like omitted or misspelled labels that the interpreter may miss. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Phil Smith III Sent: Friday, May 22, 2020 5:48 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Metz wrote: > Running with signal on novalue and quoting everything leads to hard-to-debug surprises errors when you get the case wrong (present example is typical.) ;-) After almost 40 years of writing Rexx, I've never had that problem. Quoting literals avoids far more problems than it causes, as does SIGNAL ON NOVALUE. You want hard-to-debug surprises, try not quoting a literal and then having someone define a variable that happens to match your literal token. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Metz wrote: > Running with signal on novalue and quoting everything leads to hard-to-debug > surprises errors when you get the case wrong (present example is typical.) ;-) After almost 40 years of writing Rexx, I've never had that problem. Quoting literals avoids far more problems than it causes, as does SIGNAL ON NOVALUE. You want hard-to-debug surprises, try not quoting a literal and then having someone define a variable that happens to match your literal token. ...phsiii -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Running with signal on novalue and quoting everything leads to hard-to-debug surprises errors when you get the case wrong (present example is typical.) ;-) -- 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: Friday, May 22, 2020 4:56 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 True enough, but in my (actual) Rexx programs I always code Signal On Novalue. To do otherwise is to invite hard-to-debug surprises (present example notwithstanding). Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 12:28 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Hence my quote: had he not quoted the value then it would have been a symbol and REXX would have translated it to upper case. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
True enough, but in my (actual) Rexx programs I always code Signal On Novalue. To do otherwise is to invite hard-to-debug surprises (present example notwithstanding). Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 12:28 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Hence my quote: had he not quoted the value then it would have been a symbol and REXX would have translated it to upper case. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Hence my quote: had he not quoted the value then it would have been a symbol and REXX would have translated it to upper case. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Robert Garrett [rob...@garrettfamily.us] Sent: Friday, May 22, 2020 1:45 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find. Cheers, Robert -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 11:01 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- 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: Friday Follies/Why won't this work?/TSO Rant #387
I got bit on case and end of line characters using GIT. I was using Notepad++ and had the EOL set incorrectly, duh ! Scott On Fri, May 22, 2020 at 3:10 PM Seymour J Metz wrote: > While I started with upper case only languages and progressed to case > independent languages, there is a case for case dependent languages. It > helps if you have a good IDE. > > > -- > Shmuel (Seymour J.) Metz > http://mason.gmu.edu/~smetz3 > > > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf > of Steve Smith [sasd...@gmail.com] > Sent: Friday, May 22, 2020 3:00 PM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > > Case sensitivity is the root of all evil. > > sas > > Disclaimer: The above may contain excessive generalization, hyperbole, and > offend your sensibilities. I'd say I'm sorry, but that would just add > flat-out lying to the mix. > > -- > 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 > -- Scott Ford IDMWORKS z/OS Development -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
While I started with upper case only languages and progressed to case independent languages, there is a case for case dependent languages. It helps if you have a good IDE. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Steve Smith [sasd...@gmail.com] Sent: Friday, May 22, 2020 3:00 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Case sensitivity is the root of all evil. sas Disclaimer: The above may contain excessive generalization, hyperbole, and offend your sensibilities. I'd say I'm sorry, but that would just add flat-out lying to the mix. -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Not quite. Every TSO command parses its own operands, normally by calling IKJPARSE. If the operand description specifies ASIS the PARSE does not translate the operand to upper case. Ideally the command description would specify whether the operand is case dependent, but we don't live in an ideal world. As I hinted in my quote, this will work and will have the bonus of irritating Gil: MyCart = MyCart01 if you leave MyCart01 unquoted in the GETMSG(). The general rule is that the REXX variable pool can have lower case names but you have to use the value() function to access them; REXX normally translates names to upper case. -- 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: Friday, May 22, 2020 1:53 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 We have a winner! You've got it about 90%. The clue is in the subject line -- this is actually a TSO rant. TSO uppercases commands so "CART" MyCart becomes effectively "CART MYCART01". GETMSG is an ordinary Rexx function so parameters are passed "as-is," and RC = GETMSG('MYMSGS.','SOL',MyCart,,1) becomes effectively RC = GETMSG('MYMSGS.','SOL','MyCart01',,1). The two CARTs do not match, and no messages are retrieved. I think it is *possible* that you could solve the problem by quoting the CART but I have not tested. Something like "CART" "'"||MyCart||"'" . Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Robert Garrett Sent: Friday, May 22, 2020 10:46 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find. Cheers, Robert -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 11:01 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Case sensitivity is the root of all evil. sas Disclaimer: The above may contain excessive generalization, hyperbole, and offend your sensibilities. I'd say I'm sorry, but that would just add flat-out lying to the mix. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Charles, Just a document rc=4 from Getmsg , the getmsg could not match your criteria , filter ... Scott On Fri, May 22, 2020 at 1:58 PM Richards, Robert B. < 01c91f408b9e-dmarc-requ...@listserv.ua.edu> wrote: > Snippet: > > Cart_V = 'CONS1'random(100,) /* build CART value >*/ > pass_arg. = "CONSOLE SYSCMD("con_input") CART("Cart_V")" > "TSOEXEC CONSPROF SOLDISP(NO) SOLNUM(400)" > /* > activate Console services*/ > "TSOEXEC CONSOLE ACTIVATE NAME("con_name") CART("Cart_V")" > > -Original Message- > From: IBM Mainframe Discussion List On Behalf > Of Charles Mills > Sent: Friday, May 22, 2020 1:53 PM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > > We have a winner! You've got it about 90%. > > The clue is in the subject line -- this is actually a TSO rant. > > TSO uppercases commands so "CART" MyCart becomes effectively "CART > MYCART01". > > GETMSG is an ordinary Rexx function so parameters are passed "as-is," and > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) becomes effectively RC = > GETMSG('MYMSGS.','SOL','MyCart01',,1). > > The two CARTs do not match, and no messages are retrieved. > > I think it is *possible* that you could solve the problem by quoting the > CART but I have not tested. Something like "CART" "'"||MyCart||"'" . > > Charles > > > -Original Message- > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On > Behalf Of Robert Garrett > Sent: Friday, May 22, 2020 10:46 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > > Your problem is caused by using lower case characters in your CART > parameter > value, the value of variable MyCart. If you used all upper case, or all > numerics, it would work fine. > That's not documented anywhere that I've thus far been able to find. > > Cheers, > Robert > > -Original Message- > From: IBM Mainframe Discussion List On Behalf > Of Seymour J Metz > Sent: Friday, May 22, 2020 11:01 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > > > I called my congressman and he said quote > I'd like to help you son, but you're too young to vote. > > > > -- > 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: Friday, May 22, 2020 10:02 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > What is wrong with this Rexx? (I spent about two hours debugging before I > solved it.) The problem is right here on this page: the answer is NOT > something in RACF or JES2. It's not something missing: it's a sin of > commission, not a sin of omission. The below will never work. That is, the > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? > > /* Rexx to test command/response */ > MyCart = "MyCart01" > "CONSPROF SOLDISP(NO) SOLNUM(400)" > "CONSOLE ACTIVATE" > Address Console > "CART" MyCart > "$DQ" > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" > > 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 > > -- > 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 > -- Scott Ford IDMWORKS z/OS Development -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Snippet: Cart_V = 'CONS1'random(100,) /* build CART value */ pass_arg. = "CONSOLE SYSCMD("con_input") CART("Cart_V")" "TSOEXEC CONSPROF SOLDISP(NO) SOLNUM(400)" /* activate Console services*/ "TSOEXEC CONSOLE ACTIVATE NAME("con_name") CART("Cart_V")" -Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills Sent: Friday, May 22, 2020 1:53 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 We have a winner! You've got it about 90%. The clue is in the subject line -- this is actually a TSO rant. TSO uppercases commands so "CART" MyCart becomes effectively "CART MYCART01". GETMSG is an ordinary Rexx function so parameters are passed "as-is," and RC = GETMSG('MYMSGS.','SOL',MyCart,,1) becomes effectively RC = GETMSG('MYMSGS.','SOL','MyCart01',,1). The two CARTs do not match, and no messages are retrieved. I think it is *possible* that you could solve the problem by quoting the CART but I have not tested. Something like "CART" "'"||MyCart||"'" . Charles -Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Robert Garrett Sent: Friday, May 22, 2020 10:46 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find. Cheers, Robert -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 11:01 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- 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: Friday Follies/Why won't this work?/TSO Rant #387
We have a winner! You've got it about 90%. The clue is in the subject line -- this is actually a TSO rant. TSO uppercases commands so "CART" MyCart becomes effectively "CART MYCART01". GETMSG is an ordinary Rexx function so parameters are passed "as-is," and RC = GETMSG('MYMSGS.','SOL',MyCart,,1) becomes effectively RC = GETMSG('MYMSGS.','SOL','MyCart01',,1). The two CARTs do not match, and no messages are retrieved. I think it is *possible* that you could solve the problem by quoting the CART but I have not tested. Something like "CART" "'"||MyCart||"'" . Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Robert Garrett Sent: Friday, May 22, 2020 10:46 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find. Cheers, Robert -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 11:01 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Your problem is caused by using lower case characters in your CART parameter value, the value of variable MyCart. If you used all upper case, or all numerics, it would work fine. That's not documented anywhere that I've thus far been able to find. Cheers, Robert -Original Message- From: IBM Mainframe Discussion List On Behalf Of Seymour J Metz Sent: Friday, May 22, 2020 11:01 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
SYSCMD() is a valid alternative to Address Console but either one is good, and the Address Console in my Rexx is not the problem. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of scott Ford Sent: Friday, May 22, 2020 9:43 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Charles , I was incorrect here: READY CONSPROF SOLDISP(NO) SOLNUM(400) CONSOLE ACTIVATE CONSOLE SYSCMD($S PRT1) CART('PRT10001') CONSOLE SYSCMD($S PRT2) CART('PRT20002') EXEC MY.EXEC(CHKPRT) 'PRT10001' EXEC EXEC MY.EXEC(CHKPRT) 'PRT20002' EXEC The exec you invoke (CHKPRT) checks whether the printers were started successfully. The exec uses the arguments you pass on the invocation (CART values) as the CART on the GETMSG function. Figure 1 <https://www.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.ikja300/ikja300179.htm?view=kc#ikja300-gen179__chkprt> shows the example exec. Figure 1. Example exec (CHKPRT) to check start of printers /* REXX exec to check start of printers */ ARG CARTVAL GETCODE = GETMSG('PRTMSG.','SOL',CARTVAL,,60) IF GETCODE = 0 THEN DO IF POS('$HASP000',PRTMSG.1) ¬= 0 THEN SAY "Printer started successfully." ELSE DO INDXNUM = 1 TO PRTMSG.0 SAY PRTMSG.INDXNUM END END ELSE SAY "GETMSG error retrieving message. Return code is" GETCODE EXIT On Fri, May 22, 2020 at 12:40 PM scott Ford wrote: > Charles: > > I think that should be 'address mvs' ...scott > > On Fri, May 22, 2020 at 12:35 PM Charles Mills wrote: > >> Message handling is fine, other than one very specific problem that is >> inherent in the Rexx code posted. >> >> Note this is a Friday Folly, not a "real question." I know the answer >> (after 2+ hours of debug struggle!). >> >> Charles >> >> >> -Original Message- >> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On >> Behalf Of Joe Monk >> Sent: Friday, May 22, 2020 9:07 AM >> To: IBM-MAIN@LISTSERV.UA.EDU >> Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 >> >> Check your message handling ... >> >> Joe >> >> On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: >> >> > >> > I called my congressman and he said quote >> > I'd like to help you son, but you're too young to vote. >> > >> > >> > >> > -- >> > 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: Friday, May 22, 2020 10:02 AM >> > To: IBM-MAIN@LISTSERV.UA.EDU >> > Subject: Friday Follies/Why won't this work?/TSO Rant #387 >> > >> > What is wrong with this Rexx? (I spent about two hours debugging before >> I >> > solved it.) The problem is right here on this page: the answer is NOT >> > something in RACF or JES2. It's not something missing: it's a sin of >> > commission, not a sin of omission. The below will never work. That is, >> the >> > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? >> > >> > /* Rexx to test command/response */ >> > MyCart = "MyCart01" >> > "CONSPROF SOLDISP(NO) SOLNUM(400)" >> > "CONSOLE ACTIVATE" >> > Address Console >> > "CART" MyCart >> > "$DQ" >> > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) >> > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 >> > "CONSOLE DEACTIVATE" >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> > > > -- > > > > *IDMWORKS * > > Scott Ford > > z/OS Dev. > > > > > “By elevating a friend or Collegue you elevate yourself, by demeaning a > friend or collegue you demean yourself” > > > > www.idmworks.com > > scott.f...@idmworks.com > > Blog: www.idmworks.com/blog > > > > > > *The information contained in this email message and any attachment may be > privileged, confidential, proprietary or otherwise protected from > disclosure. If the reader of th
Re: Friday Follies/Why won't this work?/TSO Rant #387
Nope. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Richards, Robert B. Sent: Friday, May 22, 2020 9:38 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 If I turn on HILITE, will the answer become apparent? 😊 -Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills Sent: Friday, May 22, 2020 12:35 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Message handling is fine, other than one very specific problem that is inherent in the Rexx code posted. Note this is a Friday Folly, not a "real question." I know the answer (after 2+ hours of debug struggle!). Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Joe Monk Sent: Friday, May 22, 2020 9:07 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Check your message handling ... Joe On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: > > I called my congressman and he said quote > I'd like to help you son, but you're too young to vote. > > > > -- > 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: Friday, May 22, 2020 10:02 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > What is wrong with this Rexx? (I spent about two hours debugging > before I solved it.) The problem is right here on this page: the > answer is NOT something in RACF or JES2. It's not something missing: > it's a sin of commission, not a sin of omission. The below will never > work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = > MYMSGS.1. Why? > > /* Rexx to test command/response */ > MyCart = "MyCart01" > "CONSPROF SOLDISP(NO) SOLNUM(400)" > "CONSOLE ACTIVATE" > Address Console > "CART" MyCart > "$DQ" > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" > MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Charles , I was incorrect here: READY CONSPROF SOLDISP(NO) SOLNUM(400) CONSOLE ACTIVATE CONSOLE SYSCMD($S PRT1) CART('PRT10001') CONSOLE SYSCMD($S PRT2) CART('PRT20002') EXEC MY.EXEC(CHKPRT) 'PRT10001' EXEC EXEC MY.EXEC(CHKPRT) 'PRT20002' EXEC The exec you invoke (CHKPRT) checks whether the printers were started successfully. The exec uses the arguments you pass on the invocation (CART values) as the CART on the GETMSG function. Figure 1 <https://www.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.ikja300/ikja300179.htm?view=kc#ikja300-gen179__chkprt> shows the example exec. Figure 1. Example exec (CHKPRT) to check start of printers /* REXX exec to check start of printers */ ARG CARTVAL GETCODE = GETMSG('PRTMSG.','SOL',CARTVAL,,60) IF GETCODE = 0 THEN DO IF POS('$HASP000',PRTMSG.1) ¬= 0 THEN SAY "Printer started successfully." ELSE DO INDXNUM = 1 TO PRTMSG.0 SAY PRTMSG.INDXNUM END END ELSE SAY "GETMSG error retrieving message. Return code is" GETCODE EXIT On Fri, May 22, 2020 at 12:40 PM scott Ford wrote: > Charles: > > I think that should be 'address mvs' ...scott > > On Fri, May 22, 2020 at 12:35 PM Charles Mills wrote: > >> Message handling is fine, other than one very specific problem that is >> inherent in the Rexx code posted. >> >> Note this is a Friday Folly, not a "real question." I know the answer >> (after 2+ hours of debug struggle!). >> >> Charles >> >> >> -Original Message----- >> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On >> Behalf Of Joe Monk >> Sent: Friday, May 22, 2020 9:07 AM >> To: IBM-MAIN@LISTSERV.UA.EDU >> Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 >> >> Check your message handling ... >> >> Joe >> >> On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: >> >> > >> > I called my congressman and he said quote >> > I'd like to help you son, but you're too young to vote. >> > >> > >> > >> > -- >> > 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: Friday, May 22, 2020 10:02 AM >> > To: IBM-MAIN@LISTSERV.UA.EDU >> > Subject: Friday Follies/Why won't this work?/TSO Rant #387 >> > >> > What is wrong with this Rexx? (I spent about two hours debugging before >> I >> > solved it.) The problem is right here on this page: the answer is NOT >> > something in RACF or JES2. It's not something missing: it's a sin of >> > commission, not a sin of omission. The below will never work. That is, >> the >> > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? >> > >> > /* Rexx to test command/response */ >> > MyCart = "MyCart01" >> > "CONSPROF SOLDISP(NO) SOLNUM(400)" >> > "CONSOLE ACTIVATE" >> > Address Console >> > "CART" MyCart >> > "$DQ" >> > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) >> > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 >> > "CONSOLE DEACTIVATE" >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> > > > -- > > > > *IDMWORKS * > > Scott Ford > > z/OS Dev. > > > > > “By elevating a friend or Collegue you elevate yourself, by demeaning a > friend or collegue you demean yourself” > > > > www.idmworks.com > > scott.f...@idmworks.com > > Blog: www.idmworks.com/blog > > > > > > *The information contained in this email message and any attachment may be > privileged, confidential, proprietary or otherwise protected from > disclosure. If the reader of this message is not the intended recipient, > you are hereby notified that any dissemination, distribution, copying or > use of this message and any attachment is strictly prohibited. If you have > received this message in error, please notify us immediately by replying to > the message and permanently delete it from your computer and destroy any > printout thereof.* > -- *IDMWO
Re: Friday Follies/Why won't this work?/TSO Rant #387
Charles: I think that should be 'address mvs' ...scott On Fri, May 22, 2020 at 12:35 PM Charles Mills wrote: > Message handling is fine, other than one very specific problem that is > inherent in the Rexx code posted. > > Note this is a Friday Folly, not a "real question." I know the answer > (after 2+ hours of debug struggle!). > > Charles > > > -Original Message- > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On > Behalf Of Joe Monk > Sent: Friday, May 22, 2020 9:07 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 > > Check your message handling ... > > Joe > > On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: > > > > > I called my congressman and he said quote > > I'd like to help you son, but you're too young to vote. > > > > > > > > -- > > 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: Friday, May 22, 2020 10:02 AM > > To: IBM-MAIN@LISTSERV.UA.EDU > > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > > > What is wrong with this Rexx? (I spent about two hours debugging before I > > solved it.) The problem is right here on this page: the answer is NOT > > something in RACF or JES2. It's not something missing: it's a sin of > > commission, not a sin of omission. The below will never work. That is, > the > > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? > > > > /* Rexx to test command/response */ > > MyCart = "MyCart01" > > "CONSPROF SOLDISP(NO) SOLNUM(400)" > > "CONSOLE ACTIVATE" > > Address Console > > "CART" MyCart > > "$DQ" > > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) > > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 > > "CONSOLE DEACTIVATE" > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- *IDMWORKS * Scott Ford z/OS Dev. “By elevating a friend or Collegue you elevate yourself, by demeaning a friend or collegue you demean yourself” www.idmworks.com scott.f...@idmworks.com Blog: www.idmworks.com/blog *The information contained in this email message and any attachment may be privileged, confidential, proprietary or otherwise protected from disclosure. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution, copying or use of this message and any attachment is strictly prohibited. If you have received this message in error, please notify us immediately by replying to the message and permanently delete it from your computer and destroy any printout thereof.* -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
If I turn on HILITE, will the answer become apparent? 😊 -Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills Sent: Friday, May 22, 2020 12:35 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Message handling is fine, other than one very specific problem that is inherent in the Rexx code posted. Note this is a Friday Folly, not a "real question." I know the answer (after 2+ hours of debug struggle!). Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Joe Monk Sent: Friday, May 22, 2020 9:07 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Check your message handling ... Joe On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: > > I called my congressman and he said quote > I'd like to help you son, but you're too young to vote. > > > > -- > 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: Friday, May 22, 2020 10:02 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > What is wrong with this Rexx? (I spent about two hours debugging > before I solved it.) The problem is right here on this page: the > answer is NOT something in RACF or JES2. It's not something missing: > it's a sin of commission, not a sin of omission. The below will never > work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = > MYMSGS.1. Why? > > /* Rexx to test command/response */ > MyCart = "MyCart01" > "CONSPROF SOLDISP(NO) SOLNUM(400)" > "CONSOLE ACTIVATE" > Address Console > "CART" MyCart > "$DQ" > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" > MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" -- 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: Friday Follies/Why won't this work?/TSO Rant #387
Message handling is fine, other than one very specific problem that is inherent in the Rexx code posted. Note this is a Friday Folly, not a "real question." I know the answer (after 2+ hours of debug struggle!). Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Joe Monk Sent: Friday, May 22, 2020 9:07 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Check your message handling ... Joe On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: > > I called my congressman and he said quote > I'd like to help you son, but you're too young to vote. > > > > -- > 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: Friday, May 22, 2020 10:02 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > What is wrong with this Rexx? (I spent about two hours debugging before I > solved it.) The problem is right here on this page: the answer is NOT > something in RACF or JES2. It's not something missing: it's a sin of > commission, not a sin of omission. The below will never work. That is, the > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? > > /* Rexx to test command/response */ > MyCart = "MyCart01" > "CONSPROF SOLDISP(NO) SOLNUM(400)" > "CONSOLE ACTIVATE" > Address Console > "CART" MyCart > "$DQ" > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 > "CONSOLE DEACTIVATE" -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Nope, it is fine. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Richards, Robert B. Sent: Friday, May 22, 2020 8:19 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Friday Follies/Why won't this work?/TSO Rant #387 Address Console in wrong location? -Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills Sent: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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 -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
Check your message handling ... Joe On Fri, May 22, 2020 at 11:00 AM Seymour J Metz wrote: > > I called my congressman and he said quote > I'd like to help you son, but you're too young to vote. > > > > -- > 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: Friday, May 22, 2020 10:02 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Friday Follies/Why won't this work?/TSO Rant #387 > > What is wrong with this Rexx? (I spent about two hours debugging before I > solved it.) The problem is right here on this page: the answer is NOT > something in RACF or JES2. It's not something missing: it's a sin of > commission, not a sin of omission. The below will never work. That is, the > output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? > > /* Rexx to test command/response */ > MyCart = "MyCart01" > "CONSPROF SOLDISP(NO) SOLNUM(400)" > "CONSOLE ACTIVATE" > Address Console > "CART" MyCart > "$DQ" > RC = GETMSG('MYMSGS.','SOL',MyCart,,1) > Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 > "CONSOLE DEACTIVATE" > > 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 > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Friday Follies/Why won't this work?/TSO Rant #387
I called my congressman and he said quote I'd like to help you son, but you're too young to vote. -- 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: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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: Friday Follies/Why won't this work?/TSO Rant #387
Address Console in wrong location? -Original Message- From: IBM Mainframe Discussion List On Behalf Of Charles Mills Sent: Friday, May 22, 2020 10:02 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Friday Follies/Why won't this work?/TSO Rant #387 What is wrong with this Rexx? (I spent about two hours debugging before I solved it.) The problem is right here on this page: the answer is NOT something in RACF or JES2. It's not something missing: it's a sin of commission, not a sin of omission. The below will never work. That is, the output will always be RC = 4 , Msgs = MYMSGS.0 , Msg.1 = MYMSGS.1. Why? /* Rexx to test command/response */ MyCart = "MyCart01" "CONSPROF SOLDISP(NO) SOLNUM(400)" "CONSOLE ACTIVATE" Address Console "CART" MyCart "$DQ" RC = GETMSG('MYMSGS.','SOL',MyCart,,1) Say "RC =" RC ", Msgs =" MYMSGS.0 ", Msg.1 =" MYMSGS.1 "CONSOLE DEACTIVATE" 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