Discussion:
Need help with ISPF Dialogue Manager and VGET
(too old to reply)
e***@JUNO.COM
2018-07-30 20:47:11 UTC
Permalink
Raw Message
Hello,
.
I need some clarification on using the ISPF VGET Service in an Assembler Program, the examples I've found were not much help.
.
.
I have a CLIST which issues a VPUT for three Fields
Name, City, STATE. These variable are placed on the SHARED POOL.
The CLIST then invokes an Assembler Program which should issue a VGET
for the three variables and write them to a VSAM dataset.
.
In the examples I found I never see the Variables for the VGET defined
in the program.
.
I suspect I need to first issue a VDEFINE, with a Name List, Variable
list, Format List and Length List prior to issuing the VGET.
.
THE VGET SERVICE only identifies a name-list like
NAME-LIST EQU *
DC A(3)
DC A(0)
DC CL8'NAME '
DC CL8'CITY '
DC CL8'STATE'
.
Do I need to issue a VDEFINE first for the Variables specified in the VGET. Would someone please clarify ....
.
.
Paul
.
.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
John Gateley
2018-07-30 21:00:01 UTC
Permalink
Raw Message
Hi

This is what I have for an assembler program calling REXX, but the REXX can see the variables so something similar should work for you.

CALL ISPLINK,(VDEFINE,NXXPROG,INVXPROG,CHAR,LXXPROG),VL
CALL ISPLINK,(VPUT,NXXPROG),VL
CALL ISPLINK,(SELECT,LPREXX,PREXX),VL

VDEFINE DC CL8'VDEFINE'
VPUT DC CL8'VPUT'
SELECT DC CL8'SELECT'
NXXPROG DC CL10'(INVXPROG)'
INVXPROG DC CL8' '
CHAR DC CL8'CHAR '
LXXPROG DC F'10'
LPREXX DC F'13'
PREXX DC C'CMD(INVSHLST)'

Hope this helps
John

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Steve Beaver
2018-07-30 21:23:28 UTC
Permalink
Raw Message
Here is a good place to start.

https://www.bde-gmbh.de/tipps-tricks/zos-rexx/write-an-assembler-program-that-is-called-by-rexx/


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of John Gateley
Sent: Monday, July 30, 2018 4:00 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: Need help with ISPF Dialogue Manager and VGET

Hi

This is what I have for an assembler program calling REXX, but the REXX can see the variables so something similar should work for you.

CALL ISPLINK,(VDEFINE,NXXPROG,INVXPROG,CHAR,LXXPROG),VL
CALL ISPLINK,(VPUT,NXXPROG),VL
CALL ISPLINK,(SELECT,LPREXX,PREXX),VL

VDEFINE DC CL8'VDEFINE'
VPUT DC CL8'VPUT'
SELECT DC CL8'SELECT'
NXXPROG DC CL10'(INVXPROG)'
INVXPROG DC CL8' '
CHAR DC CL8'CHAR '
LXXPROG DC F'10'
LPREXX DC F'13'
PREXX DC C'CMD(INVSHLST)'

Hope this helps
John

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

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Mike Shaw
2018-07-30 22:38:10 UTC
Permalink
Raw Message
Post by e***@JUNO.COM
Hello,
<snip>
Do I need to issue a VDEFINE first for the Variables specified in the VGET. Would someone please clarify ....
Paul,

Yes. VDEFINEs when you start up, then as many VPUTs and VGETs as needed,
then VDELETEs when you end execution.

Mike Shaw
MVS/QuickRef Support Group
Chicago-Soft, Ltd.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
retired mainframer
2018-07-31 00:26:28 UTC
Permalink
Raw Message
Is NAME-LIST a valid name? Does it equate to a full word boundary?
(Recommend changing EQU * to DS 0F to insure there is no padding before the
first parameter.)
Post by Steve Beaver
-----Original Message-----
Sent: Monday, July 30, 2018 1:45 PM
Subject: Need help with ISPF Dialogue Manager and VGET
Hello,
.
I need some clarification on using the ISPF VGET Service in an Assembler
Program,
Post by Steve Beaver
the examples I've found were not much help.
.
.
I have a CLIST which issues a VPUT for three Fields
Name, City, STATE. These variable are placed on the SHARED POOL.
The CLIST then invokes an Assembler Program which should issue a VGET
for the three variables and write them to a VSAM dataset.
.
In the examples I found I never see the Variables for the VGET defined
in the program.
.
I suspect I need to first issue a VDEFINE, with a Name List, Variable
list, Format List and Length List prior to issuing the VGET.
.
THE VGET SERVICE only identifies a name-list like
NAME-LIST EQU *
DC A(3)
DC A(0)
DC CL8'NAME '
DC CL8'CITY '
DC CL8'STATE'
.
Do I need to issue a VDEFINE first for the Variables specified in the
VGET. Would
Post by Steve Beaver
someone please clarify ....
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Beverly Caldwell
2018-08-01 18:43:00 UTC
Permalink
Raw Message
Well, you are almost there, Paul. You seem to have the hang of this. What
do you need, someone to write it for you?
Post by e***@JUNO.COM
Hello,
.
I need some clarification on using the ISPF VGET Service in an Assembler
Program, the examples I've found were not much help.
.
.
I have a CLIST which issues a VPUT for three Fields
Name, City, STATE. These variable are placed on the SHARED POOL.
The CLIST then invokes an Assembler Program which should issue a VGET
for the three variables and write them to a VSAM dataset.
.
In the examples I found I never see the Variables for the VGET defined
in the program.
.
I suspect I need to first issue a VDEFINE, with a Name List, Variable
list, Format List and Length List prior to issuing the VGET.
.
THE VGET SERVICE only identifies a name-list like
NAME-LIST EQU *
DC A(3)
DC A(0)
DC CL8'NAME '
DC CL8'CITY '
DC CL8'STATE'
.
Do I need to issue a VDEFINE first for the Variables specified in the
VGET. Would someone please clarify ....
.
.
Paul
.
.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Joe Testa
2018-08-01 18:49:55 UTC
Permalink
Raw Message
Yes, you need VDEFINEs to map the ISPF dialog variable names to storage locations in your Assembler program, so that VGET knows where to save the data it gets.

-----Original Message-----
From: IBM Mainframe Discussion List <IBM-***@LISTSERV.UA.EDU> On Behalf Of Beverly Caldwell
Sent: Wednesday, August 1, 2018 2:43 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: Need help with ISPF Dialogue Manager and VGET

Well, you are almost there, Paul. You seem to have the hang of this. What do you need, someone to write it for you?
Post by e***@JUNO.COM
Hello,
.
I need some clarification on using the ISPF VGET Service in an
Assembler Program, the examples I've found were not much help.
.
.
I have a CLIST which issues a VPUT for three Fields Name, City,
STATE. These variable are placed on the SHARED POOL.
The CLIST then invokes an Assembler Program which should issue a VGET
for the three variables and write them to a VSAM dataset.
.
In the examples I found I never see the Variables for the VGET defined
in the program.
.
I suspect I need to first issue a VDEFINE, with a Name List, Variable
list, Format List and Length List prior to issuing the VGET.
.
THE VGET SERVICE only identifies a name-list like NAME-LIST EQU *
DC A(3)
DC A(0)
DC CL8'NAME '
DC CL8'CITY '
DC CL8'STATE'
.
Do I need to issue a VDEFINE first for the Variables specified in the
VGET. Would someone please clarify ....
.
.
Paul
.
.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Dyck, Lionel B. , RavenTek
2018-08-01 18:54:51 UTC
Permalink
Raw Message
To make it easy check out www.cbttape.org and FILE 803 - it is a collection of ISPF macros that I ran across in the last millennium that make it very easy to code ISPF dialogs in assembler.

--------------------------------------------------------------------------
Lionel B. Dyck (Contractor) <sdg><
Mainframe Systems Programmer – RavenTek Solution Partners


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Joe Testa
Sent: Wednesday, August 01, 2018 1:50 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: [EXTERNAL] Re: Need help with ISPF Dialogue Manager and VGET

Yes, you need VDEFINEs to map the ISPF dialog variable names to storage locations in your Assembler program, so that VGET knows where to save the data it gets.

-----Original Message-----
From: IBM Mainframe Discussion List <IBM-***@LISTSERV.UA.EDU> On Behalf Of Beverly Caldwell
Sent: Wednesday, August 1, 2018 2:43 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: Need help with ISPF Dialogue Manager and VGET

Well, you are almost there, Paul. You seem to have the hang of this. What do you need, someone to write it for you?
Post by e***@JUNO.COM
Hello,
.
I need some clarification on using the ISPF VGET Service in an
Assembler Program, the examples I've found were not much help.
.
.
I have a CLIST which issues a VPUT for three Fields Name, City, STATE.
These variable are placed on the SHARED POOL.
The CLIST then invokes an Assembler Program which should issue a VGET
for the three variables and write them to a VSAM dataset.
.
In the examples I found I never see the Variables for the VGET defined
in the program.
.
I suspect I need to first issue a VDEFINE, with a Name List, Variable
list, Format List and Length List prior to issuing the VGET.
.
THE VGET SERVICE only identifies a name-list like NAME-LIST EQU *
DC A(3)
DC A(0)
DC CL8'NAME '
DC CL8'CITY '
DC CL8'STATE'
.
Do I need to issue a VDEFINE first for the Variables specified in the
VGET. Would someone please clarify ....
.
.
Paul
.
.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN

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

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Edward Finnell
2018-08-01 20:38:30 UTC
Permalink
Raw Message
Anybody use MODEL commands for anything anymore?


In a message dated 8/1/2018 1:55:00 PM Central Standard Time, ***@VA.GOV writes:

 
o make it easy check out
www.cbttape.org and FILE 803 - it is a collection of ISPF macros that I ran across in the last millennium that make it very easy to code ISPF dialogs in assembler.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Seymour J Metz
2018-08-02 17:04:05 UTC
Permalink
Raw Message
When last I had access to ISPF I used them heavily. Not as good as a full-fledged syntax directed editor, but still very helpful.


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

________________________________________
From: IBM Mainframe Discussion List <IBM-***@listserv.ua.edu> on behalf of Edward Finnell <0000000248cce9f3-dmarc-***@listserv.ua.edu>
Sent: Wednesday, August 1, 2018 4:38 PM
To: IBM-***@listserv.ua.edu
Subject: Re: Need help with ISPF Dialogue Manager and VGET

Anybody use MODEL commands for anything anymore?


In a message dated 8/1/2018 1:55:00 PM Central Standard Time, ***@VA.GOV writes:


o make it easy check out
http://secure-web.cisco.com/1aCvaZTPAJO1cr0bBILltD9dwI1WmoCvWWhozu3I5u48ZM15ylQIGanv_Trrk6O5VuRGJJswyxcYz9vRomNgklq_m_j0s771svDk7WUeYqwl1uuj1d3L0IpAP99Mwac4LtJjboIVoqgiN2VoxeeOXVWrkNSAJ8j_heA3jX0DN-HWTAl4EZoG079JyQfdUKxE89gRHnPAOZE4GK-dkswWoeIfb2zLBHL_rgCSTYNMsaiXrYtx1b0DsQl9-oQG5qM4JDe1lTPm3VIpwY9E3n-gzDQ2BhMnoQHrZcbLoraJl3fMpTz1UdkrD4eX0UU75u403yRandjrU5Bvb-MH0MgDt8Gg3UhqUI2OG7XVjTxlsZZxZLk7h6MgGbUS0MsShNul6/http%3A%2F%2Fwww.cbttape.org and FILE 803 - it is a collection of ISPF macros that I ran across in the last millennium that make it very easy to code ISPF dialogs in assembler.

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

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Hobart Spitz
2018-08-02 22:53:02 UTC
Permalink
Raw Message
Keep in mind that if you do VDEFINE(s), you MUST do VDELETE(s) for the same
variables, before you FREEMAIN (e.g.) and/or exit. Otherwise, enjoy
tracking down mysterious S0C4s, etc. ISPF will think that the storage is
still allocated to the function pool variable(s) and may read from or write
to it/them.

To clarify what was already said, you don't need VDEFINE if your assembler
program is not interacting with the data. For example, if you are
displaying a panel that, implicitly or explicitly, does all needed VGETs,
VPUTs and operations for some variables, no VDEFINEs are needed for those
variables.

If you are only inspecting or setting a particular variable once, VCOPY or
VREPLACE will do just as well, without the need for VDELETE.

Less clear cut is when a program is invoked by SELECT. It would seems that
all function pool variables are deleted, along with their reference
addresses, lengths, etc. I'm not sure; YMMV.

That said, unless you are writing a program product (and maybe even then),
you are better off using ISPEXEC from assembler. It is easier to write and
maintain, and also offers variable substitution:

CALL ISPEXEC,(BUFLEN25,BUFFER25),VL
...

Buffer25 dc c'display panel(abc&xyz)'

Buflen25 dc a(l'Buffer)


In fact, this could all be nicely packaged into an assembler MACRO.

Compiled REXX, CLIST (see note), and the Pipes/ISPF stages will give you
better performance than interpreted REXX, without the productivity
downsides of assembler. (AFAIK, ISPF has it's own internal copy of the
CLIST interpreter that loads and/or runs faster than the usual CLIST
interpreter; call a CLIST only via SELECT.) ISPF dialogs with only ISPLINK
require lots of extra coding, more detailed knowledge of the business
requirements, perfect comments for future victims, and full understanding
of dialog services.

Finally, the TSO variable lookup routine IKJCV441 can only get or set once
variable at a time. With TBxxx services this is a burden; a requirement to
address this was never approved.

I hope this helps.
Post by Seymour J Metz
When last I had access to ISPF I used them heavily. Not as good as a
full-fledged syntax directed editor, but still very helpful.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
Sent: Wednesday, August 1, 2018 4:38 PM
Subject: Re: Need help with ISPF Dialogue Manager and VGET
Anybody use MODEL commands for anything anymore?
In a message dated 8/1/2018 1:55:00 PM Central Standard Time,
o make it easy check out
http://secure-web.cisco.com/1aCvaZTPAJO1cr0bBILltD9dwI1WmoCvWWhozu3I5u48ZM15ylQIGanv_Trrk6O5VuRGJJswyxcYz9vRomNgklq_m_j0s771svDk7WUeYqwl1uuj1d3L0IpAP99Mwac4LtJjboIVoqgiN2VoxeeOXVWrkNSAJ8j_heA3jX0DN-HWTAl4EZoG079JyQfdUKxE89gRHnPAOZE4GK-dkswWoeIfb2zLBHL_rgCSTYNMsaiXrYtx1b0DsQl9-oQG5qM4JDe1lTPm3VIpwY9E3n-gzDQ2BhMnoQHrZcbLoraJl3fMpTz1UdkrD4eX0UU75u403yRandjrU5Bvb-MH0MgDt8Gg3UhqUI2OG7XVjTxlsZZxZLk7h6MgGbUS0MsShNul6/http%3A%2F%2Fwww.cbttape.org
and FILE 803 - it is a collection of ISPF macros that I ran across in the
last millennium that make it very easy to code ISPF dialogs in assembler.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Stop Bitching
2018-08-01 19:24:39 UTC
Permalink
Raw Message
Post by Beverly Caldwell
Well, you are almost there, Paul. You seem to have the hang of this. What
do you need, someone to write it for you?
Hey Bev, we thought you were having a bad day when you insulted a headhunter
(ok that part is excusable) because of his nationality (that part is not.)

But now it appears you're in a bad most all the time. Can you either help
the guy out or shut the hell up? You're becoming a nuisance.

Stop Bitching
zMan
2018-08-01 20:49:23 UTC
Permalink
Raw Message
OK, I'll bite...

Beverly,

What is your point? That Paul didn't know something, asked a question, and
yet appears to actually have a decent grasp on the subject? Is that somehow
offensive to you, or are you just stirring the pot for no reason here?

Seriously: I'm all for appropriate snarkiness. Those who have bothered to
read my posts here will at times have argued (silently or otherwise) with
the appropriateness of that snark. But I don't think I have ever responded
as you did to someone who seems to have done nothing the least bit
provocative.

Perhaps you can give some clarification of the goal of your post; perhaps I
have totally misinterpreted the tone, in which case I apologize in advance.
If you *were *intending to be rude, like, stop it. This is a professional
forum; we have some fun, we have some rogues who take the occasional jab,
we have folks whose social skills seem to result in rudeness when it later
appears none was intended. Those are all different from just causing
trouble for the sake of causing trouble.
Post by Beverly Caldwell
Well, you are almost there, Paul. You seem to have the hang of this. What
do you need, someone to write it for you?
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Jesse 1 Robinson
2018-08-01 20:48:15 UTC
Permalink
Raw Message
Working on my first dialog in ages. Used MODEL a whole lot in the last week or two.

.
.
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
***@sce.com

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Edward Finnell
Sent: Wednesday, August 01, 2018 1:38 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: (External):Re: Need help with ISPF Dialogue Manager and VGET

Anybody use MODEL commands for anything anymore?


In a message dated 8/1/2018 1:55:00 PM Central Standard Time, ***@VA.GOV writes:

 
o make it easy check out
www.cbttape.org and FILE 803 - it is a collection of ISPF macros that I ran across in the last millennium that make it very easy to code ISPF dialogs in assembler.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Steve Beaver
2018-08-01 20:54:52 UTC
Permalink
Raw Message
I have used MODEL for years. It is a quick aid

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Jesse 1 Robinson
Sent: Wednesday, August 1, 2018 3:48 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: Need help with ISPF Dialogue Manager and VGET

Working on my first dialog in ages. Used MODEL a whole lot in the last week or two.

.
.
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
***@sce.com

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Edward Finnell
Sent: Wednesday, August 01, 2018 1:38 PM
To: IBM-***@LISTSERV.UA.EDU
Subject: (External):Re: Need help with ISPF Dialogue Manager and VGET

Anybody use MODEL commands for anything anymore?


In a message dated 8/1/2018 1:55:00 PM Central Standard Time, ***@VA.GOV writes:


o make it easy check out
www.cbttape.org and FILE 803 - it is a collection of ISPF macros that I ran across in the last millennium that make it very easy to code ISPF dialogs in assembler.

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

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