IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

DIalog under CMS (z/VM)


IBM Mainframe Forums -> CLIST & REXX
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
jpsager

New User


Joined: 18 Jul 2016
Posts: 8
Location: Switzerland

PostPosted: Fri Sep 09, 2016 4:46 pm
Reply with quote

icon_redface.gif I @all

so I'm back to the good old z/VM CMS and VSE after 25 years z/OS. I try to write a REXX Dialog on CMS but I can't find how I can do that. I want open a Panel for some input data's and display other values from a save before.

I need one Panel & a DB or a VSAM File to save the data's. How can build a panel on CMS and how can I call it from my REXX? Maybe there are nothing that's look like in ISPF?

Thanx for your help
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Fri Sep 09, 2016 7:32 pm
Reply with quote

IIRC ISPF should be available under zVM,
ask your support
Back to top
View user's profile Send private message
jpsager

New User


Joined: 18 Jul 2016
Posts: 8
Location: Switzerland

PostPosted: Wed Sep 21, 2016 2:59 pm
Reply with quote

Thanx for this tip

But we don't have ISPF. I need a other solution to display a panel or a table. I need full Dialog in zVM/CMS like how it is in z/OS ISPF. Has someone a idea?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Wed Sep 21, 2016 3:51 pm
Reply with quote

Quote:
I need full Dialog in zVM/CMS like how it is in z/OS ISPF.

not always You get what You want ...

Quote:
Has someone a idea?


investigate the use of IOS3270

what version/releae of zVM are You using?
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 712
Location: Denmark

PostPosted: Thu Sep 22, 2016 1:11 pm
Reply with quote

Look up something called xmenu. Never tried myself, but I know people who has.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Thu Sep 22, 2016 3:29 pm
Reply with quote

Quote:
Look up something called xmenu.


XMENU is a product from CA, and is not ( IIRC ) free
Back to top
View user's profile Send private message
Rick Silvers

New User


Joined: 31 Mar 2012
Posts: 9
Location: USA

PostPosted: Sun Nov 06, 2016 7:21 pm
Reply with quote

IBM had a product on VM back in the 90s that was free called NEATWIND. You could do dialogs like ISPF ..panels, popups, etc..check with your sys programmer to see if you have it

Code:
/* */
do forever
trace off
'MAKEBUF'
queue "Network Status Controller Name: @@@@@@@@@@ &ASK."
queue "   "
'EXEC NEATWIND (DATAENTRY OUTVARS (CTLA)',
               'BTITLE (%YCPG Controller Search%!) PFHIGHLITE I/S',
               'PF3=Exit PF12=Cancel FORE=B'
$rc = rc
'DROPBUF'
if $rc = 0 then nop
if $rc = 3 then exit
if CTLA = ' '
  then exit
else do
ctlb=translate(ctla)
'EXECIO * DISKR COASTAL DBASE * (FINIS LO $'ctlb'$ STEM X'
if rc=0
then do
as=substr(X1,1,10)
ct=substr(X1,11,20)
st=substr(X1,32,2)
lin=substr(X1,35,10)
pu=substr(X1,46,10)
co=substr(X1,57,25)
ph=substr(X1,83,12)
no=substr(X1,97,4)
sw=substr(X1,102,10)
sy=substr(X1,112,10)
'MAKEBUF'
queue '%WSystem                    %R=> %~'sy'%!'
queue '%WController                %R=> %T'as
queue '%WCity, State               %R=> %T'ct st
queue '%WLine                      %R=> %T'lin
queue '%WPU  or Router             %R=> %T'pu
queue '%WContact                   %R=> %T'co
queue '%WTelephone                 %R=> %T'ph
queue '%WNetwork Owner             %R=> %T'no
queue '%WSNA Switch Node           %R=> %T'sw
queue '                            '
'EXEC NEATWIND (BTITLE (%YCPG Controller Info%!) PFHIGHLITE I/S',
               'PF3=Exit PF12=Cancel FLARE=G FORE=R'
$rc = rc
'DROPBUF'
if $rc = 3 then exit
if $rc = 12 then exit
end
else do
'MAKEBUF';
queue "&STOP1."
queue "&STOP2.No controller was found matching your entry"
queue "&STOP3.Please reenter."
'EXEC NEATWIND 3 (FORE=TURQ SAA NOWAIT SQUEEZE'
'DROPBUF'
'SLEEP 2 SEC'
end
end
end
exit


Also, you could use Xedit&Rexx to write full screen menus...found this example in one of my saved sources...it uses Xedit and NEATWIND

Code:
/* REXX */
me=userid()
ti=time()
command set ctlchar '%' escape
command set ctlchar '@' protect blue high
command set ctlchar '›' protect green nohigh
command set ctlchar '!' protect white high
command set ctlchar '$' noprotect white underline
command set ctlchar '&' protect red  high
command set msgline on 24 overlay
command set color msgline white
command set pre off
message = right('(C) COPYRIGHT IBM Global Services 1997.',40)
do forever
call display_screenrscs
read nochange tag
do queued()
 pull key line column string
select
 when key = 'RES'
   then select
 when string = 1 then call r117
 when string = 2 then call r18
 when string = 3 then call sr2
 when string = 4 then call r173
 when string = 5 then call r174
 when string = 6 then call r84
 when string = 7 then call r175
 when string = 8 then call ch5
 when string = 9 then call chgcoa
 when string = 10 then call end
 when string = 90 then call bye
 otherwise message = right('Specified menu selection is not correct.',42)
 end
 when key = 'ETK' | string = 'COMMAND' then do
 message = right('Type option number.',21)
 ti=time()
  end
 when key = 'PFK' then
 select
 when line = 3 | line = 12 then do
   message = ' '
   cms desbuf
   command quit
   exit
   end
 when line = 1 then call hlp
 when line /= 3 | line /= 12 | line /= 1 then do
   message = right('Function key not allowed.',27)
  end
  end
 otherwise message = right('Specified menu selection is not correct.',42)
end
end
end
exit
display_screenrscs:
s = 'set'
r = 'reserved'
n = 'noh'
s cmdline off
s tofeof off
s r 1 n '%@RSCS      %!',
            center('Rscs  ',50),
                   '%@'
s r 2 n   '%@          %@',
                   right('System:   RALVM17',65),
                   '%@'
s r 3 n   ' %@Select one of the following:'
s r 4 n
s r 5 n   '      %›1. Query %&RALVM17  %›to %!RALAS1   %›connection'
s r 6 n   '      %›2. Query %&RALVM8   %›to %!RALAS1   %›connection'
s r 7 n   '      %›3. Query %&RALVMS   %›to %!RALAS2   %›connection'
s r 8 n   '      %›4. Query %&RALVM17  %›to %!RALAS3   %›connection'
s r 9 n   '      %›5. Query %&RALVM17  %›to %!RALAS4   %›connection'
s r 10 n  '      %›6. Query %&RALVM8   %›to %!RALAS4   %›connection'
s r 11 n  '      %›7. Query %&RALVM17  %›to %!CLTAS5   %›connection'
s r 12 n  '      %›8. Query %&CHARVS01 %›to %!CLTAS5   %›connection'
s r 13 n  '      %›9. Query %&CHGVM1   %›to %!COASTAL  %›connection'
s r 14 n  '     %›10. Query %&ATLVM10  %›to %!ENDAS400 %›connection'
s r 15 n
s r 16 n
s r 17 n
s r 18 n   '     %›90. Signoff'
s r 19 n
s r 20 n   ' %@Type a menu option below:'
s r 21 n   '     %$  %›'
s r 22 n
s r 23 n  ' %@F1=Help   F3=Exit   F12=Cancel       %&'  me'     'ti
s r 24 n '%!'
if message ^= " " then do; emsg message; message=' ';end;
cursor screen 21 7
return
r117:
sm rscs q ralas1
message = '   '
return
r18:
sm rscs cmd ralvm8 q ralas1
message = right('Wait 2 seconds for response from RSCS... Pr',
          ||   'ess ENTER again. ',62)
return
sr2:
sm rscs cmd ralvms q ralas2
message = right('Wait 2 seconds for response from RSCS... Pr',
          ||   'ess ENTER again. ',62)
return
r173:
sm rscs q ralas3
message = '    '
return
r174:
sm rscs q ralas4
message = '    '
return
r84:
sm rscs cmd ralvm8 q ralas4
message = right('Wait 2 seconds for response from RSCS... Pr',
        ||     'ess ENTER again. ',62)
return
r175:
sm rscs q cltas5
message = '     '
return
ch5:
sm rscs cmd cltvm1 q charvs01
message = right('Wait 2 seconds for response from RSCS... Pr',
      ||       'ess ENTER again. ',62)
return
cltp:
sm rscs cmd cltvm1 q s1043270
message = right('Wait 2 seconds for response from RSCS... Pr',
      ||       'ess ENTER again. ',62)
return
chgcoa:
sm rscs cmd chgvm1 q coastal
message = right('Wait 2 seconds for response from RSCS... Pr',
      ||       'ess ENTER again. ',62)
return
end:
sm rscs cmd atlvm10 q endas400
message = right('Wait 2 seconds for response from RSCS... Pr',
      ||       'ess ENTER again. ',62)
return
bye:
cp logoff
hlp:
'MAKEBUF'
queue  "%w               Main Menu - Help"
queue  "                                 "
queue  "      The%wRSCS%!menu allows you to query the status    "
queue  "      of%wRSCS%!(Remote Spooling Communications Subsystem)"
queue  "      to%wQSNADS%!(SNA Distribution Services Subsystem)   "
queue  "      connections.                                      "
queue  "                                                        "
queue  "%wHow to use this Menu"
queue  "              "
queue  "      To select a menu option, type the option number   "
queue  "      and press Enter.                                  "
queue  "                                                        "
queue  "                                                        "
queue  "%wOption 1. (RALVM17 to RALAS1)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM17"
queue  "  to%yAS/400/RALAS1%!connection.                            "
queue  "                                                        "
queue  "%wOption 2. (RALVM8 to RALAS1)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM8"
queue  "  to%yAS/400/RALAS1%!connection.                            "
queue  "                                                        "
queue  "%wOption 3. (RALVMS to RALAS2)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVMS"
queue  "  to%yAS/400/RALAS2%!connection.                            "
queue  "                                                        "
queue  "%wOption 4. (RALVM17 to RALAS3)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM17"
queue  "  to%yAS/400/RALAS3%!connection.                            "
queue  "                                                        "
queue  "%wOption 5. (RALVM17 to RALAS4)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM17"
queue  "  to%yAS/400/RALAS4%!connection.                            "
queue  "                                                        "
queue  "%wOption 6. (RALVM8 to RALAS4)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM8"
queue  "  to%yAS/400/RALAS4%!connection.                            "
queue  "                                                        "
queue  "%wOption 7. (RALVM17 to CLTAS5)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/RALVM17"
queue  "  to%yAS/400/CLTAS5%!connection.                        "
queue  "                                                        "
queue  "%wOption 8. (CHARVS01(CLTSY6) to CLTAS5)                "
queue  "                                                        "
queue  "  Select this option to query the status of the%yMVS/CHARVS01"
queue  "  to%yAS/400/CLTAS5%!connection. The CHARVS01 system is also"
queue  "  known as CLTSY6.                                          "
queue  "                                                        "
queue  "%wOption 9. (CHGVM1 to COASTAL)                         "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/CHGVM1"
queue  "  to%yAS/400/COASTAL%!connection.                         "
queue  "                                                        "
queue  "%wOption 10. (ATLVM10 to ENDAS400)                      "
queue  "                                                        "
queue  "  Select this option to query the status of the%yVM/ATLVM10"
queue  "  to%yAS/400/ENDAS400%!connection.                         "
queue  "                                                        "
queue  "%wOption 90. (SIGNOFF)                                  "
queue  "                                                        "
queue  "  Select this option to end the job on the current display"
queue  "  station.                                                 "
queue  "                                                        "
queue  "               %wFunction Keys - Help"
queue  "                 "
queue  "%wF1=Help"
queue  "      Provides information about using this menu."
queue  "                 "
queue  "%wF3=Cms"
queue  "      Ends the current task and returns to CMS."
queue  "                 "
queue  "%wF12=Cancel"
queue  "      Ends the current task and returns to CMS."
'EXEC NEATWIND (SAA90 BTITLE (%yHelp%!) FORE=B PFHIGHLITE'
$rc = rc
'DROPBUF'
if $rc = 0 then return
if $rc = 9999 then return
say $rc


Back to top
View user's profile Send private message
Marso

REXX Moderator


Joined: 13 Mar 2006
Posts: 1353
Location: Israel

PostPosted: Sun Nov 06, 2016 8:29 pm
Reply with quote

I only remember that I used XEDIT and a lot of SET RESERVE commands.
That was a long time ago, I hope today there is something more sophisticated...
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 712
Location: Denmark

PostPosted: Sun Nov 06, 2016 8:31 pm
Reply with quote

no idea if it is included in standard VM/CMS, but you could take a look at
Using DMS/CMS for Dialogs in the z/VM: CMS Application Development Guide.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CLIST & REXX

 


Similar Topics
Topic Forum Replies
No new posts step by step trace 4 ISPF dialog call... TSO/ISPF 17
No new posts Using different values for Skeleton d... CLIST & REXX 8
No new posts ISPF dialog variable name for Dataset... TSO/ISPF 5
No new posts ABEND CODE UFC6 in ADSO dialog IDMS/ADSO 2
No new posts record mismatch erroe in dialog IDMS/ADSO 5
Search our Forums:

Back to Top