Author |
Message
|
72dolfan |
Posted: Tue Jul 15, 2008 6:10 am Post subject: Change_Q PCF to change the Clstr Wkld Priority |
|
|
Acolyte
Joined: 02 May 2006 Posts: 53
|
Hi All,
Not sure if this is the correct forum, but I'll give it a shot. I've coded Cobol programs that issue Inquire_Q and Inquire_Q_Status PCF commands to pull back info on all local queues, and then parse through the responses to get what I need.
I'm trying to code a Change_Q command to alter the Cluster Workload Priority (MQIA_CLWL_Q_PRIORITY), but I'm not sure what to expect as far as messages returned via the command processor. What will I need to parse through to determine if the command was successful?
Thanks!!!!!!
Bill |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jul 15, 2008 6:45 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9470 Location: US: west coast, almost. Otherwise, enroute.
|
Take a look at the WebSphere MQ Programmable Command Formats and
Administration Interface manual SC34-6598. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jul 15, 2008 7:09 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
|
Back to top |
|
 |
72dolfan |
Posted: Tue Jul 15, 2008 9:49 am Post subject: |
|
|
Acolyte
Joined: 02 May 2006 Posts: 53
|
Got it! Thanks for all your help (Bruce and Jeff)! |
|
Back to top |
|
 |
72dolfan |
Posted: Mon Jul 21, 2008 11:47 am Post subject: |
|
|
Acolyte
Joined: 02 May 2006 Posts: 53
|
Hi All,
I'm getting Reason Codes of 3228 and 3017 in my response messages to the following Change_Q I issued;
MOVE SPACES TO COMMAND-TEXT.
MOVE MQCFT-COMMAND-XR TO MQCFH-TYPE.
MOVE MQCFH-STRUC-LENGTH TO MQCFH-STRUCLENGTH.
MOVE MQCFH-CURRENT-VERSION TO MQCFH-VERSION.
MOVE MQCMD-CHANGE-Q TO MQCFH-COMMAND.
MOVE MQCFC-LAST TO MQCFH-MSGSEQNUMBER.
MOVE MQCFC-LAST TO MQCFH-CONTROL.
MOVE 3 TO MQCFH-PARAMETERCOUNT
MOVE MQCFT-STRING TO MQCFST-TYPE.
MOVE MQCFST-STRUC-LENGTH-FIXED TO MQCFST-STRUCLENGTH.
ADD 48 TO MQCFST-STRUCLENGTH.
MOVE MQCA-Q-NAME TO MQCFST-PARAMETER.
MOVE MQCCSI-DEFAULT TO MQCFST-CODEDCHARSETID.
MOVE 48 TO MQCFST-STRINGLENGTH.
MOVE MQCFT-INTEGER TO MQCFIN-TYPE.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH.
MOVE MQIA-Q-TYPE TO MQCFIN-PARAMETER.
MOVE MQQT-LOCAL TO MQCFIN-VALUE.
MOVE MQCFT-INTEGER TO MQCFIN-TYPE.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH.
MOVE MQIA-CLWL-Q-PRIORITY TO MQCFIN-PARAMETER.
MOVE WS-CLSTR-PRRTY-VALUE TO MQCFIN-VALUE.
MOVE +1 TO COMMAND-LENGTH.
STRING
MQ-PCF-HEADER
MQ-PCF-STRING
WORK-QUE-NAME
MQ-PCF-INTEGER
MQ-PCF-INTEGER
DELIMITED BY SIZE
INTO COMMAND-TEXT
WITH POINTER COMMAND-LENGTH
END-STRING.
he 3228 says I have a parm missing, and the 3017 says I have duplicate parms. From what I read, the required parms for the Change_Q are Queue, Queue Length, and Queue Type. I obviously missed something along the way. Can anyone help me out? Thanks !!!! |
|
Back to top |
|
 |
72dolfan |
Posted: Wed Jul 23, 2008 6:42 am Post subject: |
|
|
Acolyte
Joined: 02 May 2006 Posts: 53
|
Hi All,
I still haven't figured this out. Any help you can provide would be greatly appreciated!
Thanks! |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jul 23, 2008 7:47 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
I don't see a MQCFIN-VALUE for MQCA-Q-NAME...
Not, of course, that you would set a MQCFIN value on that, but you don't appear to be setting *any* value.
Just the CCSID. |
|
Back to top |
|
 |
72dolfan |
Posted: Wed Jul 23, 2008 9:46 am Post subject: |
|
|
Acolyte
Joined: 02 May 2006 Posts: 53
|
Hi Jeff, thanks for responding.
The value for the queue name is Work-Que-Name, which is being passed when I string the command into the Command-Text.
I just figured out the problem. The following were using the same 01 level in my Working storage
MOVE MQCFT-INTEGER TO MQCFIN-TYPE.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH.
MOVE MQIA-Q-TYPE TO MQCFIN-PARAMETER.
MOVE MQQT-LOCAL TO MQCFIN-VALUE.
MOVE MQCFT-INTEGER TO MQCFIN-TYPE.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH.
MOVE MQIA-CLWL-Q-PRIORITY TO MQCFIN-PARAMETER.
MOVE WS-CLSTR-PRRTY-VALUE TO MQCFIN-VALUE.
I changed it to use two different copy books;
01 MQ-PCF-INTEGER-L
COPY CMQCFINL.
01 MQ-PCF-INTEGER-V
COPY CMQCFINL.
So building those pieces now looks like this;
MOVE MQCFT-INTEGER TO MQCFIN-TYPE
OF MQ-PCF-INTEGER-L.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH
OF MQ-PCF-INTEGER-L.
MOVE MQIA-Q-TYPE TO MQCFIN-PARAMETER
OF MQ-PCF-INTEGER-L.
MOVE MQQT-LOCAL TO MQCFIN-VALUE
OF MQ-PCF-INTEGER-L.
MOVE MQCFT-INTEGER TO MQCFIN-TYPE
OF MQ-PCF-INTEGER-V.
MOVE MQCFIN-STRUC-LENGTH TO MQCFIN-STRUCLENGTH
OF MQ-PCF-INTEGER-V.
MOVE MQIA-CLWL-Q-PRIORITY TO MQCFIN-PARAMETER
OF MQ-PCF-INTEGER-V.
MOVE WS-CLSTR-PRRTY-VALUE TO MQCFIN-VALUE
OF MQ-PCF-INTEGER-V.
And Stringing the Command in Command-Text is as follows;
STRING
MQ-PCF-HEADER
MQ-PCF-STRING
WORK-QUE-NAME
MQ-PCF-INTEGER-L
MQ-PCF-INTEGER-V
DELIMITED BY SIZE
INTO COMMAND-TEXT
WITH POINTER COMMAND-LENGTH
END-STRING.
Thanks for al your help. |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jul 23, 2008 10:32 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
72dolfan wrote: |
The value for the queue name is Work-Que-Name, which is being passed when I string the command into the Command-Text. |
Or, how to tell I don't know COBOL.
72dolfan wrote: |
I just figured out the problem. The following were using the same 01 level in my Working storage |
Oh, yeah. That makes sense. You were overwriting your first Parameter with your second, and then including it twice. So both your errors were correct - you did have a duplicate parameter and you were missing one. |
|
Back to top |
|
 |
|