We are developing applications with COBOL. We have CICS TS 1.3. In our applications, we want to open a new window...
over an opened-window. Is there any way to do this with CICS utilities?
To do this sort of thing, you need to save a copy of the existing 3270 screen (XC RECEIVE BUFFER to get it) and then simply send out the overlay screen (ensuring the cursor is positioned within it). Once you have done the interaction on the pop-up, just restore the current image (that which you saved, remembering to reposition the cursor to where it was) and off you go.
The general problem with this appraoch is that the existing screen info is still updateable (all those LU2 attribute bytes are still there) and so cursor autoskip will not work as expected (you run off the side of the pop-up and land up on the underlying screen image). Additionally, the underlying screen can have data keyed into it, which will disappear when you restore the image (this is probably what you want to happen).
If these effects worry you, you need to copy the XC RECEIVEd BUFFER and change all the unprotected attribute bytes to protected (iterate through the image and change the attribute bytes after the SF (x'1D') from x'..0.....' x'..1.....') and then send out this modified buffer before you send out the pop-up.
Dig Deeper on IBM system z and mainframe systems
Related Q&A from Robert Crawford
For better mainframe capacity planning, how do I convert CPU hours to MIPS? And is there a way to calculate the relationship between MIPS and MSUs?continue reading
I have two years of experience in mainframe technology, currently working as a mainframe developer. I want to change to Java technology.continue reading
I want to replicate DB2 from the mainframe to an AIX box since it's cheaper and the copy can be used for testing. Is this possible?continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.