|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Front End for MQ cmd line utility |
« View previous topic :: View next topic » |
Author |
Message
|
offshore |
Posted: Tue Oct 19, 2004 10:48 am Post subject: Front End for MQ cmd line utility |
|
|
 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 |
|
 |
fjb_saper |
Posted: Tue Oct 19, 2004 3:06 pm Post subject: |
|
|
 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 |
|
 |
offshore |
Posted: Thu Oct 21, 2004 2:33 am Post subject: |
|
|
 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 |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|