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

Displaying message on Panel


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
hdc123

New User


Joined: 15 May 2006
Posts: 7

PostPosted: Thu Sep 14, 2006 5:33 pm
Reply with quote

How to display messages like 'Invalid Name' or 'Invalid Cursor Position' on panel itself?
I am using SETMSG but it is not working.
Back to top
View user's profile Send private message
ofer71

Global Moderator


Joined: 27 Dec 2005
Posts: 2358
Location: Israel

PostPosted: Thu Sep 14, 2006 5:51 pm
Reply with quote

Can you show us your panel ? (please use CODE)

O.
Back to top
View user's profile Send private message
hdc123

New User


Joined: 15 May 2006
Posts: 7

PostPosted: Thu Sep 14, 2006 6:11 pm
Reply with quote

ofer71 wrote:
Can you show us your panel ? (please use CODE)

O.


hi ofer71,
thanks for ur reply.
i want to show message through rexx program not using )PROC of panel.
What i have coded is like this:

"libdef ispmlib dataset id(PDS)"

do forever
"display panel(mainpan)"
select
when zsel = 1 then
call readtable
when zsel = 2 then
call scantable
when keypress = PF03 then
exit
otherwise
"setmsg msg(ispfms12)"
end
end
exit

Is it possible to show message like this?
Back to top
View user's profile Send private message
ofer71

Global Moderator


Joined: 27 Dec 2005
Posts: 2358
Location: Israel

PostPosted: Thu Sep 14, 2006 6:14 pm
Reply with quote

I have a feeling that you want to display an ISPF table. However, you are using the DISPLAY service instead TBDISPL.

Again, can you show us the panel itself?

O.
Back to top
View user's profile Send private message
hdc123

New User


Joined: 15 May 2006
Posts: 7

PostPosted: Thu Sep 14, 2006 6:18 pm
Reply with quote

ofer71 wrote:
I have a feeling that you want to display an ISPF table. However, you are using the DISPLAY service instead TBDISPL.

Again, can you show us the panel itself?

O.

hey i no i am not displaying table, my panel is like this:
)ATTR
% TYPE(TEXT) INTENS(HIGH)
+ TYPE(TEXT) INTENS(LOW)
_ TYPE(INPUT) INTENS(HIGH) CAPS(ON) JUST(LEFT)
! TYPE(PS)
@ TYPE(PT)
$ TYPE(FP)
? TYPE(PIN)
)BODY EXPAND(//)
@/-/- Display -/-/
$Option ===>_ZCMD $Date->&ZDATESTD
+
? Enter what you want to do :
+
+ %1+ View the list
%2+ Edit the list
+

? F1 = Help F3 = Exit
+
)INIT
.HELP = helpmain
)PROC
&ZSEL=&ZCMD
&KEYPRESS =&ZPFKEY
)END
Back to top
View user's profile Send private message
ofer71

Global Moderator


Joined: 27 Dec 2005
Posts: 2358
Location: Israel

PostPosted: Thu Sep 14, 2006 6:25 pm
Reply with quote

Here is a little trick:
Code:
)ATTR                                                                   
      + TYPE(TEXT)   INTENS(LOW) SKIP(ON) COLOR(GREEN)                 
      % TYPE(TEXT)   INTENS(HIGH)SKIP(ON) PAD(' ')                     
      _ TYPE(INPUT)  INTENS(HIGH)         HILITE(USCORE)               
      ? TYPE(TEXT)   INTENS(NON) SKIP(ON) COLOR(GREEN)                 
      \ TYPE(INPUT)  INTENS(NON)          HILITE(USCORE)               
      ! TYPE(OUTPUT) INTENS(LOW) SKIP(ON) COLOR(RED) CAPS(OFF)         
)BODY WINDOW (58,14)                                                   
%&ZDATE       +                                    %&ZTIME             
+                                                                       
+                                                                       
+PDS     ==>_DELPDS                                      +             
+                                                                       
+Pattern ==>_WILDCARD+                                                 
+                                                                       
+                                                                       
?Confirm deletion ===>\CON?(Yes/No)                                     
+                                                                       
+                                                                       
!DMSG                                                    +             
+                                                                       
+Press%PF3+to exit+                                                     
)INIT                                                                   
 VGET (TEMPCON DMSG) PROFILE                                           
  &ZWINTTL = 'Delete members of PDS'                                   
  &ZPRIM   = NO                                                         
 &CON      = 'NO'                                                       
 IF (&TEMPCON = 'SHOW')                                                 
   .ATTRCHAR(?) = 'INTENS(LOW)'                                         
   .ATTRCHAR(\) = 'INTENS(HIGH)'                                       
)PROC                                                                   
  VER (&CON,NB,LIST,'YES','NO','yes','no')                             
  VER (&DELPDS,NB,DSNAME)                                               
  &DMSG = ' '                                                           
  VPUT (DELPDS WILDCARD CON) PROFILE                                   
)END                                                                   


The line "Confirm deletion ===>\CON?(Yes/No) " is displayed only if TEMPCON = 'SHOW'. TEMPCON is a variable VPUTed from REXX.

O.
Back to top
View user's profile Send private message
cpuhawg

Active User


Joined: 14 Jun 2006
Posts: 331
Location: Jacksonville, FL

PostPosted: Thu Sep 14, 2006 6:39 pm
Reply with quote

You can send a message to the panel with REXX using:

Code:

IF NEWJOBNM = "" THEN DO                   
   ZEDSMSG = "JOBNAME NOT GIVEN"           
   ZEDLMSG = "THE JOBNAME WILL NOT CHANGE"
   ADDRESS ISPEXEC "SETMSG MSG(ISRZ001)"   
   RETURN                                 
END                                       


In this example, if NEWJOBNM is blank, the "JOBNAME NOT GIVEN" short message will appear in the upper message area. If PF1 (HELP) is pressed, the "THE JOBNAME WILL NOT CHANGE" long message will be displayed.
You can you also use variables like:

ZEDLMSG = "THE JOBNAME WILL REMAIN"||OLDJOBNM
Back to top
View user's profile Send private message
hdc123

New User


Joined: 15 May 2006
Posts: 7

PostPosted: Thu Sep 14, 2006 6:44 pm
Reply with quote

cpuhawg wrote:
You can send a message to the panel with REXX using:

Code:

IF NEWJOBNM = "" THEN DO                   
   ZEDSMSG = "JOBNAME NOT GIVEN"           
   ZEDLMSG = "THE JOBNAME WILL NOT CHANGE"
   ADDRESS ISPEXEC "SETMSG MSG(ISRZ001)"   
   RETURN                                 
END                                       


In this example, if NEWJOBNM is blank, the "JOBNAME NOT GIVEN" short message will appear in the upper message area. If PF1 (HELP) is pressed, the "THE JOBNAME WILL NOT CHANGE" long message will be displayed.
You can you also use variables like:

ZEDLMSG = "THE JOBNAME WILL REMAIN"||OLDJOBNM





Thanks cpuhawg.
Back to top
View user's profile Send private message
Mickeydusaor

Active User


Joined: 24 May 2006
Posts: 258
Location: Salem, Oregon

PostPosted: Thu Sep 14, 2006 8:28 pm
Reply with quote

Code:
)PANEL
)ATTR
  + TYPE(TEXT)   COLOR(BLUE)   INTENS(LOW)  SKIP(ON)  SKIP(ON)
  % TYPE(TEXT)   COLOR(WHITE)  INTENS(HIGH) CAPS(ON)  SKIP(ON)
  @ TYPE(TEXT)   COLOR(YELLOW) INTENS(HIGH) CAPS(OFF) SKIP(ON)
  _ TYPE(INPUT)  COLOR(YELLOW) INTENS(NON)  CAPS(ON)
  # TYPE(OUTPUT) COLOR(YELLOW) INTENS(HIGH) CAPS(OFF) SKIP(ON)
  $ TYPE(OUTPUT) COLOR(PINK)   INTENS(HIGH) CAPS(OFF) SKIP(ON)
)BODY WINDOW(57,04) SMSG(SMGEMSG)
+#SMGDATE    +   @Rexx Processing Messages     #SMGTIME +
+                                                       +
+                                                       +
@MSG:$SMGEMSG                                           +
)INIT
  VGET (SMGDATE SMGTIME SMGEMSG) PROFILE

)END


Then in my rexx when I check variables or need to issue a message I do the following. Example

Code:
IF TERMUSER = ''
  THEN DO
    SMGEMSG = 'Missing Required User'

    SIGNAL CANUERRS
  END


Code:
CANUERRS:
 ADDRESS 'ISPEXEC'

 "VPUT (SMGEMSG)" PROFILE

 "ADDPOP ROW(7) COLUMN(8)"
 "DISPLAY PANEL(ISPFPOPM)"

CANUEXIT:
 
 RETURN RTRNCODE



I do not have to create a ISPMLIB member, and I build messages on the fly when executing my rexx and display a popup with the message.
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 -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Execute secondary panel of sdsf with ... CLIST & REXX 1
This topic is locked: you cannot edit posts or make replies. how can I proof that message was post... Java & MQSeries 1
No new posts IBM OnDemand Folders displaying to al... IBM Tools 6
No new posts IMS Message : DFS3577A IMS DB/DC 4
No new posts Call program, directly from panel CLIST & REXX 9
Search our Forums:

Back to Top