‎2006 Sep 21 9:42 AM
i have to input fields
if i select value for one filed next filed value has to come automatically.
if i change any of the two input fileds changes also reflect.
please send me the sample code
thanks.
‎2006 Sep 21 9:51 AM
Hi,
Point me out if im perceive your case wrongly.
I would see you have field A and B. The search help for field B is mainly dependent from the value filled for field A.
The search help for field B you can use FM F4IF_INT_TABLE_VALUE_REQUEST to populate it.
TAB_FIELDS-TABNAME = 'TQ30T'.
TAB_FIELDS-FIELDNAME = 'ART'.
APPEND TAB_FIELDS. CLEAR TAB_FIELDS.
TAB_FIELDS-TABNAME = 'TQ30T'.
TAB_FIELDS-FIELDNAME = 'KURZTEXT'.
APPEND TAB_FIELDS. CLEAR TAB_FIELDS.
SELECT ART KURZTEXT
INTO TABLE ITAB_HELP
FROM TQ30T
WHERE SPRACHE = 'EN'.
LOOP AT ITAB_HELP.
TAB_VALUETAB = ITAB_HELP-ART.
APPEND TAB_VALUETAB. CLEAR TAB_VALUETAB.
TAB_VALUETAB = ITAB_HELP-KURZTEXT.
APPEND TAB_VALUETAB. CLEAR TAB_VALUETAB.
ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'ART'
DYNPPROG = WS_REPID
DYNPNR = '1000'
DYNPROFIELD = 'REASONCODE015014'
TABLES
VALUE_TAB = TAB_VALUETAB
FIELD_TAB = TAB_FIELDS
RETURN_TAB = TAB_RETURNTAB.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
‎2006 Sep 21 9:51 AM
Hi,
Point me out if im perceive your case wrongly.
I would see you have field A and B. The search help for field B is mainly dependent from the value filled for field A.
The search help for field B you can use FM F4IF_INT_TABLE_VALUE_REQUEST to populate it.
TAB_FIELDS-TABNAME = 'TQ30T'.
TAB_FIELDS-FIELDNAME = 'ART'.
APPEND TAB_FIELDS. CLEAR TAB_FIELDS.
TAB_FIELDS-TABNAME = 'TQ30T'.
TAB_FIELDS-FIELDNAME = 'KURZTEXT'.
APPEND TAB_FIELDS. CLEAR TAB_FIELDS.
SELECT ART KURZTEXT
INTO TABLE ITAB_HELP
FROM TQ30T
WHERE SPRACHE = 'EN'.
LOOP AT ITAB_HELP.
TAB_VALUETAB = ITAB_HELP-ART.
APPEND TAB_VALUETAB. CLEAR TAB_VALUETAB.
TAB_VALUETAB = ITAB_HELP-KURZTEXT.
APPEND TAB_VALUETAB. CLEAR TAB_VALUETAB.
ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'ART'
DYNPPROG = WS_REPID
DYNPNR = '1000'
DYNPROFIELD = 'REASONCODE015014'
TABLES
VALUE_TAB = TAB_VALUETAB
FIELD_TAB = TAB_FIELDS
RETURN_TAB = TAB_RETURNTAB.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
‎2006 Sep 21 9:55 AM
Hi,
You need to check the Export check button in search help(Previously known as matchcode object) for the field which you want to take the corresponding field value from the selection.
Regards:-
Santosh.D
‎2006 Sep 21 10:11 AM
hi,
execute the following code and check.
whther you are asking abt this code.
REPORT zb_testing LINE-SIZE 1023.
parameters: p_bukrs type t001-bukrs,
p_butxt type t001-butxt,
p_ort01 type t001-ort01,
p_land1 type t001-land1.
data: dynfields type table of dynpread with header line.
data: return type table of ddshretval with header line.
at selection-screen on value-request for p_bukrs.
call function 'F4IF_FIELD_VALUE_REQUEST'
exporting
tabname = 'T001'
fieldname = 'BUKRS'
dynpprog = sy-cprog
dynpnr = sy-dynnr
dynprofield = 'P_BUKRS'
tables
return_tab = return
exceptions
field_not_found = 1
no_help_for_field = 2
inconsistent_help = 3
no_values_found = 4
others = 5.
read table return with key fieldname = 'P_BUKRS'.
Add it back to the dynpro.
dynfields-fieldname = return-retfield.
dynfields-fieldvalue = return-fieldval.
append dynfields.
Get the company code from db and add to dynpro
data: xt001 type t001.
clear xt001.
select single * into xt001
from t001
where bukrs = return-fieldval.
dynfields-fieldname = 'P_BUTXT'.
dynfields-fieldvalue = xt001-butxt.
append dynfields.
dynfields-fieldname = 'P_ORT01'.
dynfields-fieldvalue = xt001-ort01.
append dynfields.
dynfields-fieldname = 'P_LAND1'.
dynfields-fieldvalue = xt001-land1.
append dynfields.
Update the dynpro values.
call function 'DYNP_VALUES_UPDATE'
exporting
dyname = sy-cprog
dynumb = sy-dynnr
tables
dynpfields = dynfields
exceptions
others = 8.