‎2004 Dec 16 4:22 PM
Hi Forum
After looking for an answer quite a while, here my question. How can I catch when a value is entered or changed in a dynpro field when the cursor remains in the changed field and no other action (mouse or keyboard) is performed. There must be a catchable change to the value of a dynpro field if it is altered from e.g. '1' to a '2'.
Can anyone help me in this?
‎2004 Dec 16 4:46 PM
Use Function Module '<b>DYNP_VALUES_READ</b>' for this.
Regards,
Subramanian V.
‎2004 Dec 16 4:58 PM
Hello Subramanian
Thanks for your reply. How does this function module "know" when a value in a dynpro field has changed? As I mentioned I need the interrupt to be after the user pressed a key within in the dynpro field. Can you elaborate on how I can get this done?
Thanks
Harry
‎2004 Dec 16 5:11 PM
Hi Harry,
'DYNP_VALUES_READ' is used to capture data entered into the dynpro fields in the PAI(or process on value-request ) event before the data entered on the screen are transferred to corresponding program fields. You can not use it for the functionality you asked. I do not think that it is possible to detect that data entered into a dynpro field is changed, without triggering the PAI event(you have to at least press enter).
Kind Regards,
Sükrü
‎2004 Dec 16 6:21 PM
As far as I know this not possible for ordinary text fields. If you have only few valid values you might mark it as listbox and apply a Function-Code to it.
Kind Regards
Klaus
‎2004 Dec 16 6:31 PM
The only way that you are going to accomplish this is to implement a timer(CL_GUI_TIMER). Using a timer, you can check the field every 1 second or so to see if it has changed. I have done some test programs which do just that, but it really does make for a messy interface, if the user is typing something at the exact time the timer is checking the field, it will cause a hicup.
Regards,
Rich Heilman