2006 Sep 12 2:51 PM
HI all
I cam to know that in selection screen if we enter value in one field the fields can be filled by its corresponding values . Eg: If we enter material no field then the correspondig values will be entered into other select options Plant and stotrage location.
If can to know that it is possible through fuction module f4in_table_value_equest. I tried this but iam unable to get the result.
I saw in search help docmentation that through import and export parameter it is possible.
Thanks in advance
Ranjith
HI all
I cam to know that in selection screen if we enter value in one field the fields can be filled by its corresponding values . Eg: If we enter material no field then the correspondig values will be entered into other select options Plant and stotrage location.
If can to know that it is possible through fuction module f4in_table_value_equest. I tried this but iam unable to get the result.
I saw in search help docmentation that through import and export parameter it is possible.
Thanks in advance
Ranjith
2006 Sep 12 2:55 PM
Check the Sample code:
MODULE f4_cont_partner INPUT.
TYPES : BEGIN OF ty_contact_partner,
partner2 TYPE bu_partner,
lastname TYPE bu_namep_l,
firstname TYPE bu_namep_f,
END OF ty_contact_partner.
DATA: li_cont_partner TYPE STANDARD TABLE OF ty_contact_partner.
DATA: lwa_cont_partner TYPE ty_contact_partner.
DATA: li_ret_tab1 LIKE ddshretval OCCURS 0 WITH HEADER LINE.
DATA: lt_dynpfields1 LIKE dynpread OCCURS 0 WITH HEADER LINE.
DATA: lws_bp1 TYPE eanl-zzkunnr.
DATA: lws_last_name LIKE but000-name_last,
lws_first_name LIKE but000-name_first,
lws_job_title LIKE but000-title_let,
lws_title LIKE but000-title,
lws_initials LIKE but000-initials,
lws_telephone_no LIKE adr2-telnr_long,
lws_fax_no LIKE adr3-faxnr_long,
lws_std_def_com TYPE ad_comm,
lws_e_mail TYPE ad_smtpadr,
lws_notes TYPE iconname,
lws_time_from(8) TYPE c,
lws_time_to(8) TYPE c,
lwa_cp_data TYPE zcpdt_det.
CLEAR: lws_last_name, lws_first_name, lws_job_title,
lws_telephone_no, lws_fax_no, lws_notes,
lws_time_from, lws_time_to, lws_title,
lws_std_def_com, lws_e_mail, lws_initials.
CLEAR: li_cont_partner, lwa_cont_partner, li_ret_tab1, lt_dynpfields1,
lws_bp1, lwa_cp_data.
REFRESH: li_cont_partner, li_ret_tab, lt_dynpfields1.
lt_dynpfields1-fieldname = text-063. "EANL-ZZKUNNR
APPEND lt_dynpfields1.
CLEAR lt_dynpfields1.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
translate_to_upper = c_x
TABLES
dynpfields = lt_dynpfields1
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 EQ 0.
READ TABLE lt_dynpfields1 INDEX 1.
IF sy-subrc = 0.
lws_bp1 = lt_dynpfields1-fieldvalue.
ENDIF.
ENDIF.
IF NOT lws_bp1 IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = lws_bp1
IMPORTING
output = lws_bp1.
SELECT partner2 FROM but051 INTO TABLE li_cont_partner
WHERE partner1 = lws_bp1.
ELSE.
SELECT partner2 FROM but051 INTO TABLE li_cont_partner.
ENDIF.
Deleting Adjacent duplicates
SORT li_cont_partner BY partner2.
DELETE ADJACENT DUPLICATES FROM li_cont_partner COMPARING partner2.
LOOP AT li_cont_partner INTO lwa_cont_partner.
To get first name, last name
CALL FUNCTION 'ZS_GET_CP_DETAILS_FOR_INST'
EXPORTING
contact_per = lwa_cont_partner-partner2
IMPORTING
cp_det = lwa_cp_data
EXCEPTIONS
contact_per_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
lwa_cont_partner-firstname = space.
lwa_cont_partner-lastname = space.
ENDIF.
IF NOT lwa_cp_data IS INITIAL.
lwa_cont_partner-firstname = lwa_cp_data-name_first.
lwa_cont_partner-lastname = lwa_cp_data-name_last.
ENDIF.
MODIFY li_cont_partner FROM lwa_cont_partner.
CLEAR: lws_last_name, lws_first_name, lws_job_title,
lws_telephone_no, lws_fax_no, lws_notes,
lws_time_from, lws_time_to, lws_title,
lws_std_def_com, lws_e_mail, lws_initials,
lwa_cp_data, lwa_cont_partner.
ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = text-100
dynpnr = sy-dynnr
dynpprog = sy-repid
dynprofield = text-101
value_org = c_s
TABLES
value_tab = li_cont_partner
return_tab = li_ret_tab1
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDMODULE. " f4_cont_partner INPUT
2006 Sep 12 2:59 PM
Hi ranjith,
1. eg.
2. If we select company code on selection screen,
then corresponding
company name
country
should automatically come.
3. just copy paste.
(Important code has been marked Important)
4.
REPORT abc.
*----
DATA : dd LIKE TABLE OF dselc WITH HEADER LINE. "*--- IMPORTANT
DATA : ft LIKE TABLE OF dfies WITH HEADER LINE.
DATA : t001 LIKE TABLE OF t001 WITH HEADER LINE.
*----
PARAMETERS : bukrs LIKE t001-bukrs .
PARAMETERS : butxt LIKE t001-butxt.
PARAMETERS : ort01 LIKE t001-ort01.
PARAMETERS : waers LIKE t001-waers.
*----
AT SELECTION-SCREEN ON VALUE-REQUEST FOR bukrs.
SELECT * FROM t001 INTO TABLE t001.
*----
IMPORTANT
REFRESH dd.
dd-fldname = 'BUTXT'.
dd-dyfldname = 'BUTXT'.
APPEND dd.
dd-fldname = 'ORT01'.
dd-dyfldname = 'ORT01'.
APPEND dd.
dd-fldname = 'WAERS'.
dd-dyfldname = 'WAERS'.
APPEND dd.
*------- IMPORTANT
REFRESH ft.
ft-tabname = 'T001'.
ft-fieldname = 'BUTXT'.
APPEND ft.
ft-tabname = 'T001'.
ft-fieldname = 'WAERS'.
APPEND ft.
ft-tabname = 'T001'.
ft-fieldname = 'ORT01'.
APPEND ft.
*----
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
ddic_structure = 'T001' "*----- IMPORTANT IF STANDARD STRUCT
retfield = 'BUKRS'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'BUKRS'
value_org = 'S'
TABLES
field_tab = ft "*---- IMPORTANT
value_tab = t001
dynpfld_mapping = dd "* IMPORTANT
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
regards,
amit m.
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |