TAA Tools


 The Send  Status Message command  simplifies the interface  for sending
 and removing status messages from either CL or a HLL program.

   **   Assume you  have a CL  program where you  want to send  a status
        message  before creating  an outfile  and then  blank the status
        message  line   following  the  outfile   creation,  you   would

               SNDSTSMSG    MSG('DSPOBJD outfile being created.')
               DSPOBJD      ... OUTFILE(xxx)
               SNDSTSMSG    MSG(*REMOVE)

   **   Assume you have  an RPG program where you want  to send a status
        message.  You would specify:

                CALL 'SNDSTS'
                PARM             MSG      80

        You  would move the text  of the message you  want sent into the
        MSG field.  When you want  to remove the message, you would  use
        the same  call with the value  *REMOVE left adjusted in  the MSG

 Up to 80 bytes of text can be sent as a status message.

 The  *REMOVE function does  not actually  remove a status  message, but
 sends the system  message CPI9801  which is designed  for blanking  out
 the status message line on the display.

 The  command uses  the  QMHSNDPM API  so  the performance  approximates
 sending a status message using SNDPGMMSG.

 DLY Parameter

 The  DLY  parameter  on SNDSTSMSG  ensures  that  the  message will  be
 displayed  for at  least the specified  number of seconds.   The intent
 of this parameter  is for when  the function to  be performed that  you
 want  to describe in  the status  message may  last momentarily  or for
 several seconds.

 By  specifying a  DLY  value, the  status message  will appear  for the
 minimum number of seconds described.

 The DLY function is performed  by automatically creating the  TAASNDSTS
 data area in QTEMP  whenever the DLY parameter is used.   The data area
 contains  the value  of the  current  time plus  the number  of seconds

 When a second  SNDSTSMSG is  run, the  data area  is checked  and if  a
 value exists, the command  will delay until the time is  reached.  Note
 that this  also occurs if  *REMOVE is requested.   The *REMOVE function
 will delay and then delete the TAASNDSTS data area.

 The  DLY function  is only  provided on  the SNDSTSMSG command  (not on
 the SNDSTS program).

 Removal of status messages

 There is only room  for one status message  on a display.  By  default,
 the message appears on the last line of the display.

 There are several methods of removing a status message:

   **   Using another status message to overlay the first message.

   **   Using SNDSTSMSG with MSG(*REMOVE).

        This  blanks  the  status  line.    The  same  function  can  be
        performed by using the API QMHSNDPM directly or using


   **   Returning to command entry.

   **   Opening a display file.

 Command parameters                                    *CMD

    MSG           The  message  text  desired.    An  expression  can be
                  used.  Up to  80 bytes can be  entered.  No period  is
                  added at the end of the text.

                  The special value  *REMOVE may be specified  to remove
                  the  status message.   When *REMOVE  is requested, the
                  TAASNDSTS data area in QTEMP is deleted.

    DLY           The number  of  seconds  to  ensure  that  the  status
                  message  will exist  at  a minimum.    The default  is
                  *NONE meaning 0 delay.

                  A  value of  0 to  100 may  be  entered to  ensure the
                  message  appears  for at  least  that period  of time.
                  If another SNDSTSMSG  occurs prior to the  delay time,
                  the  job  will  wait  and then  the  second  SNDSTSMSG
                  function is performed.

                  The  intent of this  parameter is to  allow the status
                  message to be read  by the user when  it is not  known
                  what  the  duration  of  a  potentially  long  running
                  function will  be.  For example, if  you want a status
                  message during  the creation  of  an outfile  and  the
                  number of  records written will  vary based on  a user
                  request, the  time required could vary  from less than
                  a  second  to many  seconds.   In  addition,  the same
                  function performed on  different CPU models will  also
                  cause differences.

                  By  specifying a DLY  value, you  can ensure  that the
                  status  message will be  read long enough  to be read.

    JOBLOG        A *YES/*NO/*BATCH parameter  for whether  to send  the
                  message to the job log.

                  *NO is the default.

                  *YES may be  specified to send the message  to the job
                  log.    If  the job  is  operating  interactively, the
                  message is sent  to both the  interactive display  and
                  to the  job log.   If the job  is operating in  batch,
                  the message is sent to the job log.

                  *BATCH  may be specified  to send  the message  to the
                  job log if the job is operating in batch.




 The following TAA Tools must be on your system:

        ADDTIM        Add time
        CLCTIMDIF     Calculate time difference


 None, the tool is ready to use.

 Objects used by the tool

    Object        Type    Attribute      Src member    Src file
    ------        ----    ---------      ----------    ----------

    SNDSTSMSG     *CMD                   TAAMSGR       QATTCMD
    TAAMSGRC      *PGM       CLP         SNDSTS        QATTCL
    TAAMSGRC2     *PGM       CLP         TAAMSGRC2     QATTCL

 A data area named TAASNDSTS is created in QTEMP if DLY(xx) is used.

Added to TAA Productivity Tools April 1, 1995

Home Page

Last modified on November 19, 2014 © 1995, 2014 - TAA Tools, Inc.