We have a transaction A, which triggers transaction B. This is an existing process, now we modified the program in such a way that transaction A will trigger a new transaction C also.
We created the transaction C by keeping B as the model transaction. Now the issue is in our testing is we are finding that the control is not going into the new program C. However the transaction ENQCT of C increases everytime.
If we stop the transcation C and triggers A then the QCT of C increases...(which is normal) but still the control is not going inside the program. In short new transaction is getting triggered, but program is not executing.
We have done PSB gen as well as ACB Gen. Please note that no changes has been made for Database or DBDs.
As you said, ENQCT and QCT has been increased, It sounds like normal to me.
Let's check few things.
1. Does transaction C work well by itself?
2. What will happen in QCT if you use /STO PROG PROG-C it should be same as /STO TRAN TRAN-C that you did already, if not check IMS stage gen with MTO
3. Please check ALTPCB in PSBGEN for A transaction, are you going to use 2 ALTPCBs for each transactions or 1 ALTPCB with CHNG/PURG call?
Thanks for your response... I cross checked the points which you have mentioned.
1. When I just enter the transaction name alone, the ENQCT of the transaction increases. But yes in that case also neither the program abends nor the display statements i added at the beginning is getting displayed.
2. Yes the QCT increases when i trigger the transaction A after stopping the program C
3. In our case the program A is calling a sub program to trigger the transaction. So we are also re using the same sub-program. No changes are made in the sub program, only the input varies.
The trigger code in sub program is as
Code:
MOVE CC-PROG TO PROG-NAME-SAVED
MOVE MODULE-NAME TO CC-PROG.
CALL 'CIMS' USING ISCOM,
PURG,
ALT-PCB2.
MOVE 'A1A4' TO CC-ACCEPT-STATUS.
CALL 'CIMS' USING ISCOM,
CHNG,
ALT-PCB2,
LS-TRIGGER.
IF CC-STATUS-CODE NOT = SPACES
MOVE PROG-NAME-SAVED TO CC-PROG
GOBACK.
MOVE SPACES TO CC-ACCEPT-STATUS.
MOVE LS-TRIGGER TO WS-TRIGGER.
CALL 'CIMS' USING ISCOM,
ISRT,
ALT-PCB2,
WS-TRANS.
1, Make sure QCTs are zero before you start, if not ask MTO to DEQUEUE all entries for your transactions especially C.
2. Check your transaction class using DIS TRAN command
3. Issue STO REG reg# command with all related message regions, ask MTO if you don't have authority
4. Issue STA REG regname command with all regions that you stopped, ask MTO if you don't have authority
5. Enter your transaction again
Yes i did verified the class of the transaction.
i also used Debug tool... After the call for the new transaction the control just comes out back into the Debug tool.. where as for the case that triggers transaction B control goes into the program B.
I dont have authority to stop and start a region, but will ask my System Ops team to do that.
Thanks for your reply. it is much appreciated.
Will update the forumn once the issue is resolved