Skip to main content

Response mode transactions in IMS

  • August 20, 2022
  • 3 replies
  • 2 views

Michael Schmitt

I've been evaluating Micro Focus Enterprise Developer, and I've run into another show-stopper for IMS/TM:

All of our IMS online transactions are defined as RESP(Y), which means:

The terminal from which the transaction is entered is held and prevents further input until a response is received.

What this does not mean is that a reponse-mode transaction has to return a response. It is OK to message switch to other transactions (even ones with RESP(Y) as long as at some point, you eventually do ISRT a message back to the terminal.

In fact, this sequence is allowed:

  1. User hits Enter on a screen A
  2. Tran A gets screen
  3. Tran A ISRTs via altpcb to tran B (a program-to-program message switch). Tran A is done.
  4. Tran B ISRTs via altpcb to tran C, D, E, and A again. Tran B is done.
  5. Tran C starts
  6. Tran D starts
  7. Tran E starts
  8. Tran A starts
  9. Tran C ends without inserting anything
  10. Tran A inserts screen back to terminal
  11. Tran D ends without inserting anything
  12. Tran E ends without inserting anything

even though all of the transactions are RESP(Y).

But in MFED this doesn't work. When tran C ends (step 9), MFED abends it with error

CASTM5052E IMS TM response mode transaction C terminated without a response

From what I can tell, it is requiring any transaction that was defined as RESP(Y) to return a response, even though that is not required.

(Note that one reason is that it is possible for the same transaction to be entered from a screen vs. PTP message switch.)

Is there some other setting in MFED I'm missing that would fix this?


#EnterpriseDeveloper

3 replies

Kim Hoskin
Forum|alt.badge.img+2
  • Moderator
  • August 22, 2022

I've been evaluating Micro Focus Enterprise Developer, and I've run into another show-stopper for IMS/TM:

All of our IMS online transactions are defined as RESP(Y), which means:

The terminal from which the transaction is entered is held and prevents further input until a response is received.

What this does not mean is that a reponse-mode transaction has to return a response. It is OK to message switch to other transactions (even ones with RESP(Y) as long as at some point, you eventually do ISRT a message back to the terminal.

In fact, this sequence is allowed:

  1. User hits Enter on a screen A
  2. Tran A gets screen
  3. Tran A ISRTs via altpcb to tran B (a program-to-program message switch). Tran A is done.
  4. Tran B ISRTs via altpcb to tran C, D, E, and A again. Tran B is done.
  5. Tran C starts
  6. Tran D starts
  7. Tran E starts
  8. Tran A starts
  9. Tran C ends without inserting anything
  10. Tran A inserts screen back to terminal
  11. Tran D ends without inserting anything
  12. Tran E ends without inserting anything

even though all of the transactions are RESP(Y).

But in MFED this doesn't work. When tran C ends (step 9), MFED abends it with error

CASTM5052E IMS TM response mode transaction C terminated without a response

From what I can tell, it is requiring any transaction that was defined as RESP(Y) to return a response, even though that is not required.

(Note that one reason is that it is possible for the same transaction to be entered from a screen vs. PTP message switch.)

Is there some other setting in MFED I'm missing that would fix this?


#EnterpriseDeveloper

Hi Michael,

As you describe this as being a show stopper I recommend you consider raising a support case to seek further assistance. When raising the case please consider to provide a recreate test case and diagnostics collection (using MFESDIAGS), that can help speed up the investigation.

In the meantime, have you considered to test with the "Wait for Input" option, see below:
Wait for Input - Check this to specify that this is a wait-for-input (WFI) transaction. Documentation URL:
www.microfocus.com/.../GUID-9DB898E9-4002-41F3-8278-3CBCCBAC65E4.html

MFESDIAGS download URL: marketplace.microfocus.com/.../mfesdiags

Regards,
Kim


Michael Schmitt
  • Author
  • Participating Frequently
  • August 23, 2022

Hi Michael,

As you describe this as being a show stopper I recommend you consider raising a support case to seek further assistance. When raising the case please consider to provide a recreate test case and diagnostics collection (using MFESDIAGS), that can help speed up the investigation.

In the meantime, have you considered to test with the "Wait for Input" option, see below:
Wait for Input - Check this to specify that this is a wait-for-input (WFI) transaction. Documentation URL:
www.microfocus.com/.../GUID-9DB898E9-4002-41F3-8278-3CBCCBAC65E4.html

MFESDIAGS download URL: marketplace.microfocus.com/.../mfesdiags

Regards,
Kim

I'm not thinking Wait-For-Input is related.  Or it shouldn't be related: AFAIK, WFI just has to do with whether IMS kicks a transaction out of a region when it runs out of input messages. Which we'd kind of want it to do, since we have hundreds of transactions but only a small number of message regions.

My evaluation runs out this week so there isn't much point in pursuing this until if and when have a real support license.


Kim Hoskin
Forum|alt.badge.img+2
  • Moderator
  • August 23, 2022

I'm not thinking Wait-For-Input is related.  Or it shouldn't be related: AFAIK, WFI just has to do with whether IMS kicks a transaction out of a region when it runs out of input messages. Which we'd kind of want it to do, since we have hundreds of transactions but only a small number of message regions.

My evaluation runs out this week so there isn't much point in pursuing this until if and when have a real support license.

Once you have obtained a real support license and the issue persists then I recommend you to consider raising a support case to seek further assistance, please consider to include a test case and diagnostics collection to aid troubleshooting.