> -----Original Message-----
> From: IBM Mainframe Discussion List On Behalf Of Ganesh Rao
> 
> MOVE MAP-FIELD-ATTRIBUTE TO  DFHBMFLG
> IF DFHERASE
> 
> I think the above code should help you. Note: That is not the 
> same as TM

Yes, it looks like this is the "simplest" means in COBOL (Enterprise
COBOL 3.4).

For those who asked about the underlying problem:

We're experimenting with the new Service Flow feature of CICS TS 3.2,
and one of our programs in the "flow" tests for field erasure with IF
MAP-FIELD-ATTRIBUTE NOT = LOW-VALUES THEN ... .  This test has worked
for "years" over several releases of CICS, because if the field was not
erased (by pressing the Erase EOF key) the attribute (or more correctly,
"flag") byte always contained x'00' after AN EXEC CICS RECEIVE MAP
command.  In the Service Flow context, that same attribute byte contains
x'02' after the RECEIVE MAP, which indicates that the cursor is in that
field, and causes the program to take the "field erased" code path
(x'02' is not equal to LOW-VALUES).

I have a PMR open with CICS support over this inconsistency, and based
on the dialog to date in that PMR it appears that the Service Flow
processing is ignoring the CURSLOC=NO default that we take in all our
BMS mapset definitions.  That's why we never see the x'02' flag bit in
"native" 3270/BMS processing, but it suddenly started showing up in the
Service Flow, causing the program to misbehave.

    -jc-

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to