IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Regarding FSET & FRSET ,Symbolic Map F * field.


IBM Mainframe Forums -> CICS
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
balaji81_k

Active User


Joined: 29 Jun 2005
Posts: 155

PostPosted: Thu Feb 10, 2011 3:09 pm
Reply with quote

Hi Folks ,

In symbolic map we have Field F * attribute for all the input field . I want to know how to check this for the input field I* whether the value is changed or not in the screen (BMS) .

For example FIELDA is the field and the corresponding field attribute
will be FIELDAF .

What condition i need to check to check for value is changed or not is something like how we will check for the Length (L) to check whether it has value or not .

Please help.

Thanks
Balaji K
Back to top
View user's profile Send private message
david jackson

New User


Joined: 24 Jan 2011
Posts: 22
Location: California

PostPosted: Thu Feb 10, 2011 10:31 pm
Reply with quote

Assuming you are pseudo conversational.
First check if the DFHCOMMAREA Length is present and either move the Commarea to a work area or SEND the initial map (with a Commarea) and RETURN if no Commarea was present.

Receive the MAP.

Check DFHAID to determine which key was pressed and handle CLEAR, and the PA keys accordingly etc.

Then check each field to have been erased (using the EOF key) by checking the "F" field to be DFHBMEOF. if it was erased, clear the work field from the Commarea so you are keeping your commarea work area in sync with the screen data.

Otherwise check if the user entered some value into the field by checking the "L" field to be zero which signifies nothing was entered.
If something was entered - put it in the Commarea work area overwriting whatever was in that work area field previously.

Do that for all your fields then go use the COMMAREA work area which now has all the latest fields (not yet validated to be correct) and do your continuing validation and processing from there.

Finally send the map with any messages and highlighting etc and Return with the Commarea containing the current fields ready for the next RECEIVE MAP.

This is all very basic CICS pseudo conversational map processing.
Back to top
View user's profile Send private message
balaji81_k

Active User


Joined: 29 Jun 2005
Posts: 155

PostPosted: Fri Feb 11, 2011 12:11 pm
Reply with quote

Hi David,

The program is pseudo conversational and commarea is single elementary field which is if X(500) and all fields will occupy the postion and there is no proper mapping is done in the existing production code.
Now we have a requirement that if any data is changed on screen and after validation and want to save the data i need to highilight the fields of the changed ones.

Please note that X(500) will holds both input and outcopybook and in debug iam able to find the position of changing field and iam able to highlight that but when i thought oF future when lengh is increased all the code which points to postion level control needs to change?.

So i decided to go from field to field mapping . On debug whethere value is changed / or having value the FIELDL is always > 0 and FIELDF will always have X'00' and not X'02' & X'80'.

1ST TIME FORMAT OF SEND : SEND MAP , ERASE.
2ND TIME " " " : SEND MAP DATAONLY
3RD TIME IF ANY ERROR : SEND MAP DATAONLY ALRAM.

in BMS all the map fields are ATTRB=(UNPROT, FSET) .

Can you help on this ?

Thanks
Balaji K
Back to top
View user's profile Send private message
david jackson

New User


Joined: 24 Jan 2011
Posts: 22
Location: California

PostPosted: Fri Feb 11, 2011 11:46 pm
Reply with quote

Why use FSET? FSET will send the Field regardless of whether the user overtyped the field value or not.

You are only interested in knowing which fields were changed.
So if you remove FSET and check the field for EraseEOF in the 'F' field and handle it accordingly. If Not EraseEof, then check the field's Length >0 and that will show the field contents were changed.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CICS

 


Similar Topics
Topic Forum Replies
No new posts Replace Multiple Field values to Othe... DFSORT/ICETOOL 12
No new posts Join 2 files according to one key field. JCL & VSAM 3
No new posts How to move the first field of each r... DFSORT/ICETOOL 5
No new posts S0C7 - Field getting overlayed COBOL Programming 2
No new posts Masking variable size field - min 10 ... DFSORT/ICETOOL 4
Search our Forums:

Back to Top