The Browse sample is a batch application that demonstrates how to browse messages on a queue using the MQGET call. The application steps through all the messages in a queue, printing the first 80 bytes of each one. You could use this application to look at the messages on a queue without changing them.
Source programs and sample run JCL are supplied in the COBOL, assembler, PL/I, and C languages (see Table 46).
To start the application, you must edit and run the sample run JCL, as described in Preparing and running sample applications for the batch environment. You can look at messages on one of your own queues by specifying the name of the queue in the run JCL.
When you run the application (and there are some messages on the queue), the output data set looks this:
07/12/1998                        SAMPLE QUEUE REPORT         PAGE    1
                       QUEUE MANAGER NAME : VC4
                               QUEUE NAME : CSQ4SAMP.DEAD.QUEUE
        RELATIVE
         MESSAGE   MESSAGE
         NUMBER    LENGTH ------------------- MESSAGE DATA -------------
 
              1       740 HELLO. PLEASE CALL ME WHEN YOU GET BACK.
              2       429 CSQ4BQRM
              3       429 CSQ4BQRM
              4       429 CSQ4BQRM
              5        22 THIS IS A TEST MESSAGE
              6         8 CSQ4TEST
              7        36 CSQ4MSG - ANOTHER TEST MESSAGE.....!
              8         9 CSQ4STOP
                                      ********** END OF REPORT **********
If there are no messages on the queue, the data set contains the headings and the "End of report" message only. If an error occurs with any of the MQI calls, the completion and reason codes are added to the output data set.
The Browse sample application uses a single program module--one is provided in each of the supported programming languages.
The flow through the program logic is:
The way that the program tests the parameters it is passed from the JCL depends on the language in which the program is written--for more information, see Language-dependent design considerations.
The MQGMO_ACCEPT_TRUNCATED_MSG option allows the call to complete even if the message is longer than the 80-byte buffer specified in the call. If the message is longer than the buffer, the message is truncated to fit the buffer, and the completion and reason codes are set to show this. The sample was designed so that messages are truncated to 80 characters simply to make the report easy to read. The buffer size is set by a DEFINE statement, so you can easily change it if you want to.
Source modules are provided for the Browse sample in four programming languages. There are two main differences between the source modules: