View previous topic :: View next topic
|
Author |
Message |
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
Hi all,
I have a requirement where I need to trigger a CICS program when a message is placed in MQ just to add on to this requirement additional conditions is that this transaction should be active during a particular batch cycle.
So what I do is I did an enable of the transaction while start of the batch cycle and disable it while end of the batch cycle.
Things are fine until now.
One fine day there where some messages being placed before batch cycle started and the transaction would have been disabled that point of time . Say after few hours the batch cycle runs and enables the transaction which would execute the CICS program.
But after the transaction is being enabled the messages are not being picked and processed or in better words the transactions and the cics program are in enabled mode but the program X is not triggered even if I place a fresh message in the MQ.
But a strange thing is what I noticed
I initially had the trigger type as FIRST and trigger DEPTH as say 100 and once I altered the trigger type to EVERY the transactions are getting processed
Like wise I had initially made the queue as trigger type EVERY and disabled the transaction and placed few messages and enabled the transaction the program did not execute unless I changed the Trigger type to First .
Can someone guide me so that to make sure the trigger happens until the queue is empty very after enabling the transaction? |
|
Back to top |
|
|
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
I made use of EXCI interface and made the program x to run in start of batch first time after enabling the transaction and all subsequent triggers getting invoked fine |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Good to hear it is working - thank you for letting us know
d |
|
Back to top |
|
|
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
I am not sure if MQ experts have encountered this kinda scenario if not
I feel the MQ triggers should not go inactive once the transaction is disabled and enabled but should be triggered untill MQ vessel is empty
I want some inputs / clarification for the same |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Does the documentation not mention the effect of a diable and subsequent enable? I suspect that it is working as planned, but i'm not knowledgable enough to say more than "i suspect". . .
While waiting for someone who might have had a similar experience to reply, you could open an issue with IBM and ask what alternatives might be available. |
|
Back to top |
|
|
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
Sure Dick thanks |
|
Back to top |
|
|
Jose Mateo
Active User
Joined: 29 Oct 2010 Posts: 121 Location: Puerto Rico
|
|
|
|
Good afternoon!
Your real problem is the transaction been set to disable. Find out why the transaction is been set to disable because the MQ manager gets a record in the queue and he trys to trigger the CICS transaction which is disable then there's no CICS process to process the records in the queue. |
|
Back to top |
|
|
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
Thanks Jose
The Issue here is I know the CICS transaction which is getting triggered should be made available during a particular batch cycle so this transaction can be made available only during that cycle.
Say I enable the transaction in the morning at 8am and disable at 2 pm
So the messages being placed after 2 pm it would try to execute the transaction but it wont and the next day these messages should be processed once in morning 8am it is being enabled
As the messages are there in queue , my question is after the transaction is being enabled why doesnt it process the messages ? |
|
Back to top |
|
|
Jose Mateo
Active User
Joined: 29 Oct 2010 Posts: 121 Location: Puerto Rico
|
|
|
|
Good day, Pandora-box!
Your queue is not been process because your trigger is temporary disable until you do a stop and start on the queue which should restart the trigger. Do you have access to your MQ monitor and do you know how to use the MQ monitor? If 'yes' to all, then go into the MQ monitor and look at settings of your queue. Make sure your 'trigger enabled' is set to 'Y' and 'Y' to 'allow trigger to restart'. Then do a stop and start on the queue. If your answer to the previous questions was 'no' then ask your MQ administrator to restart the trigger for your queue. |
|
Back to top |
|
|
|