Ask the Expert

Need help with the START command

I need help with the START command. What happened is: program A checks if PF1 is pressed, it starts transid(B) at same terminal. User pressed PF1 and right after that PF2 was pressed. Therefore, the user was kicked off from CICS region. How can I make the second PF key pressed by user stay at buffle until the started task finishes?

Requires Free Membership to View

Although it is difficult to understand your question, it looks like you have hit the dreaded EB trap.

When you do an XC START TRAN(Y) TERM(x) , the 3270 terminal is open for keyboard-related activity. Thus, if the user gets in quickly, they can initiate transaction Z before Y gets going. This is because, in VTAM terms, an End Bracket has flowed from CICS so permitting keyboard input.

In your case, it looks like the transaction initated by PF2 has got going before the one previously started by PF1 so causing the failure.

You get around this by not doing an XC START but an XC RETURN TRANSID(B) IMMEDIATE. This will start the B transaction at the terminal without ending the Bracket. The terminal will not be unlocked, and so the use of PF2 will not start its transaction as there is not an opportunity for the user to interrupt processing.

Transaction B had better check for PF2 after its first interaction with the user to reject usage.

This was first published in October 2002

There are Comments. Add yours.

TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: