ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General Discussion » Front End for MQ cmd line utility

Post new topic  Reply to topic
 Front End for MQ cmd line utility « View previous topic :: View next topic » 
Author Message
offshore
PostPosted: Tue Oct 19, 2004 10:48 am    Post subject: Front End for MQ cmd line utility Reply with quote

Master

Joined: 20 Jun 2002
Posts: 222

All,

Thought I would share this "menu" system I created for MQ commands.
Feedback is appreciated if you:
1] Like It
2] Hate It
3] Wonder why anyone would spend their time doing something like this
4] Improvements
5] Too much work for you to make all the changes.

This started out as my own front end menu system for Paul's MO72 Support pac to quickly administer a queue manager. Then it evolved into a couple other things that I have needed. I tend to use cmd line alot more than a GUI. I see no reason it wouldn't connect to a UNIX or zSeries machine with the right tayloring.

Any questions or if you have trouble getting it to work, PM me or post a reply. I'll try to help out.

Requirements are MQ Series, MO72 support pac, understanding of NT batch programming, MQCHLLIB & MQCHLTAB variables setup.

1.] Save As: CQMGRA.CMD
This one is what all the others were built from and for it to work it will need the MO72 SP installed. This lets all the administration be done to a queue manager and tells MO72 to do all the work.
    Changes for your installation:
    1.]The ECHO commands that display queue managers names will need changed to your queue managers.

    2.]The CALL statements path's will need changed to where ever you decide to put it. IE: Currently its set to C:\DIR\xxxx.CMD You can change the xxxx.cmd name, but I would recommend keeping it the same.

    3.]In each of the subroutines the QMGR and Hostname will need changed to connect. Also the MQSC.exe will have to be in windows path or specify the entire path in the CMD file.
    MQSC -m QMTEST1 -c SYSTEM.DEF.SVRCONN -h HOSTNAME


Code:
ECHO OFF
:BEGIN
COLOR 0B
CLS
TITLE MQ SERIES QMGR CLIENT CONNECT
ECHO ****************************************************************
ECHO *          MQ SERIES QUEUE MANAGER SELECTION PANEL             *
ECHO *                                                              *
ECHO *               QUEUE MANAGER ADMINISTRATION                   *
ECHO *                 [IBM - MO72 SUPPORT PAC]                     *
ECHO ****************************************************************
ECHO * Time: %TIME%                       Date: %DATE% *
ECHO ****************************************************************
ECHO.
ECHO.
ECHO     MESSAGE MANAGEMENT
ECHO    -------------------
ECHO    B. Browse Message        (AMQSBCGC)
ECHO    G. Get Messages          (AMQGETC)
ECHO    P. Put Messages          (AMQPUTC)
ECHO    R. AMQ_MSG/MQ RC LOOKUP  (MQRC)
ECHO.
ECHO.
ECHO     TEST ENVIRONMENT              PRODUCTION ENIVIRONMENT
ECHO    ------------------------       -------------------------
ECHO    1. QMTEST1                     9. QMPROD1
ECHO    2. QMTEST2                   10. QMPROD2
ECHO    3. QMTEST3                   11. QMPROD3
ECHO.                   
ECHO.
ECHO     ACCEPTANCE ENVIRONMENT
ECHO    ------------------------
ECHO    4. QMACCP1
ECHO    5. QMACCP2
ECHO    6. QMACCP3
ECHO    7. QMACCP4
ECHO    8. QMACCP5
ECHO.
ECHO.
ECHO   99. QUIT
ECHO ------------------------------------------------------------
SET ANS=
SET /P ANS=Enter an option:
if not '%ANS%'=='' set ANS=%ANS:~0,2%
IF '%ANS%'=='1' GOTO 1
IF '%ANS%'=='2' GOTO 2
IF '%ANS%'=='3' GOTO 3
IF '%ANS%'=='4' GOTO 4
IF '%ANS%'=='5' GOTO 5
IF '%ANS%'=='6' GOTO 7
IF '%ANS%'=='8' GOTO 8
IF '%ANS%'=='9' GOTO 9
IF '%ANS%'=='10' GOTO 10
IF '%ANS%'=='11' GOTO 11
IF '%ANS%'=='B' CALL C:\DIR\RMQBRWS.CMD
IF '%ANS%'=='b' CALL C:\DIR\RMQBRWS.CMD
IF '%ANS%'=='G' CALL C:\DIR\RMQGET.CMD
IF '%ANS%'=='g' CALL C:\DIR\RMQGET.CMD
IF '%ANS%'=='P' CALL C:\DIR\RMQPUT.CMD
IF '%ANS%'=='p' CALL C:\DIR\RMQPUT.CMD
IF '%ANS%'=='R' GOTO RC
IF '%ANS%'=='r' GOTO RC
IF '%ANS%'=='99' EXIT
ECHO "%ANS%" IS NOT A VALID, PLEASE TRY AGAIN.
ECHO.
PAUSE
GOTO BEGIN

:1
CLS
MQSC -m QMTEST1 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:2
CLS
MQSC -m QMTEST2 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:3
CLS
MQSC -m QMTEST3 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:4
CLS
MQSC -m QMACCP1 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:5
CLS
MQSC -m QMACCP2 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:6
CLS
MQSC -m QMACCP3 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:7
CLS
MQSC -m QMACCP4 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:8
CLS
MQSC -m QMACCP5 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:9
CLS
MQSC -m QMPROD1 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:10
CLS
MQSC -m QMPROD2 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:11
CLS
MQSC -m QMPROD3 -c SYSTEM.DEF.SVRCONN -h HOSTNAME
GOTO BEGIN

:RC
CLS
COLOR 0C
ECHO.
ECHO IBM MQRC - AMQ MESSAGE and RETURN CODE Lookup
ECHO ---------------------------------------------
ECHO.
SET RC=1
SET /P RC=What AMQ Message or MQ Return Code do you want to lookup?:
mqrc "%RC%"
PAUSE
GOTO BEGIN


2.] Save As: RMQBRWS.CMD
Uses AMQSBCGC to connect. MQCHLLIB & MQCHLTAB need setup and configured on your system.

This lets you browse messages in a queue either on line or write out to a file and the view the file. The view option opens notepad to read the message. If no path is specified when asked for location to write message, it will write the message by default to C:\Program Files\IBM\WebSphere MQ\AMQBRWSE.TXT

    Changes for you installation
    1.]The ECHO commands that display queue managers names will need changed to your queue managers.

    2.]The CALL statements path's will need changed to where ever you decide to put it.

    3.]In each of the subroutines the SET QMGR= variable will need changed to reflect an actual queue manager at your site.


Code:
ECHO OFF
:BEGIN
COLOR 0D
CLS
TITLE MQ SERIES REMOTE QMGR MESSAGE BROWSE
ECHO ****************************************************************
ECHO *          MQ SERIES REMOTE MESSAGE BROWSE UTILITY             *
ECHO *                                                              *
ECHO *                                                              *
ECHO *                    [IBM - AMQSBCGC]                          *
ECHO ****************************************************************
ECHO.
ECHO     TEST ENVIRONMENT          PRODUCTION ENIVIRONMENT
ECHO    ------------------------      -------------------------
ECHO    1. QMTEST1             9. QMPROD1
ECHO    2. QMTEST2            10. QMPROD2
ECHO    3. QMTEST3            11. QMPROD3
ECHO.                   
ECHO.
ECHO     ACCEPTANCE ENVIRONMENT
ECHO    ------------------------
ECHO    4. QMACCP1
ECHO    5. QMACCP2
ECHO    6. QMACCP3
ECHO    7. QMACCP4
ECHO    8. QMACCP5
ECHO.
ECHO.
ECHO    V. View message(s) written to a file
ECHO    R. Retrieve AMQ_MESSAGE OR MQ Return Codes
ECHO.
ECHO   90. MAIN SELECTION PANEL
ECHO   99. QUIT
ECHO ------------------------------------------------------------
SET ANS=
SET /P ANS=Enter the number of the QMGR to connect:
if not '%ANS%'=='' set ANS=%ANS:~0,2%
IF '%ANS%'=='1' GOTO 1
IF '%ANS%'=='2' GOTO 2
IF '%ANS%'=='3' GOTO 3
IF '%ANS%'=='4' GOTO 4
IF '%ANS%'=='5' GOTO 5
IF '%ANS%'=='6' GOTO 7
IF '%ANS%'=='8' GOTO 8
IF '%ANS%'=='9' GOTO 9
IF '%ANS%'=='10' GOTO 10
IF '%ANS%'=='11' GOTO 11
IF '%ANS%'=='R' GOTO RC
IF '%ANS%'=='r' GOTO RC
IF '%ANS%'=='V' GOTO VIEW
IF '%ANS%'=='v' GOTO VIEW
IF '%ANS%'=='90' CALL C:\DIR\CQMGRA.CMD
IF '%ANS%'=='99' EXIT

CLS
ECHO "%ANS%" IS NOT A VALID CHOICE.
ECHO.
PAUSE
GOTO BEGIN

:1
SET QMGR=QMTEST1
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 1

:2
SET QMGR=QMTEST2
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 2

:3
SET QMGR=QMTEST3
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 3

:4
SET QMGR=QMACCP1
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 4

:5
SET QMGR=QMACCP2
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 5

:6
SET QMGR=QMACCP3
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 6

:7
SET QMGR=QMACCP4
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 7

:8
SET QMGR=QMACCP5
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 8

:9
SET QMGR=QMPROD1
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 9

:10
SET QMGR=QMPROD2
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 10

:11
SET QMGR=QMPROD3
SET ANS3=
SET /P ANS3=Do you want to write the message out to a file? (Y/N):
if not '%ANS3%'=='' set ANS3=%ANS3:~0,2%
IF '%ANS3%' == 'Y' GOTO WRITE
IF '%ANS3%' == 'y' GOTO WRITE
IF '%ANS3%' == 'N' GOTO NOWRITE
IF '%ANS3%' == 'n' GOTO NOWRITE
ECHO.
ECHO "%ANS3%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO 11

:AGAIN
SET ANS2=
SET /P ANS2=MQGET another message to a queue on %QMGR% (Y/N)? :
IF NOT '%ANS2%'=='' SET ANS2=%ANS2:~0,1%
IF '%ANS2%'=='Y' GOTO 1
IF '%ANS2%'=='y' GOTO 1
IF '%ANS2%'=='N' GOTO BEGIN
IF '%ANS2%'=='n' GOTO BEGIN
ECHO.
ECHO "%ANS2%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO AGAIN

:WRITE
SET QNAME=
SET FILE="C:\PROGRAM FILES\IBM\WebSphere MQ\AMQBRSWE.TXT"
SET /P FILE=Enter the path and filename to write message to:
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSBCGC >%FILE% %QNAME% %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO Target PATH/FILE Parm was: %FILE%
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:NOWRITE
SET QNAME=
SET /P QNAME=Enter the queue you want to browse: 
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSBCGC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:RC
CLS
COLOR 0C
ECHO.
ECHO IBM MQRC - AMQ MESSAGE RETURN CODE LOOKUP
ECHO -------------------------------------------
ECHO.
SET RC=1
SET /P RC=What AMQ Message or MQ Return Code do you want to lookup?:
mqrc "%RC%"
PAUSE
GOTO BEGIN

:VIEW
START NOTEPAD %FILE%
GOTO BEGIN


3.] Save As: RMQPUT.CMD
Uses AMQSPUTC to connect. MQCHLLIB & MQCHLTAB need setup and configured on your system.
This lets you put messages to a queue.

    Changes for you installation
    1.]The ECHO commands that display queue managers names will need changed to your queue managers.

    2.]The CALL statements path's will need changed to where ever you decide to put it.

    3.]In each of the subroutines the SET QMGR= variable will need changed to reflect an actual queue manager at your site.


Code:
ECHO OFF
:BEGIN
COLOR 0A
CLS
TITLE MQ SERIES REMOTE QMGR MESSAGE PUT
ECHO ****************************************************************
ECHO *             MQ SERIES REMOTE MESSAGE PUT UTILITY             *
ECHO *                                                              *
ECHO *                                                              *
ECHO *                    [IBM - AMQSPUTC]                          *
ECHO ****************************************************************
ECHO.
ECHO     TEST ENVIRONMENT          PRODUCTION ENIVIRONMENT
ECHO    ------------------------      -------------------------
ECHO    1. QMTEST1             9. QMPROD1
ECHO    2. QMTEST2            10. QMPROD2
ECHO    3. QMTEST3            11. QMPROD3
ECHO.                   
ECHO.
ECHO     ACCEPTANCE ENVIRONMENT
ECHO    ------------------------
ECHO    4. QMACCP1
ECHO    5. QMACCP2
ECHO    6. QMACCP3
ECHO    7. QMACCP4
ECHO    8. QMACCP5
ECHO.
ECHO.
ECHO    R. Retrieve AMQ_MESSAGE or MQ Return Codes
ECHO.
ECHO   90. MAIN SELECTION PANEL
ECHO   99. QUIT
ECHO ------------------------------------------------------------
SET ANS=
SET /P ANS=Enter the number of the QMGR to connect:
if not '%ANS%'=='' set ANS=%ANS:~0,2%
IF '%ANS%'=='1' GOTO 1
IF '%ANS%'=='2' GOTO 2
IF '%ANS%'=='3' GOTO 3
IF '%ANS%'=='4' GOTO 4
IF '%ANS%'=='5' GOTO 5
IF '%ANS%'=='6' GOTO 7
IF '%ANS%'=='8' GOTO 8
IF '%ANS%'=='9' GOTO 9
IF '%ANS%'=='10' GOTO 10
IF '%ANS%'=='11' GOTO 11
IF '%ANS%'=='R' GOTO RC
IF '%ANS%'=='r' GOTO RC
IF '%ANS%'=='90' CALL C:\DIR\CQMGRA.CMD
IF '%ANS%'=='99' EXIT

CLS
ECHO "%ANS%" IS NOT A VALID CHOICE.
ECHO.
PAUSE
GOTO BEGIN

:1
CLS
SET QMGR=QMTEST1
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN


:2
CLS
SET QMGR=QMTEST2
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:3
CLS
SET QMGR=QMTEST3
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:4
CLS
SET QMGR=QMACCP1
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:5
CLS
SET QMGR=QMACCP2
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:6
CLS
SET QMGR=QMACCP3
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:7
CLS
SET QMGR=QMACCP4
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:8
CLS
SET QMGR=QMACCP5
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:9
CLS
SET QMGR=QMPROD1
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:10
CLS
SET QMGR=QMPROD2
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:11
CLS
SET QMGR=QMPROD3
SET QNAME=
SET /P QNAME=Enter the queue you want to put a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSPUTC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:RC
CLS
COLOR 0C
ECHO.
ECHO IBM MQRC - AMQ MESSAGE RETURN CODE LOOKUP
ECHO -------------------------------------------
ECHO.
SET RC=1
SET /P RC=What AMQ Message or MQ Return Code do you want to lookup?:
mqrc "%RC%"
PAUSE
GOTO BEGIN


:AGAIN
SET ANS2=
SET /P ANS2=MQPut another message to a queue on %QMGR% (Y/N)? :
IF NOT '%ANS2%'=='' SET ANS2=%ANS2:~0,1%
IF '%ANS2%'=='Y' GOTO 1
IF '%ANS2%'=='y' GOTO 1
IF '%ANS2%'=='N' GOTO BEGIN
IF '%ANS2%'=='n' GOTO BEGIN
ECHO.
ECHO "%ANS2%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO AGAIN


3.] Save As: RMQGET.CMD
Uses AMQSGETC to connect. MQCHLLIB & MQCHLTAB need setup and configured on your system.
This lets you get (destuctive) messages from a queue.

    Changes for you installation
    1.]The ECHO commands that display queue managers names will need changed to your queue managers.

    2.]The CALL statements path's will need changed to where ever you decide to put it.

    3.]In each of the subroutines the SET QMGR= variable will need changed to reflect an actual queue manager at your site.


Code:
ECHO OFF
:BEGIN
COLOR 0E
CLS
TITLE MQ SERIES REMOTE QMGR MESSAGE GET
ECHO ****************************************************************
ECHO *             MQ SERIES REMOTE MESSAGE GET UTILITY             *
ECHO *                                                              *
ECHO *                                                              *
ECHO *                    [IBM - AMQSGETC]                          *
ECHO ****************************************************************
ECHO.
ECHO     TEST ENVIRONMENT          PRODUCTION ENIVIRONMENT
ECHO    ------------------------      -------------------------
ECHO    1. QMTEST1             9. QMPROD1
ECHO    2. QMTEST2            10. QMPROD2
ECHO    3. QMTEST3            11. QMPROD3
ECHO.                   
ECHO.
ECHO     ACCEPTANCE ENVIRONMENT
ECHO    ------------------------
ECHO    4. QMACCP1
ECHO    5. QMACCP2
ECHO    6. QMACCP3
ECHO    7. QMACCP4
ECHO    8. QMACCP5
ECHO.
ECHO.
ECHO    R. Retrieve AMQ_MESSAGE or MQ Return Codes
ECHO.
ECHO   90. MAIN SELECTION PANEL
ECHO   99. QUIT
ECHO ------------------------------------------------------------
SET ANS=
SET /P ANS=Enter the number of the QMGR to connect:
if not '%ANS%'=='' set ANS=%ANS:~0,2%
IF '%ANS%'=='1' GOTO 1
IF '%ANS%'=='2' GOTO 2
IF '%ANS%'=='3' GOTO 3
IF '%ANS%'=='4' GOTO 4
IF '%ANS%'=='5' GOTO 5
IF '%ANS%'=='6' GOTO 7
IF '%ANS%'=='8' GOTO 8
IF '%ANS%'=='9' GOTO 9
IF '%ANS%'=='10' GOTO 10
IF '%ANS%'=='11' GOTO 11
IF '%ANS%'=='R' GOTO RC
IF '%ANS%'=='r' GOTO RC

IF '%ANS%'=='90' CALL c:\DIR\CQMGRA.CMD
IF '%ANS%'=='99' EXIT

CLS
ECHO "%ANS%" IS NOT A VALID CHOICE.
ECHO.
PAUSE
GOTO BEGIN

:1
CLS
SET QMGR=QMTEST1
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN


:2
CLS
SET QMGR=QMTEST2
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:3
CLS
SET QMGR=QMTEST3
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:4
CLS
SET QMGR=QMACCP1
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:5
CLS
SET QMGR=QMACCP2
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:6
CLS
SET QMGR=QMACCP3
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:7
CLS
SET QMGR=QMACCP4
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:8
CLS
SET QMGR=QMACCP5
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:9
CLS
SET QMGR=QMPROD1
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:10
CLS
SET QMGR=QMPROD2
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:11
CLS
SET QMGR=QMPROD3
SET QNAME=
SET /P QNAME=Enter the queue you want to GET a message on:
if not '%QNAME%'=='' set QNAME=%QNAME:~0,100%
AMQSGETC "%QNAME%" %QMGR%
ECHO.
ECHO.
ECHO Target QUEUE Parm was: "%QNAME%"
ECHO.
PAUSE
ECHO.
ECHO ----------------------------------
GOTO AGAIN

:RC
CLS
COLOR 0C
ECHO.
ECHO IBM MQRC - AMQ MESSAGE RETURN CODE LOOKUP
ECHO -------------------------------------------
ECHO.
SET RC=1
SET /P RC=What AMQ Message or MQ Return Code do you want to lookup?:
mqrc "%RC%"
PAUSE
GOTO BEGIN

:AGAIN
SET ANS2=
SET /P ANS2=MQGET another message to a queue on %QMGR% (Y/N)? :
IF NOT '%ANS2%'=='' SET ANS2=%ANS2:~0,1%
IF '%ANS2%'=='Y' GOTO 1
IF '%ANS2%'=='y' GOTO 1
IF '%ANS2%'=='N' GOTO BEGIN
IF '%ANS2%'=='n' GOTO BEGIN
ECHO.
ECHO "%ANS2%" IS NOT VALID, PLEASE ENTER Y OR N.
ECHO.
GOTO AGAIN



Offshore
Back to top
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Tue Oct 19, 2004 3:06 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

I thought the whole point of using MO72 was to run it in batch and unattended. If you put a GUI on front you might as well use MO71 ?
Right ?
Back to top
View user's profile Send private message Send e-mail
offshore
PostPosted: Thu Oct 21, 2004 2:33 am    Post subject: Reply with quote

Master

Joined: 20 Jun 2002
Posts: 222

I could (and do use the MO71), but the problem is 99% of my queue managers are clustered and MO71 to my knowledge doesn't allow you to put a message to a cluster queue.

I guess I like having everything in 1 place, instead of using MO71, MO72, Explorer, ect for what I want to do at a given time. The menu system lets me do that. No one has to like, just thought I'd share.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General Discussion » Front End for MQ cmd line utility
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.