【z/OS】z/OS上rexx调用panel

1848阅读 0评论2011-07-26 pantierui
分类:

上面的博文讲的是panel,怎么用那。
下面就是一个简单的rexx调用panel的例子。
不废话看代码
/* REXX                                                              */
/*********************************************************************/
/*                           MAIN ROUTINE                            */
/*********************************************************************/
ADDRESS TSO
KEYNUM = 0
NOMORE = ''
DO UNTIL (NOMORE = 'Y')
  CALL DISPLAY_PANEL
END
EXIT
/*********************************************************************/
/* DISPLAY PANEL                                                     */
/*********************************************************************/
DISPLAY_PANEL:
 
  ADDRESS ISPEXEC
  /* panel location */
  panel_pds = 'REXX.EXEC'
  "LIBDEF ISPPLIB DATASET ID("panel_pds") STACK"
 
  /* clear panel's variable */
  DBname   = ''
  ARVdate  = ''
  TBLname1 = ''
  TBLname2 = ''
  TBLname3 = ''
  TBLname4 = ''
  TBLname5 = ''
  TBLname6 = ''
 
  /* put value into panel */
  "VPUT (INFO) SHARED"
 
  /* display panel */
  "CONTROL DISPLAY REFRESH"
  "DISPLAY PANEL(p@30610)"
 
  /* when you press F3 */
  IF KEYNUM = 'PF03'  THEN DO
     NOMORE = 'Y'
     EXIT 8
  END
 
  /* get value from panel */
  "VGET (DBname ARVdate TBLname1 TBLname2 TBLname3 ,
         TBLname4 TBLname5 TBLname6) SHARED"
  DBname   = STRIP(DBname  ,b)
  ARVdate  = STRIP(ARVdate ,b)
  TBLname1 = STRIP(TBLname1,b)
  TBLname2 = STRIP(TBLname2,b)
  TBLname3 = STRIP(TBLname3,b)
  TBLname4 = STRIP(TBLname4,b)
  TBLname5 = STRIP(TBLname5,b)
  TBLname6 = STRIP(TBLname6,b)
 
  RETURN

这只是个框架,还是个半成品。呵呵。
panel(p@30610)在上篇博文中有写。
上一篇:【z/OS】z/OS上的Panel
下一篇:【AS/400】400上第一个java程序HelloWorld