Re: What is a mainframe?

2020-01-17 Thread Scott Fagen
On Fri, 10 Jan 2020 15:25:52 -0800, Janet Sun <4jl...@gmail.com> wrote:

>Hi Steve,
>
>Kristine Harper created that video some years ago.
>
>Hope you're doing well.
>
>-- Janet
>

Kristine _Bastin_ nee Harper - wife of SHARE President, Justin Bastin.  Sadly 
(for us), she's no longer "working for a mainframe ISV."

Scott Fagen
21st Century Software

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


Re: FW: Montana is retiring its mainframe | StateScoop

2020-01-17 Thread Charles Mills
Yeah, this could end up being one of those "we're five years into a one-year 
project" things.

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Steve Smith
Sent: Friday, January 17, 2020 12:10 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: FW: Montana is retiring its mainframe | StateScoop

Yeah. but 3 apps left, over a year to go.  I'd call it a definite maybe
at this point.

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


Re: Montana is retiring its mainframe | StateScoop

2020-01-17 Thread Scott Fagen
On Fri, 17 Jan 2020 11:30:58 -0800, Charles Mills  wrote:

>https://statescoop.com/montana-state-government-retiring-mainframe-tim-bottenfield/SighCharlesSent
> from a mobile; please excuse the brevity.
>
>--
>For IBM-MAIN subscribe / signoff / archive access instructions,
>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Articles like these are more interesting in what they don't say than what they 
do say.  Many of the "services" that had been provided in the past by state and 
local mainframes have been moved to mainframes run by the feds, just like many 
federal departments have "outsourced" datacenter operations to the SSA, DISA, 
etc.

Scott Fagen
21st Century Software

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


Re: Tape problem

2020-01-17 Thread Russell Witt
Dean,
In that case, it sounds like the robot "forgot" which slot a tape volume was in 
and then found it again. Depending on how soon together the messages came out 
and if you had NEVER open'ed the door and manually moved any cartridges inside 
the robot - I would contact IBM to find out how/why the robot lost track of 
which slot a tape was in.
Russell 


-Original Message-
From: Nai, Dean 
To: IBM-MAIN 
Sent: Fri, Jan 17, 2020 1:16 pm
Subject: Re: Tape problem

These are physical tape. No VTS. 


Dean Nai    









On 1/16/20, 8:01 PM, "IBM Mainframe Discussion List on behalf of Russell Witt" 
 wrote:

> EXTERNAL:  Do not open attachments or click on links unless you recognize and 
> trust the sender.
>
>Brian and Dean, 
>
>Yes, you are correct. If you insert or define a new range of virtual-volumes 
>to the VTS; that will drive the CBRUXENT (ENTRY) exit. If you have the CA 1 
>version active, that will set the ROBTY field correctly as well as telling OAM 
>the status of the volume (active/private or scratch). And having the ROBTY 
>field set correctly is VERY important to CA 1. After all, we don't want to 
>call the Oracle/STK exit when a tape in the IBM VTS goes scratch and we don't 
>want to call CA-Vtape when an Oracle/STK volume goes scratch. So, based on the 
>ROBTY field we will call the appropriate interface module (if there is an 
>appropriate interface module, not all virtual-tape solutions have one).
>
>The original problem that Dean had mentioned (the CBR3770I and CBR3769I 
>messages)  however, has nothing to do with CA 1. Those messages are being 
>issued because OAM has somehow "lost" track of the volume and can't find it. 
>If it is a virtual-volume, that would be very strange. If it is a physical 
>volume that indicates that for some reason it isn't in the slot where OAM 
>thought it had put it. How far apart and in what order to you receive the 
>messages? If you get the CBR3770I first, and then the CBR3769I quickly after - 
>that would be very strange and I would recommend contacting IBM.
>
>Russell Witt
>CA 1 Architect
>
>-Original Message-
>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On 
>Behalf Of Brian Fraser
>Sent: Thursday, January 16, 2020 3:12 AM
>To: IBM-MAIN@LISTSERV.UA.EDU
>Subject: Re: Tape problem
>
>>> you forget to update the ROBTY and VENDOR fields
>
>I never update those fields.
>I just insert new volumes as scratch and the library takes care of everything.
>Unless it's handled by the INSERT exit?
>
>Brian
>
>On Thu, 16 Jan 2020 at 15:47, Brian Westerman 
>wrote:
>
>> It's not normally a CA-1 caused problem.  This is "normally" caused 
>> when tapes are added to the VTS and you forget to update the ROBTY and 
>> VENDOR fields so tht when a tape is used (and scratched) that CA-1 can 
>> tell the VTS and OAM that it's again available.
>>
>> Someone always forgets to do this at most sites when they add tapes, 
>> and it isn't a problem right away because it takes a while for the 
>> tapes to come up and be reused.
>>
>> Brian
>>
>> --
>> 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: Metal C using Z/OS macros in C macros

2020-01-17 Thread scott Ford
Check out Peter Relson’s Share presentation on Metal C , you can google it

On Fri, Jan 17, 2020 at 1:51 PM Joseph Reichman 
wrote:

> Got it
>
> The # operator
> The # (single number sign) operator converts a parameter of a
> function-like macro into a character string
> literal. For example, if macro ABC is defined using the following
> directive:
> #define ABC(x) #x
>
>
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf
> Of Seymour J Metz
> Sent: Friday, January 17, 2020 1:36 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> z/OS Version 2 Release 4 XL C/C++ Language Reference, SC14-7308-40
>
> https colon //
> www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4sc147308/$file/cbclx01_v2r4.pdf
>
> Chapter 17. Preprocessor directives
>
> P. 405
>
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Joseph Reichman 
> Sent: Friday, January 17, 2020 1:18 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> The only issue I have looking in the documentation in the metal C
> reference or The XL\C language reference which has some documentation on
> __asm
>
> No where is thre a thing about # and text substitution
>
>
>
>
>
> > On Jan 17, 2020, at 12:48 PM, Charles Mills  wrote:
> >
> > I am not an expert at all on C __asm and only barely something of an
> > expert on C macros so I avoided wading into this one. I will say
> >
> > 1. What @Peter Farley says sounds right to me.
> >
> > 2. Keep in mind that a macro definition in C does not "do anything"
> > (so to speak -- of course it does something). It just sets up future
> > text substitution. So at the time you define your macro no C variables
> > need exist. There are no preexisting conditions for a macro
> > definition. Your macro must be a syntactically valid macro, that's
> > all. Macro definition knows nothing about variable declarations -- you
> > are just setting up some rules for text substitution.
> >
> > Then when you invoke your macro, the C preprocessor will do its text
> > substitution magic. It will use your macro definition and your macro
> > invocation to create some alleged C code. Somewhat later, the C
> > compiler will attempt to compile that alleged C code. So if that C
> > code references a variable, then yes, that variable will have to have
> > been previously (earlier in the source code file) declared. Earlier as
> > in before the invocation of the macro, not necessarily before the
> definition of the macro.
> >
> > Charles
> >
> >
> > -Original Message-
> > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU]
> > On Behalf Of Farley, Peter x23353
> > Sent: Friday, January 17, 2020 8:31 AM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: Metal C using Z/OS macros in C macros
> >
> > The %0 and %1 are parameters to the __asm function, it will do the
> > substitution of the 2nd and 3rd parameter in the __asm(...) invocation
> > into the %0 and %1 spots in the 1st parameter.
> >
> > And I concur with your description - the *invocation* of the "SETUP(...)"
> > macro will specify the variables to be used and *those* variables are
> > the ones that need to be defined, "xx" and "yy" in your example.
> >
> > If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as
> > follows:
> >
> > SETUP(supstate,key)
> >
> > Then both "supstate" and "key" must be defined C variables.
> >
> > The __asm function does not *define* variables, it just *uses* them.
> > The variables mentioned in an __asm invocation must already be defined
> > in the C code.
> >
> > Peter
> >
> > -Original Message-
> > From: IBM Mainframe Discussion List  On
> > Behalf Of retired mainframer
> > Sent: Friday, January 17, 2020 11:06 AM
> > To: IBM-MAIN@LISTSERV.UA.EDU
> > Subject: Re: Metal C using Z/OS macros in C macros
> >
> > In you C code, when you "invoke" the macro, you would provide the
> > values of the two macro parameters.  Something like
> >SETSUP(xx,yy)
> > It is the xx and yy that would show up inside the two parenthetical
> > expressions in the generated code.  Keep in mind that a C macro
> > performs simple text substitution long before the actual compilation
> starts.
> >
> > Based on the generated code you show, you would not terminate the
> > above invocation with a semicolon.
> >
> > I've never used __asm but is
> >   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you
> > want the compiler to see?
> >
> > Are you using %0 and %1 to mean the macro parameters?  That is not the
> > way C macros work.
> >
> > It looks like there should be a line continuation back slash following
> > the left brace.  I don't think you want the one that follows the right
> > brace since there is no following line.
> >
> >> -Original Message-
> >> From: IBM Mainframe Discussion 

Re: Rexx or similar to clone a RACF user?

2020-01-17 Thread Jesse 1 Robinson
Cloning a userid is a very tricky proposition. For one thing, what does 'clone' 
mean to the requestor? If the userids have to be functionally 
identical/interchangeable, a great many paths and a cross tracks have to be 
explored. We don't have a program product to do this either, so it's a hit or 
miss exercise that involves a lot of tweaking when divergences are discovered. 
As Joel says, preference for groups over individual permissions is highly 
desirable, but that may be like remodeling the barn after the horse has 
escaped. Again. 

.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler 
SHARE MVS Program Co-Manager
323-715-0595 Mobile
626-543-6132 Office ⇐=== NEW
robin...@sce.com

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Joel C. Ewing
Sent: Friday, January 17, 2020 1:19 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: (External):Re: Rexx or similar to clone a RACF user?

Unless things have changed, the problem is that RACF permissions granted 
directly to a user to a dataset profile or other resource profile are stored as 
part of that resource profile, not as part of a user profile.   While user 
attributes and group connections to a user are easy to clone just by looking at 
or parsing a display of the to-be-cloned user profile,  unless your 
installation only grants permissions via groups that are then connected to 
users, in the worst case you are forced to examine ALL resource profiles to see 
which ones had permissions for the to-be-cloned user profile and grant similar 
permits to the new user profile.

While it could be done, It was judged impractical to examine all 
resource-to-user permissions from the actual RACF database; so we used a 
standard RACF utility to dump the RACF database in a format that could then be 
uploaded into DB2 tables every night.   The DB2 tables could be efficiently 
queried to find what resource permits were granted to a specific user and 
needed to be cloned, and we just cloned from userids that we knew hadn't been 
changed since the last RACF DB2 table build. We did use REXX code to do the 
cloning, but it used a combination of RACF commands and DB2 queries to 
determine what needed to be done. Our Rexx code was not completely generic, but 
was customized for our installation's RACF standards and conventions, which 
meant that some classes of resource profiles were only granted to group 
profiles and could be safely ignored when cloning a user as they would be 
covered by replicating the group connects for the user.
     Joel C Ewing

On 1/17/20 12:25 PM, Charles Mills wrote:
> X-posted RACF-L and IBM-MAIN.
>
>   
>
> A Google search reveals that the question "how do I clone a user in RACF?"
> has been asked before and the answer is basically "buy Vanguard, 
> Beta88 or zSecure." People also mentioned "you might write a Rexx script to 
> do this."
>
>   
>
> Not having one of those proprietary products I searched the CBT tape 
> to see if such a Rexx script were to be found there, without success.
>
>   
>
> So my question is: does anyone know of a CBT or similar tool to clone 
> a RACF user, or does anyone have a Rexx script that they might be willing to 
> share?


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


Re: Rexx or similar to clone a RACF user?

2020-01-17 Thread Joel C. Ewing
Unless things have changed, the problem is that RACF permissions granted 
directly to a user to a dataset profile or other resource profile are 
stored as part of that resource profile, not as part of a user 
profile.   While user attributes and group connections to a user are 
easy to clone just by looking at or parsing a display of the 
to-be-cloned user profile,  unless your installation only grants 
permissions via groups that are then connected to users, in the worst 
case you are forced to examine ALL resource profiles to see which ones 
had permissions for the to-be-cloned user profile and grant similar 
permits to the new user profile.


While it could be done, It was judged impractical to examine all 
resource-to-user permissions from the actual RACF database; so we used a 
standard RACF utility to dump the RACF database in a format that could 
then be uploaded into DB2 tables every night.   The DB2 tables could be 
efficiently queried to find what resource permits were granted to a 
specific user and needed to be cloned, and we just cloned from userids 
that we knew hadn't been changed since the last RACF DB2 table build.   
We did use REXX code to do the cloning, but it used a combination of 
RACF commands and DB2 queries to determine what needed to be done. Our 
Rexx code was not completely generic, but was customized for our 
installation's RACF standards and conventions, which meant that some 
classes of resource profiles were only granted to group profiles and 
could be safely ignored when cloning a user as they would be covered by 
replicating the group connects for the user.

    Joel C Ewing

On 1/17/20 12:25 PM, Charles Mills wrote:

X-posted RACF-L and IBM-MAIN.

  


A Google search reveals that the question "how do I clone a user in RACF?"
has been asked before and the answer is basically "buy Vanguard, Beta88 or
zSecure." People also mentioned "you might write a Rexx script to do this."

  


Not having one of those proprietary products I searched the CBT tape to see
if such a Rexx script were to be found there, without success.

  


So my question is: does anyone know of a CBT or similar tool to clone a RACF
user, or does anyone have a Rexx script that they might be willing to share?

  


Thanks,

  


Charles



--
Joel C. Ewing

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


Re: FW: Montana is retiring its mainframe | StateScoop

2020-01-17 Thread Steve Smith
Yeah. but 3 apps left, over a year to go.  I'd call it a definite maybe
at this point.

sas

On Fri, Jan 17, 2020 at 2:33 PM Charles Mills  wrote:

> Well, my d@mned phone made hash out of that. Trying again.
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of Charles Mills
> Sent: Friday, January 17, 2020 11:31 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Montana is retiring its mainframe | StateScoop
>
>
> https://statescoop.com/montana-state-government-retiring-mainframe-tim-bottenfield/
>
> Sigh
>
> Charles
>
> Sent from a mobile; please excuse the brevity.
>
> --
> 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
>


-- 
sas

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


FW: Montana is retiring its mainframe | StateScoop

2020-01-17 Thread Charles Mills
Well, my d@mned phone made hash out of that. Trying again.

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Charles Mills
Sent: Friday, January 17, 2020 11:31 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Montana is retiring its mainframe | StateScoop

https://statescoop.com/montana-state-government-retiring-mainframe-tim-bottenfield/

Sigh

Charles

Sent from a mobile; please excuse the brevity.

--
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


Montana is retiring its mainframe | StateScoop

2020-01-17 Thread Charles Mills
https://statescoop.com/montana-state-government-retiring-mainframe-tim-bottenfield/SighCharlesSent
 from a mobile; please excuse the brevity.

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


Re: Starting an application in ISPF

2020-01-17 Thread Seymour J Metz
LIBDEF ISPLLIB serves the purpose - except when it doesn't.


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



From: IBM Mainframe Discussion List  on behalf of 
Lionel B Dyck 
Sent: Friday, January 17, 2020 1:47 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

And you can altlib as well - sadly you can't TSOLIB within ISPF but you can
dynamic steplib with Dan Dalby's Dynamic Steplib on CBT File 452 (which
works with z/OS 2.4 with no problems contrary to some vendors claims).


Lionel B. Dyck <
Website: 
http://secure-web.cisco.com/15rkwwonZqrhZnp_JWZx9WXLf6Lp2dbYaky1-pvuw2ILEXta-_5pSsFvvh1lnEbHrDBptkp2jRRgamoWr7jWnxsq3tZxS8y9inL74jeWdNeuKd2gWX0xxbe9AmGC6fIazjo9WzV4qwK6iYvo6fGKsonlk9euVjtfvVYfNgXMEgBRsM8Vdp3XEb61KpniVyrYnQ-UplOeEVf19kqps3vU2SCJCC_Cue99axqLvE-Q0beLa3TUf8rA92yjF4JbdRvo80-SpygrsnvpaqKlkX_hUEGMNcz2il2Svh0EHTowMG3iaBQVfQyutgn31V-VdK_m5eJ5FeY1Tzz0AHjvEdYZke0ANv-HvObTZsuRRjnfzzv_Ue9_ho2Ow2j480FmWa96p/http%3A%2F%2Fwww.lbdsoftware.com

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

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of
Seymour J Metz
Sent: Friday, January 17, 2020 12:29 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

You can write a script to LIBDEF the libraries that you need and then invoke
ISMF. Put the script into you command table or panel definition.


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



From: IBM Mainframe Discussion List  on behalf of
Frank Swarbrick 
Sent: Thursday, January 16, 2020 6:23 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Starting an application in ISPF

I am a developer who wants to start up the ISMF application.  Being a
developer I don't have it as an option on any ISPF menu.  Documentation
states I can use "ISPSTART PGM(DGTFMD01) NEWAPPL(DGT)" from TSO.  This
works, but then I have only that application running, and not my other ISPF
"stuff".  Is there a similar command I can use to start it from within ISPF?

--
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: Metal C using Z/OS macros in C macros

2020-01-17 Thread Joseph Reichman
Got it

The # operator
The # (single number sign) operator converts a parameter of a function-like 
macro into a character string
literal. For example, if macro ABC is defined using the following directive:
#define ABC(x) #x


-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Seymour J Metz
Sent: Friday, January 17, 2020 1:36 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

z/OS Version 2 Release 4 XL C/C++ Language Reference, SC14-7308-40

https colon 
//www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4sc147308/$file/cbclx01_v2r4.pdf

Chapter 17. Preprocessor directives

P. 405



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



From: IBM Mainframe Discussion List  on behalf of 
Joseph Reichman 
Sent: Friday, January 17, 2020 1:18 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

The only issue I have looking in the documentation in the metal C reference or 
The XL\C language reference which has some documentation on __asm

No where is thre a thing about # and text substitution





> On Jan 17, 2020, at 12:48 PM, Charles Mills  wrote:
>
> I am not an expert at all on C __asm and only barely something of an 
> expert on C macros so I avoided wading into this one. I will say
>
> 1. What @Peter Farley says sounds right to me.
>
> 2. Keep in mind that a macro definition in C does not "do anything" 
> (so to speak -- of course it does something). It just sets up future 
> text substitution. So at the time you define your macro no C variables 
> need exist. There are no preexisting conditions for a macro 
> definition. Your macro must be a syntactically valid macro, that's 
> all. Macro definition knows nothing about variable declarations -- you 
> are just setting up some rules for text substitution.
>
> Then when you invoke your macro, the C preprocessor will do its text 
> substitution magic. It will use your macro definition and your macro 
> invocation to create some alleged C code. Somewhat later, the C 
> compiler will attempt to compile that alleged C code. So if that C 
> code references a variable, then yes, that variable will have to have 
> been previously (earlier in the source code file) declared. Earlier as 
> in before the invocation of the macro, not necessarily before the definition 
> of the macro.
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] 
> On Behalf Of Farley, Peter x23353
> Sent: Friday, January 17, 2020 8:31 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> The %0 and %1 are parameters to the __asm function, it will do the 
> substitution of the 2nd and 3rd parameter in the __asm(...) invocation 
> into the %0 and %1 spots in the 1st parameter.
>
> And I concur with your description - the *invocation* of the "SETUP(...)"
> macro will specify the variables to be used and *those* variables are 
> the ones that need to be defined, "xx" and "yy" in your example.
>
> If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as
> follows:
>
> SETUP(supstate,key)
>
> Then both "supstate" and "key" must be defined C variables.
>
> The __asm function does not *define* variables, it just *uses* them.  
> The variables mentioned in an __asm invocation must already be defined 
> in the C code.
>
> Peter
>
> -Original Message-
> From: IBM Mainframe Discussion List  On 
> Behalf Of retired mainframer
> Sent: Friday, January 17, 2020 11:06 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> In you C code, when you "invoke" the macro, you would provide the 
> values of the two macro parameters.  Something like
>SETSUP(xx,yy)
> It is the xx and yy that would show up inside the two parenthetical 
> expressions in the generated code.  Keep in mind that a C macro 
> performs simple text substitution long before the actual compilation starts.
>
> Based on the generated code you show, you would not terminate the 
> above invocation with a semicolon.
>
> I've never used __asm but is
>   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you 
> want the compiler to see?
>
> Are you using %0 and %1 to mean the macro parameters?  That is not the 
> way C macros work.
>
> It looks like there should be a line continuation back slash following 
> the left brace.  I don't think you want the one that follows the right 
> brace since there is no following line.
>
>> -Original Message-
>> From: IBM Mainframe Discussion List  On 
>> Behalf Of Joseph Reichman
>> Sent: Friday, January 17, 2020 5:22 AM
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Subject: Metal C using Z/OS macros in C macros
>>
>> Just wondering if I can do something like this
>>
>> #define SETSUP(supstate,key) \
>> {
>> __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>> }   \
>>
>> Seems 

Re: Starting an application in ISPF

2020-01-17 Thread Lionel B Dyck
And you can altlib as well - sadly you can't TSOLIB within ISPF but you can
dynamic steplib with Dan Dalby's Dynamic Steplib on CBT File 452 (which
works with z/OS 2.4 with no problems contrary to some vendors claims).


Lionel B. Dyck <
Website: http://www.lbdsoftware.com

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

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of
Seymour J Metz
Sent: Friday, January 17, 2020 12:29 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

You can write a script to LIBDEF the libraries that you need and then invoke
ISMF. Put the script into you command table or panel definition.


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



From: IBM Mainframe Discussion List  on behalf of
Frank Swarbrick 
Sent: Thursday, January 16, 2020 6:23 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Starting an application in ISPF

I am a developer who wants to start up the ISMF application.  Being a
developer I don't have it as an option on any ISPF menu.  Documentation
states I can use "ISPSTART PGM(DGTFMD01) NEWAPPL(DGT)" from TSO.  This
works, but then I have only that application running, and not my other ISPF
"stuff".  Is there a similar command I can use to start it from within ISPF?

--
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: Metal C using Z/OS macros in C macros

2020-01-17 Thread Seymour J Metz
z/OS Version 2 Release 4 XL C/C++ Language Reference, SC14-7308-40

https colon 
//www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4sc147308/$file/cbclx01_v2r4.pdf

Chapter 17. Preprocessor directives

P. 405



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



From: IBM Mainframe Discussion List  on behalf of 
Joseph Reichman 
Sent: Friday, January 17, 2020 1:18 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

The only issue I have looking in the documentation in the metal C reference or
The XL\C language reference which has some documentation on __asm

No where is thre a thing about # and text substitution





> On Jan 17, 2020, at 12:48 PM, Charles Mills  wrote:
>
> I am not an expert at all on C __asm and only barely something of an expert
> on C macros so I avoided wading into this one. I will say
>
> 1. What @Peter Farley says sounds right to me.
>
> 2. Keep in mind that a macro definition in C does not "do anything" (so to
> speak -- of course it does something). It just sets up future text
> substitution. So at the time you define your macro no C variables need
> exist. There are no preexisting conditions for a macro definition. Your
> macro must be a syntactically valid macro, that's all. Macro definition
> knows nothing about variable declarations -- you are just setting up some
> rules for text substitution.
>
> Then when you invoke your macro, the C preprocessor will do its text
> substitution magic. It will use your macro definition and your macro
> invocation to create some alleged C code. Somewhat later, the C compiler
> will attempt to compile that alleged C code. So if that C code references a
> variable, then yes, that variable will have to have been previously (earlier
> in the source code file) declared. Earlier as in before the invocation of
> the macro, not necessarily before the definition of the macro.
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of Farley, Peter x23353
> Sent: Friday, January 17, 2020 8:31 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> The %0 and %1 are parameters to the __asm function, it will do the
> substitution of the 2nd and 3rd parameter in the __asm(...) invocation into
> the %0 and %1 spots in the 1st parameter.
>
> And I concur with your description - the *invocation* of the "SETUP(...)"
> macro will specify the variables to be used and *those* variables are the
> ones that need to be defined, "xx" and "yy" in your example.
>
> If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as
> follows:
>
> SETUP(supstate,key)
>
> Then both "supstate" and "key" must be defined C variables.
>
> The __asm function does not *define* variables, it just *uses* them.  The
> variables mentioned in an __asm invocation must already be defined in the C
> code.
>
> Peter
>
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf Of
> retired mainframer
> Sent: Friday, January 17, 2020 11:06 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
>
> In you C code, when you "invoke" the macro, you would provide the values of
> the two macro parameters.  Something like
>SETSUP(xx,yy)
> It is the xx and yy that would show up inside the two parenthetical
> expressions in the generated code.  Keep in mind that a C macro performs
> simple text substitution long before the actual compilation starts.
>
> Based on the generated code you show, you would not terminate the above
> invocation with a semicolon.
>
> I've never used __asm but is
>   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you want
> the compiler to see?
>
> Are you using %0 and %1 to mean the macro parameters?  That is not the way C
> macros work.
>
> It looks like there should be a line continuation back slash following the
> left brace.  I don't think you want the one that follows the right brace
> since there is no following line.
>
>> -Original Message-
>> From: IBM Mainframe Discussion List  On
>> Behalf Of Joseph Reichman
>> Sent: Friday, January 17, 2020 5:22 AM
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Subject: Metal C using Z/OS macros in C macros
>>
>> Just wondering if I can do something like this
>>
>> #define SETSUP(supstate,key) \
>> {
>> __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>> }   \
>>
>> Seems like the variables have to be defined
>
> --
>
> This message and any attachments are intended only for the use of the
> addressee and may contain information that is privileged and confidential.
> If the reader of the message is not the intended recipient or an authorized
> representative of the intended recipient, you are hereby notified that any
> dissemination of this communication is strictly 

Re: Starting an application in ISPF

2020-01-17 Thread Seymour J Metz
You can write a script to LIBDEF the libraries that you need and then invoke 
ISMF. Put the script into you command table or panel definition.


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



From: IBM Mainframe Discussion List  on behalf of 
Frank Swarbrick 
Sent: Thursday, January 16, 2020 6:23 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Starting an application in ISPF

I am a developer who wants to start up the ISMF application.  Being a developer 
I don't have it as an option on any ISPF menu.  Documentation states I can use 
"ISPSTART PGM(DGTFMD01) NEWAPPL(DGT)" from TSO.  This works, but then I have 
only that application running, and not my other ISPF "stuff".  Is there a 
similar command I can use to start it from within ISPF?

--
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


Rexx or similar to clone a RACF user?

2020-01-17 Thread Charles Mills
X-posted RACF-L and IBM-MAIN.

 

A Google search reveals that the question "how do I clone a user in RACF?"
has been asked before and the answer is basically "buy Vanguard, Beta88 or
zSecure." People also mentioned "you might write a Rexx script to do this."

 

Not having one of those proprietary products I searched the CBT tape to see
if such a Rexx script were to be found there, without success.

 

So my question is: does anyone know of a CBT or similar tool to clone a RACF
user, or does anyone have a Rexx script that they might be willing to share?

 

Thanks,

 

Charles

 


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


Re: Starting an application in ISPF

2020-01-17 Thread Seymour J Metz
You can LIBDEF almost everything.


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



From: IBM Mainframe Discussion List  on behalf of 
Frank Swarbrick 
Sent: Thursday, January 16, 2020 7:52 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

"Luckily", whoever set up our system apparently included all of the allocations 
in our standard logon, so I was able to follow Steve Smith's recommendation.  
But your reply is certainly good reference.  Thanks!


From: IBM Mainframe Discussion List  on behalf of 
Jesse 1 Robinson <02b46c9bbdf0-dmarc-requ...@listserv.ua.edu>
Sent: Thursday, January 16, 2020 5:41 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: Starting an application in ISPF

An ISPF application needs to have all related data sets allocated before the 
application itself starts running. For the 'PDF' application, folks will have 
all necessary ISPxLIBs allocated by logon proc or by some front-end REXX. In 
our shop, applications like ISMF are considered specialized utilities that only 
a handful of folks are expected to run, so it doesn't make sense for every user 
to allocate libraries that will never be used. The problem with just "ISPSTART 
PGM(DGTFMD01) NEWAPPL(DGT)" is that the typical user--in this case YOU--will 
not have the right ISPxLIB environment. Same here, so what we do is provide 
this lines on a menu that the appropriate folks have allocated:

%   ISMF +ISMF%-+Invoke Space Management Functions
...
ISMF,'cmd(%ismfinit ) newappl(dgt) nocheck'
...

This menu can be in your own (pre-allocated) panel library.

REXX ISFMINIT contains this:

/* REXX */
TRACE N
PARSE ARG nextopt .
ADDRESS ISPEXEC
"LIBDEF ISPMLIB DATASET STACK ID('SYS1.DGTMLIB' 'SYS1.DFQMLIB')"
"LIBDEF ISPPLIB DATASET STACK ID('SYS1.DGTPLIB' 'SYS1.DFQPLIB')"
"LIBDEF ISPSLIB DATASET STACK ID('SYS1.DGTSLIB')"
"LIBDEF ISPTLIB DATASET STACK ID('SYS1.DGTTLIB')"
ADDRESS TSO "ALTLIB ACT APPL(CLIST) DATASET('SYS1.DGTCLIB')"
"SELECT PGM(DGTFMD01) PARM("nextopt")"
"LIBDEF ISPMLIB DATASET"
"LIBDEF ISPPLIB DATASET"
"LIBDEF ISPSLIB DATASET"
"LIBDEF ISPTLIB DATASET"
ADDRESS TSO "ALTLIB RESET"

You will need SAF READ access to the ISMF libraries, whatever they're called in 
your shop.


.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler
SHARE MVS Program Co-Manager
323-715-0595 Mobile
626-543-6132 Office ⇐=== NEW
robin...@sce.com

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Steve Smith
Sent: Thursday, January 16, 2020 4:17 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: (External):Re: Starting an application in ISPF

Just write and invoke a simple exec (or clist if that's your thing):

 /* REXX */
 ADDRESS ISPEXEC
 'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
 EXIT

You could also invoke it from option 7.1 (Dialog Test), but that adds some 
overhead.

sas


On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick 
wrote:

> Doesn't work for me.  Must not be in my "profile" or something.


--
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: Metal C using Z/OS macros in C macros

2020-01-17 Thread Joseph Reichman
The only issue I have looking in the documentation in the metal C reference or 
The XL\C language reference which has some documentation on __asm

No where is thre a thing about # and text substitution 





> On Jan 17, 2020, at 12:48 PM, Charles Mills  wrote:
> 
> I am not an expert at all on C __asm and only barely something of an expert
> on C macros so I avoided wading into this one. I will say
> 
> 1. What @Peter Farley says sounds right to me.
> 
> 2. Keep in mind that a macro definition in C does not "do anything" (so to
> speak -- of course it does something). It just sets up future text
> substitution. So at the time you define your macro no C variables need
> exist. There are no preexisting conditions for a macro definition. Your
> macro must be a syntactically valid macro, that's all. Macro definition
> knows nothing about variable declarations -- you are just setting up some
> rules for text substitution.
> 
> Then when you invoke your macro, the C preprocessor will do its text
> substitution magic. It will use your macro definition and your macro
> invocation to create some alleged C code. Somewhat later, the C compiler
> will attempt to compile that alleged C code. So if that C code references a
> variable, then yes, that variable will have to have been previously (earlier
> in the source code file) declared. Earlier as in before the invocation of
> the macro, not necessarily before the definition of the macro.
> 
> Charles
> 
> 
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
> Behalf Of Farley, Peter x23353
> Sent: Friday, January 17, 2020 8:31 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
> 
> The %0 and %1 are parameters to the __asm function, it will do the
> substitution of the 2nd and 3rd parameter in the __asm(...) invocation into
> the %0 and %1 spots in the 1st parameter.
> 
> And I concur with your description - the *invocation* of the "SETUP(...)"
> macro will specify the variables to be used and *those* variables are the
> ones that need to be defined, "xx" and "yy" in your example.
> 
> If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as
> follows:
> 
> SETUP(supstate,key)
> 
> Then both "supstate" and "key" must be defined C variables.
> 
> The __asm function does not *define* variables, it just *uses* them.  The
> variables mentioned in an __asm invocation must already be defined in the C
> code.
> 
> Peter
> 
> -Original Message-
> From: IBM Mainframe Discussion List  On Behalf Of
> retired mainframer
> Sent: Friday, January 17, 2020 11:06 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Metal C using Z/OS macros in C macros
> 
> In you C code, when you "invoke" the macro, you would provide the values of
> the two macro parameters.  Something like
>SETSUP(xx,yy)
> It is the xx and yy that would show up inside the two parenthetical
> expressions in the generated code.  Keep in mind that a C macro performs
> simple text substitution long before the actual compilation starts.
> 
> Based on the generated code you show, you would not terminate the above
> invocation with a semicolon.
> 
> I've never used __asm but is
>   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you want
> the compiler to see?
> 
> Are you using %0 and %1 to mean the macro parameters?  That is not the way C
> macros work.
> 
> It looks like there should be a line continuation back slash following the
> left brace.  I don't think you want the one that follows the right brace
> since there is no following line.
> 
>> -Original Message-
>> From: IBM Mainframe Discussion List  On 
>> Behalf Of Joseph Reichman
>> Sent: Friday, January 17, 2020 5:22 AM
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Subject: Metal C using Z/OS macros in C macros
>> 
>> Just wondering if I can do something like this
>> 
>> #define SETSUP(supstate,key) \
>> {
>> __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>> }   \
>> 
>> Seems like the variables have to be defined
> 
> --
> 
> This message and any attachments are intended only for the use of the
> addressee and may contain information that is privileged and confidential.
> If the reader of the message is not the intended recipient or an authorized
> representative of the intended recipient, you are hereby notified that any
> dissemination of this communication is strictly prohibited. If you have
> received this communication in error, please notify us immediately by e-mail
> and delete the message and any attachments from your system.
> 
> --
> 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 / 

Re: Starting an application in ISPF

2020-01-17 Thread Lionel B Dyck
What I've done is have an ISPF startup (zstart) command that dynamically
adds the commands I want to the active ISPF command table. This way each
user can do their own and it is easy and you don't have to 'bother' the
sysprog (who may not allow the updates to the real command tables).

I call it ISPFCMDS - available at http://lbdsoftware.com/ispftools.html or
www.cbttape.org in file 312.

Function:  Add user ispf commands to an active ispf
   command table.  
   
   It is recommended that all commands be added
   to the User command table if it is available.   
   
   This is intended to be called from a user exec  
   to add their own commands to the specified  
   ispf command table. 
   
   If the command to be added already exists then  
   the existing command entry in the table will
   be replaced with the new command.   
   
Syntax:%ispfcmds table ispf-command-table-entry \ desc 
   
   if table = * then default to (in order) 
  User table   
  Site table   
  Current Applid Table or ISPCMDS   

   if table = USER then the user table is updated
   if table = SITE then the site table is updated
   if table = ISPF then the ISPCMDS Table is 
  updated
 
   The ispf-command-table-entry is in the format:
 
   verb trunc action \ description   
 
   each separated by a space 
 
Usage: Sample usage: 
 
   from an exec: 
   "%ispfcmds * dd 0 select pgm(isrddn)"  ,  
   "\ quick dd list" 
   "%ispfcmds user dd 0 select pgm(isrddn)"  
   "%ispfcmds * ee 0 edit dataset()"  


Lionel B. Dyck <
Website: http://www.lbdsoftware.com

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

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of
Frank Swarbrick
Sent: Friday, January 17, 2020 11:38 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

Apparently I knew how to do this once upon a time, but how do you close a
user command table in order to allow editing of it?


From: IBM Mainframe Discussion List  on behalf of
ITschak Mugzach 
Sent: Thursday, January 16, 2020 11:20 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: Starting an application in ISPF

And even simpler, add it's and select cmd options to your ispf command
table. This way you can type a short name to invoke it.

ITschak

בתאריך יום ו׳, 17 בינו׳ 2020, 2:44, מאת Frank Swarbrick ‏<
frank.swarbr...@outlook.com>:

> This works.  Thanks much.
>
> 
> From: IBM Mainframe Discussion List  on 
> behalf of Steve Smith 
> Sent: Thursday, January 16, 2020 5:16 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: Starting an application in ISPF
>
> Just write and invoke a simple exec (or clist if that's your thing):
>
>  /* REXX */
>  ADDRESS ISPEXEC
>  'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
>  EXIT
>
> You could also invoke it from option 7.1 (Dialog Test), but that adds 
> some overhead.
>
> sas
>
>
> On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick < 
> frank.swarbr...@outlook.com>
> wrote:
>
> > Doesn't work for me.  Must not be in my "profile" or something.
>
> --
> 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: Starting an application in ISPF

2020-01-17 Thread ITschak Mugzach
Command tables are ispf appl dependent. Just define you appl on all xxxCMDS
tables.

ITschak

בתאריך יום ו׳, 17 בינו׳ 2020, 19:37, מאת Frank Swarbrick ‏<
frank.swarbr...@outlook.com>:

> Apparently I knew how to do this once upon a time, but how do you close a
> user command table in order to allow editing of it?
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of ITschak Mugzach 
> Sent: Thursday, January 16, 2020 11:20 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: Starting an application in ISPF
>
> And even simpler, add it's and select cmd options to your ispf command
> table. This way you can type a short name to invoke it.
>
> ITschak
>
> בתאריך יום ו׳, 17 בינו׳ 2020, 2:44, מאת Frank Swarbrick ‏<
> frank.swarbr...@outlook.com>:
>
> > This works.  Thanks much.
> >
> > 
> > From: IBM Mainframe Discussion List  on behalf
> > of Steve Smith 
> > Sent: Thursday, January 16, 2020 5:16 PM
> > To: IBM-MAIN@LISTSERV.UA.EDU 
> > Subject: Re: Starting an application in ISPF
> >
> > Just write and invoke a simple exec (or clist if that's your thing):
> >
> >  /* REXX */
> >  ADDRESS ISPEXEC
> >  'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
> >  EXIT
> >
> > You could also invoke it from option 7.1 (Dialog Test), but that adds
> some
> > overhead.
> >
> > sas
> >
> >
> > On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick <
> > frank.swarbr...@outlook.com>
> > wrote:
> >
> > > Doesn't work for me.  Must not be in my "profile" or something.
> >
> > --
> > 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: Metal C using Z/OS macros in C macros

2020-01-17 Thread Charles Mills
I am not an expert at all on C __asm and only barely something of an expert
on C macros so I avoided wading into this one. I will say

1. What @Peter Farley says sounds right to me.

2. Keep in mind that a macro definition in C does not "do anything" (so to
speak -- of course it does something). It just sets up future text
substitution. So at the time you define your macro no C variables need
exist. There are no preexisting conditions for a macro definition. Your
macro must be a syntactically valid macro, that's all. Macro definition
knows nothing about variable declarations -- you are just setting up some
rules for text substitution.

Then when you invoke your macro, the C preprocessor will do its text
substitution magic. It will use your macro definition and your macro
invocation to create some alleged C code. Somewhat later, the C compiler
will attempt to compile that alleged C code. So if that C code references a
variable, then yes, that variable will have to have been previously (earlier
in the source code file) declared. Earlier as in before the invocation of
the macro, not necessarily before the definition of the macro.

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
Behalf Of Farley, Peter x23353
Sent: Friday, January 17, 2020 8:31 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

The %0 and %1 are parameters to the __asm function, it will do the
substitution of the 2nd and 3rd parameter in the __asm(...) invocation into
the %0 and %1 spots in the 1st parameter.

And I concur with your description - the *invocation* of the "SETUP(...)"
macro will specify the variables to be used and *those* variables are the
ones that need to be defined, "xx" and "yy" in your example.

If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as
follows:

SETUP(supstate,key)

Then both "supstate" and "key" must be defined C variables.

The __asm function does not *define* variables, it just *uses* them.  The
variables mentioned in an __asm invocation must already be defined in the C
code.

Peter

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of
retired mainframer
Sent: Friday, January 17, 2020 11:06 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

In you C code, when you "invoke" the macro, you would provide the values of
the two macro parameters.  Something like
SETSUP(xx,yy)
It is the xx and yy that would show up inside the two parenthetical
expressions in the generated code.  Keep in mind that a C macro performs
simple text substitution long before the actual compilation starts.

Based on the generated code you show, you would not terminate the above
invocation with a semicolon.

I've never used __asm but is
   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you want
the compiler to see?

Are you using %0 and %1 to mean the macro parameters?  That is not the way C
macros work.

It looks like there should be a line continuation back slash following the
left brace.  I don't think you want the one that follows the right brace
since there is no following line.

> -Original Message-
> From: IBM Mainframe Discussion List  On 
> Behalf Of Joseph Reichman
> Sent: Friday, January 17, 2020 5:22 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Metal C using Z/OS macros in C macros
> 
> Just wondering if I can do something like this
> 
> #define SETSUP(supstate,key) \
>  {
>  __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>  }   \
> 
> Seems like the variables have to be defined

--

This message and any attachments are intended only for the use of the
addressee and may contain information that is privileged and confidential.
If the reader of the message is not the intended recipient or an authorized
representative of the intended recipient, you are hereby notified that any
dissemination of this communication is strictly prohibited. If you have
received this communication in error, please notify us immediately by e-mail
and delete the message and any attachments from your system.

--
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: Starting an application in ISPF

2020-01-17 Thread Frank Swarbrick
Apparently I knew how to do this once upon a time, but how do you close a user 
command table in order to allow editing of it?


From: IBM Mainframe Discussion List  on behalf of 
ITschak Mugzach 
Sent: Thursday, January 16, 2020 11:20 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: Starting an application in ISPF

And even simpler, add it's and select cmd options to your ispf command
table. This way you can type a short name to invoke it.

ITschak

בתאריך יום ו׳, 17 בינו׳ 2020, 2:44, מאת Frank Swarbrick ‏<
frank.swarbr...@outlook.com>:

> This works.  Thanks much.
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Steve Smith 
> Sent: Thursday, January 16, 2020 5:16 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: Starting an application in ISPF
>
> Just write and invoke a simple exec (or clist if that's your thing):
>
>  /* REXX */
>  ADDRESS ISPEXEC
>  'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
>  EXIT
>
> You could also invoke it from option 7.1 (Dialog Test), but that adds some
> overhead.
>
> sas
>
>
> On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick <
> frank.swarbr...@outlook.com>
> wrote:
>
> > Doesn't work for me.  Must not be in my "profile" or something.
>
> --
> 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: Starting an application in ISPF

2020-01-17 Thread Lionel B Dyck
The challenges y'all raise are one reason for my writing the Product Launch 
Point (PLP) tool.  You add PLP to the ISPF command table and then you have easy 
access to a fully dynamic ISPF menu. It supports nesting menus and every 
product is dynamically defined in a PLP table - all the dd's required, how it 
is started, an ispf applid if it needs a unique one.  Then from any ispf panel 
just enter PLP ISMF (using ISMF as an example). And with PLP you have a default 
system level PLP and you can have individual levels and group levels.  You can 
find it at http://lbdsoftware.com/ispftools.html or on the CBTTape File 312.  

The biggest advantage is you no longer have to manually edit/update ispf panels 
- it's all in a dynamic table.


Lionel B. Dyck <
Website: http://www.lbdsoftware.com

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

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Jesse 1 Robinson
Sent: Friday, January 17, 2020 11:00 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Starting an application in ISPF

A command table entry can certainly be useful, but we hit a snag some years 
ago. (Have not retried the construction since.) Suppose you have a local panel 
reached via A --> B --> C, where panel C has the SELECT for your app, say ISMF. 
If you type 

   A.B.C.ISMF

your menu select will work one way. But if you are already on the C panel 
(A.B.C), then typing ISMF is ambiguous. Do you get your panel SELECT option, or 
do you get the command table entry? The two results may differ depending on how 
things are coded. Users may not be happy. ;-(

.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler
SHARE MVS Program Co-Manager
323-715-0595 Mobile
626-543-6132 Office ⇐=== NEW
robin...@sce.com

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
ITschak Mugzach
Sent: Thursday, January 16, 2020 10:20 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: (External):Re: Starting an application in ISPF

And even simpler, add it's and select cmd options to your ispf command table. 
This way you can type a short name to invoke it.

ITschak

בתאריך יום ו׳, 17 בינו׳ 2020, 2:44, מאת Frank Swarbrick ‏<
frank.swarbr...@outlook.com>:

> This works.  Thanks much.
>
> 
> From: IBM Mainframe Discussion List  on 
> behalf of Steve Smith 
> Sent: Thursday, January 16, 2020 5:16 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: Starting an application in ISPF
>
> Just write and invoke a simple exec (or clist if that's your thing):
>
>  /* REXX */
>  ADDRESS ISPEXEC
>  'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
>  EXIT
>
> You could also invoke it from option 7.1 (Dialog Test), but that adds 
> some overhead.
>
> sas
>
>
> On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick < 
> frank.swarbr...@outlook.com>
> wrote:
>
> > Doesn't work for me.  Must not be in my "profile" or something.


--
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: Starting an application in ISPF

2020-01-17 Thread Jesse 1 Robinson
A command table entry can certainly be useful, but we hit a snag some years 
ago. (Have not retried the construction since.) Suppose you have a local panel 
reached via A --> B --> C, where panel C has the SELECT for your app, say ISMF. 
If you type 

   A.B.C.ISMF

your menu select will work one way. But if you are already on the C panel 
(A.B.C), then typing ISMF is ambiguous. Do you get your panel SELECT option, or 
do you get the command table entry? The two results may differ depending on how 
things are coded. Users may not be happy. ;-(

.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler 
SHARE MVS Program Co-Manager
323-715-0595 Mobile
626-543-6132 Office ⇐=== NEW
robin...@sce.com

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
ITschak Mugzach
Sent: Thursday, January 16, 2020 10:20 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: (External):Re: Starting an application in ISPF

And even simpler, add it's and select cmd options to your ispf command table. 
This way you can type a short name to invoke it.

ITschak

בתאריך יום ו׳, 17 בינו׳ 2020, 2:44, מאת Frank Swarbrick ‏<
frank.swarbr...@outlook.com>:

> This works.  Thanks much.
>
> 
> From: IBM Mainframe Discussion List  on 
> behalf of Steve Smith 
> Sent: Thursday, January 16, 2020 5:16 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: Starting an application in ISPF
>
> Just write and invoke a simple exec (or clist if that's your thing):
>
>  /* REXX */
>  ADDRESS ISPEXEC
>  'SELECT PGM(DGTFMD01) NEWAPPL(DGT) SCRNAME(ISMF)'
>  EXIT
>
> You could also invoke it from option 7.1 (Dialog Test), but that adds 
> some overhead.
>
> sas
>
>
> On Thu, Jan 16, 2020 at 6:47 PM Frank Swarbrick < 
> frank.swarbr...@outlook.com>
> wrote:
>
> > Doesn't work for me.  Must not be in my "profile" or something.


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


Re: Metal C using Z/OS macros in C macros

2020-01-17 Thread Farley, Peter x23353
The %0 and %1 are parameters to the __asm function, it will do the substitution 
of the 2nd and 3rd parameter in the __asm(...) invocation into the %0 and %1 
spots in the 1st parameter.

And I concur with your description - the *invocation* of the "SETUP(...)" macro 
will specify the variables to be used and *those* variables are the ones that 
need to be defined, "xx" and "yy" in your example.

If the OP (Mr. Reichman) codes the *invocation* of the SETUP macro as follows:

SETUP(supstate,key)

Then both "supstate" and "key" must be defined C variables.

The __asm function does not *define* variables, it just *uses* them.  The 
variables mentioned in an __asm invocation must already be defined in the C 
code.

Peter

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
retired mainframer
Sent: Friday, January 17, 2020 11:06 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Metal C using Z/OS macros in C macros

In you C code, when you "invoke" the macro, you would provide the values of the 
two macro parameters.  Something like
SETSUP(xx,yy)
It is the xx and yy that would show up inside the two parenthetical expressions 
in the generated code.  Keep in mind that a C macro performs simple text 
substitution long before the actual compilation starts.

Based on the generated code you show, you would not terminate the above 
invocation with a semicolon.

I've never used __asm but is
   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) ) what you want 
the compiler to see?

Are you using %0 and %1 to mean the macro parameters?  That is not the way C 
macros work.

It looks like there should be a line continuation back slash following the left 
brace.  I don't think you want the one that follows the right brace since there 
is no following line.

> -Original Message-
> From: IBM Mainframe Discussion List  On 
> Behalf Of Joseph Reichman
> Sent: Friday, January 17, 2020 5:22 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Metal C using Z/OS macros in C macros
> 
> Just wondering if I can do something like this
> 
> #define SETSUP(supstate,key) \
>  {
>  __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>  }   \
> 
> Seems like the variables have to be defined

--

This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.

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


Re: Metal C using Z/OS macros in C macros

2020-01-17 Thread Joseph Reichman
I think % refers to C variable substitution

I wanted the text from the macro which I think the # does 





> On Jan 17, 2020, at 11:07 AM, retired mainframer  
> wrote:
> 
> In you C code, when you "invoke" the macro, you would provide the values of
> the two macro parameters.  Something like
>SETSUP(xx,yy)
> It is the xx and yy that would show up inside the two parenthetical
> expressions in the generated code.  Keep in mind that a C macro performs
> simple text substitution long before the actual compilation starts.
> 
> Based on the generated code you show, you would not terminate the above
> invocation with a semicolon.
> 
> I've never used __asm but is
>   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) )
> what you want the compiler to see?
> 
> Are you using %0 and %1 to mean the macro parameters?  That is not the way C
> macros work.
> 
> It looks like there should be a line continuation back slash following the
> left brace.  I don't think you want the one that follows the right brace
> since there is no following line.
> 
>> -Original Message-
>> From: IBM Mainframe Discussion List  On
>> Behalf Of Joseph Reichman
>> Sent: Friday, January 17, 2020 5:22 AM
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Subject: Metal C using Z/OS macros in C macros
>> 
>> Just wondering if I can do something like this
>> 
>> #define SETSUP(supstate,key) \
>> {
>> __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>> }   \
>> 
>> Seems like the variables have to be 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: Metal C using Z/OS macros in C macros

2020-01-17 Thread retired mainframer
In you C code, when you "invoke" the macro, you would provide the values of
the two macro parameters.  Something like
SETSUP(xx,yy)
It is the xx and yy that would show up inside the two parenthetical
expressions in the generated code.  Keep in mind that a C macro performs
simple text substitution long before the actual compilation starts.

Based on the generated code you show, you would not terminate the above
invocation with a semicolon.

I've never used __asm but is
   __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(xx), "=s"(yy) )
what you want the compiler to see?

Are you using %0 and %1 to mean the macro parameters?  That is not the way C
macros work.

It looks like there should be a line continuation back slash following the
left brace.  I don't think you want the one that follows the right brace
since there is no following line.

> -Original Message-
> From: IBM Mainframe Discussion List  On
> Behalf Of Joseph Reichman
> Sent: Friday, January 17, 2020 5:22 AM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Metal C using Z/OS macros in C macros
> 
> Just wondering if I can do something like this
> 
> #define SETSUP(supstate,key) \
>  {
>  __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \
>  }   \
> 
> Seems like the variables have to be defined

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


Re: zOSMF - import manager translation issue

2020-01-17 Thread Chris Parker
Well, that was quick.  I figured it out.  It needs to be opened directly as a 
workflow.  I misunderstood the doc and thought it needed to be imported via 
import manager first.  I still don't understand why it couldn't be viewed, but 
I am moving forward again. 

Chris

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Chris Parker
Sent: Friday, January 17, 2020 9:05 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: zOSMF - import manager translation issue

I seem to be missing something very basic here.  I clearly have a translation 
problem, but I am not sure where to look next.  I am in the import manager 
attempting to import the supplied izu_config_setup.xml workflow.  When I 
attempt to view it, it displays garbage.  The file is in the same format it was 
in after being installed with SMP/e.  I have verified that the text is actually 
in UTF-8 format.  I have tried tagging the file and setting the code page in 
USS.   I have also set the USS environment to AUTOCVT(ALL).  Nothing is working 
at this point.  It's as if the import manager is expecting it to be in EBCDIC.  
This is on a z/OS 2.3 system.

Has anyone run into this?

Thanks,
Chris
---
NOTICE:
This email and all attachments are confidential, may be proprietary, and may be 
privileged or otherwise protected from disclosure. They are intended solely for 
the individual or entity to whom the email is addressed. However, mistakes 
sometimes happen in addressing emails. If you believe that you are not an 
intended recipient, please stop reading immediately. Do not copy, forward, or 
rely on the contents in any way. Notify the sender and/or Imperva, Inc. by 
telephone at +1 (650) 832-6006 and then delete or destroy any copy of this 
email and its attachments. The sender reserves and asserts all rights to 
confidentiality, as well as any privileges that may apply. Any disclosure, 
copying, distribution or action taken or omitted to be taken by an unintended 
recipient in reliance on this message is prohibited and may be unlawful.
Please consider the environment before printing this email.

--
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


zOSMF - import manager translation issue

2020-01-17 Thread Chris Parker
I seem to be missing something very basic here.  I clearly have a translation 
problem, but I am not sure where to look next.  I am in the import manager 
attempting to import the supplied izu_config_setup.xml workflow.  When I 
attempt to view it, it displays garbage.  The file is in the same format it was 
in after being installed with SMP/e.  I have verified that the text is actually 
in UTF-8 format.  I have tried tagging the file and setting the code page in 
USS.   I have also set the USS environment to AUTOCVT(ALL).  Nothing is working 
at this point.  It's as if the import manager is expecting it to be in EBCDIC.  
This is on a z/OS 2.3 system.

Has anyone run into this?

Thanks,
Chris
---
NOTICE:
This email and all attachments are confidential, may be proprietary, and may be 
privileged or otherwise protected from disclosure. They are intended solely for 
the individual or entity to whom the email is addressed. However, mistakes 
sometimes happen in addressing emails. If you believe that you are not an 
intended recipient, please stop reading immediately. Do not copy, forward, or 
rely on the contents in any way. Notify the sender and/or Imperva, Inc. by 
telephone at +1 (650) 832-6006 and then delete or destroy any copy of this 
email and its attachments. The sender reserves and asserts all rights to 
confidentiality, as well as any privileges that may apply. Any disclosure, 
copying, distribution or action taken or omitted to be taken by an unintended 
recipient in reliance on this message is prohibited and may be unlawful.
Please consider the environment before printing this email.

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


Metal C using Z/OS macros in C macros

2020-01-17 Thread Joseph Reichman
Just wondering if I can do something like this

 

 

#define SETSUP(supstate,key) \   

 {   

 __asm ( " MODESET KEY=%0,MODE=%1 \n" : "=s"(supstate), "=s"(key) )  \   

 }   \   

 

Seems like the variables have to be defined 

 

thanks


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


Re: Tape problem

2020-01-17 Thread Nai, Dean
We have had IBM hardware and software support trying to fix this since the 8th. 
Looking back at our logs the first sign of problems was this:

CBR3617I Unable to obtain the number of empty slots in library TAPELIB1.
10:41:54.44 STC05918 0090  CBR3710I LIBSERV failure occurred for library 
TAPELIB1. RC=0014,
   RSN=1408, REQTYPE=1A.



Dean Nai









On 1/17/20, 7:42 AM, "IBM Mainframe Discussion List on behalf of Nai, Dean" 
 wrote:

> EXTERNAL:  Do not open attachments or click on links unless you recognize and 
> trust the sender.
>
>These are physical tape. No VTS. 
>
>
>Dean Nai   
>
>
>
>
>
>
>
>
>
>On 1/16/20, 8:01 PM, "IBM Mainframe Discussion List on behalf of Russell Witt" 
>025adb32e6d7-dmarc-requ...@listserv.ua.edu> wrote:
>
>> EXTERNAL:  Do not open attachments or click on links unless you recognize 
>> and trust the sender.
>>
>>Brian and Dean, 
>>
>>Yes, you are correct. If you insert or define a new range of virtual-volumes 
>>to the VTS; that will drive the CBRUXENT (ENTRY) exit. If you have the CA 1 
>>version active, that will set the ROBTY field correctly as well as telling 
>>OAM the status of the volume (active/private or scratch). And having the 
>>ROBTY field set correctly is VERY important to CA 1. After all, we don't want 
>>to call the Oracle/STK exit when a tape in the IBM VTS goes scratch and we 
>>don't want to call CA-Vtape when an Oracle/STK volume goes scratch. So, based 
>>on the ROBTY field we will call the appropriate interface module (if there is 
>>an appropriate interface module, not all virtual-tape solutions have one).
>>
>>The original problem that Dean had mentioned (the CBR3770I and CBR3769I 
>>messages)  however, has nothing to do with CA 1. Those messages are being 
>>issued because OAM has somehow "lost" track of the volume and can't find it. 
>>If it is a virtual-volume, that would be very strange. If it is a physical 
>>volume that indicates that for some reason it isn't in the slot where OAM 
>>thought it had put it. How far apart and in what order to you receive the 
>>messages? If you get the CBR3770I first, and then the CBR3769I quickly after 
>>- that would be very strange and I would recommend contacting IBM.
>>
>>Russell Witt
>>CA 1 Architect
>>
>>-Original Message-
>>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On 
>>Behalf Of Brian Fraser
>>Sent: Thursday, January 16, 2020 3:12 AM
>>To: IBM-MAIN@LISTSERV.UA.EDU
>>Subject: Re: Tape problem
>>
 you forget to update the ROBTY and VENDOR fields
>>
>>I never update those fields.
>>I just insert new volumes as scratch and the library takes care of everything.
>>Unless it's handled by the INSERT exit?
>>
>>Brian
>>
>>On Thu, 16 Jan 2020 at 15:47, Brian Westerman 
>>wrote:
>>
>>> It's not normally a CA-1 caused problem.  This is "normally" caused 
>>> when tapes are added to the VTS and you forget to update the ROBTY and 
>>> VENDOR fields so tht when a tape is used (and scratched) that CA-1 can 
>>> tell the VTS and OAM that it's again available.
>>>
>>> Someone always forgets to do this at most sites when they add tapes, 
>>> and it isn't a problem right away because it takes a while for the 
>>> tapes to come up and be reused.
>>>
>>> Brian
>>>
>>> --
>>> 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: Tape problem

2020-01-17 Thread Nai, Dean
These are physical tape. No VTS. 


Dean Nai









On 1/16/20, 8:01 PM, "IBM Mainframe Discussion List on behalf of Russell Witt" 
 wrote:

> EXTERNAL:  Do not open attachments or click on links unless you recognize and 
> trust the sender.
>
>Brian and Dean, 
>
>Yes, you are correct. If you insert or define a new range of virtual-volumes 
>to the VTS; that will drive the CBRUXENT (ENTRY) exit. If you have the CA 1 
>version active, that will set the ROBTY field correctly as well as telling OAM 
>the status of the volume (active/private or scratch). And having the ROBTY 
>field set correctly is VERY important to CA 1. After all, we don't want to 
>call the Oracle/STK exit when a tape in the IBM VTS goes scratch and we don't 
>want to call CA-Vtape when an Oracle/STK volume goes scratch. So, based on the 
>ROBTY field we will call the appropriate interface module (if there is an 
>appropriate interface module, not all virtual-tape solutions have one).
>
>The original problem that Dean had mentioned (the CBR3770I and CBR3769I 
>messages)  however, has nothing to do with CA 1. Those messages are being 
>issued because OAM has somehow "lost" track of the volume and can't find it. 
>If it is a virtual-volume, that would be very strange. If it is a physical 
>volume that indicates that for some reason it isn't in the slot where OAM 
>thought it had put it. How far apart and in what order to you receive the 
>messages? If you get the CBR3770I first, and then the CBR3769I quickly after - 
>that would be very strange and I would recommend contacting IBM.
>
>Russell Witt
>CA 1 Architect
>
>-Original Message-
>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On 
>Behalf Of Brian Fraser
>Sent: Thursday, January 16, 2020 3:12 AM
>To: IBM-MAIN@LISTSERV.UA.EDU
>Subject: Re: Tape problem
>
>>> you forget to update the ROBTY and VENDOR fields
>
>I never update those fields.
>I just insert new volumes as scratch and the library takes care of everything.
>Unless it's handled by the INSERT exit?
>
>Brian
>
>On Thu, 16 Jan 2020 at 15:47, Brian Westerman 
>wrote:
>
>> It's not normally a CA-1 caused problem.  This is "normally" caused 
>> when tapes are added to the VTS and you forget to update the ROBTY and 
>> VENDOR fields so tht when a tape is used (and scratched) that CA-1 can 
>> tell the VTS and OAM that it's again available.
>>
>> Someone always forgets to do this at most sites when they add tapes, 
>> and it isn't a problem right away because it takes a while for the 
>> tapes to come up and be reused.
>>
>> Brian
>>
>> --
>> 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