View previous topic :: View next topic
|
Author |
Message |
rukkunudeen
New User
Joined: 16 Sep 2008 Posts: 4 Location: chennai
|
|
|
|
i have a map sfm0030 and a pgm sfofrc30 associated with it.the transaction id is sf51.
when i give sf51 it is displaying the map;[ the map actually gets 3 values from the user jobname,date,file name]
when the map is displayed, i enter the values and press enter ;the validation is done for the entered values.if successfull it goes to next map else displays the message.
PROBLEM: if i give any value wrongly ;the error msg is displayed in the map; but when i correct the value and press enter again it shows an error message[becoz the other two values are now having low-values;it is not reatining the values]
ex: jobname : aa3000n1
filaname : atest.sample.file
date : 08220008
i have given the date wrong ;so it tells invalid date and displays the map
jobname : aa3000n1
filaname : atest.sample.file
date :
invalid date
so i enter the date again and press enter
jobname : aa3000n1
filaname : atest.sample.file
date : 08222008
no it tells invalid jobname becoz jobname now has low-values? how to retain the old values
NOTE: i even tried
return transid(sf51)
commarea(ws-commarea)
length(60)
it is not working.
since this is the first map i couldn't use linkage section also |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
You can store the values in the commarea and use flags in the commarea to denote which value(s) need to be updated. Or you could set the MDT on all 3 fields so they come back into the map when you receive it again. |
|
Back to top |
|
|
rukkunudeen
New User
Joined: 16 Sep 2008 Posts: 4 Location: chennai
|
|
|
|
Robert Sample wrote: |
You can store the values in the commarea and use flags in the commarea to denote which value(s) need to be updated. Or you could set the MDT on all 3 fields so they come back into the map when you receive it again. |
just a doubt robert wat do u mean by commarea?
will MDT work? |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8697 Location: Dubuque, Iowa, USA
|
|
|
|
Set MDT on all 3 fields before sending the map; you'll get back all 3 fields each time. That's the easiest solution. Or you could do something like:
Code: |
MOVE MAP-JOB-NAME TO COMMAREA-JOB-NAME
MOVE MAP-DATE TO COMMAREA-DATE
MOVE MAP-FILE-NAME TO COMMAREA-FILE-NAME
set COMMAREA-JOB-NAME-FLAG, COMMAREA-DATE-FLAG, COMMAREA-FILE-NAME-FLAG to appropriate value (E for error, space for ok?)
EXEC CICS RETURN TRANSID(SF51) COMMAREA(WS-COMMAREA) END-EXEC
. |
when your program starts back up you can retrieve the map and update the appropriate value that was in error.
This is all basic CICS stuff -- unless you're just learning CICS you should have done several of these already. |
|
Back to top |
|
|
|