Hi guru,
In a report prg there is an event called :
at SELECTION-SCREEN on VALUE-REQUEST FOR <fieldname>.
pls tell me that when i am using a module pool prg how do I
call the above event.
In other words what is the module pool equivalent for the
above event which is used in a report prg.
Hope I am able explain my query.

Answer Posted / saifur rahaman

you need to use FM 'DYNP_VALUES_READ' to read the screen
fields if you are not using OKCODE as ENTER.

For this functional module you need to pass passing the
program name, screen number and get the screen field vale
in dynpfileds table in the PROCESS ON VALUE-REQUEST.

see the sample code below.

PROCESS ON VALUE-REQUEST.
FIELD v_item MODULE f4help_item.
refresh it_dynpfields.
wa_dynpfields-fieldname = 'V_VBELN'.
append wa_dynpfields to it_dynpfields.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING dyname = sy-repid
dynumb = sy-dynnr
* TRANSLATE_TO_UPPER = ' '
* REQUEST = ' '
* PERFORM_CONVERSION_EXITS = ' '
* PERFORM_INPUT_CONVERSION = ' '
* DETERMINE_LOOP_INDEX = ' '
tables dynpfields = it_dynpfields.
* EXCEPTIONS
* INVALID_ABAPWORKAREA = 1
* INVALID_DYNPROFIELD = 2
* INVALID_DYNPRONAME = 3
* INVALID_DYNPRONUMMER = 4
* INVALID_REQUEST = 5
* NO_FIELDDESCRIPTION = 6
* INVALID_PARAMETER = 7
* UNDEFIND_ERROR = 8
* DOUBLE_CONVERSION = 9
* STEPL_NOT_FOUND = 10
* OTHERS = 11 .
IF sy-subrc 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

LOOP AT it_dynpfields into wa_dynpfields.

IF wa_dynpfields-fieldname = 'V_VBELN'.

V_VBELN = wa_dynpfields-fieldvalue.

ENDIF.
ENDLOOP.

IF NOT v_vbeln IS INITIAL.

SELECT vbeln posnr FROM vbrp INTO TABLE it_posnr WHERE
vbeln = v_vbeln.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
retfield = 'POSNR'
* PVALKEY = ' '
dynpprog = 'Z42778_F4_TEST'
dynpnr = '1000'
dynprofield = 'V_ITEM'
* STEPL = 0
* WINDOW_TITLE =
* VALUE = ' '
value_org = 'S'
* MULTIPLE_CHOICE = ' '
* DISPLAY = ' '
* CALLBACK_PROGRAM = ' '
* CALLBACK_FORM = ' '
* MARK_TAB =
* IMPORTING
* USER_RESET =
TABLES
value_tab = it_posnr.
* FIELD_TAB =
* RETURN_TAB =
* DYNPFLD_MAPPING = v_project
* EXCEPTIONS
* PARAMETER_ERROR = 1
* NO_VALUES_FOUND = 2
* OTHERS = 3

ENDIF.

Is This Answer Correct ?    4 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How to eliminate duplicate entries in internal tables? : abap data dictionary

793


What is pretty printer?

605


What are the basic object types? : sap abap hr

637


What is the difference between bdc_open_group and bdc_open_dataset. : abap bdc

623


Explain what is a logical database?

608






what are the two methods of modifying sap standard tables? : abap data dictionary

638


What are the events used in interactive reports?

626


What is meant by read lock? : sap abap data dictionary

569


Explain what are the problems in processing batch input sessions? How is batch input process different from processing on line?

594


when do you need to create an internal table with header line ? and with out a header line?

1502


What are the types of data types in the sap abap?

486


Why do we use Abstract classes give an example from your project?

897


Explain the table, which contain the details of all the name of the programs and forms?

533


How do you process errors in session method ? : abap bdc

593


What are the differences between primary and secondary indexes?

622