2013 Aug 06 3:44 PM
Hi,
i used call function 'f4_field_on_value_request' on following program.
TYPES: BEGIN OF ty_final,
matnr TYPE marc-werks,
END OF ty_final.
DATA:it_final TYPE TABLE OF ty_final WITH HEADER LINE,
wa_final TYPE ty_final.
DATA: it_return TYPE TABLE OF ddshretval WITH HEADER LINE.
PARAMETERS: p_werks(10) TYPE c.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_werks.
SELECT werks
FROM marc
INTO TABLE it_final.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
retfield = 'werks'
* PVALKEY = ' '
* DYNPPROG = ' '
* DYNPNR = ' '
* DYNPROFIELD = ' '
* STEPL = 0
* WINDOW_TITLE =
* VALUE = ' '
value_org = 'S'
=
TABLES
value_tab = it_final
return_tab = it_return
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
WRITE: it_return-fieldval TO p_marc.
After execution it returns a plant number to parameter p_werks.
Can any one suggest example queries that are applicable to p_werks value (returned plant number) in my program.
2013 Aug 07 9:38 AM
Hi Suneel,
Your code corrected, try like this
TYPES: BEGIN OF ty_final,
werks TYPE marc-werks,
END OF ty_final.
DATA:it_final TYPE TABLE OF ty_final,
wa_final TYPE ty_final.
DATA: it_return TYPE TABLE OF ddshretval WITH HEADER LINE.
PARAMETERS: p_werks(10) TYPE c.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_werks.
SELECT werks
FROM marc
INTO TABLE it_final.
DELETE ADJACENT DUPLICATES FROM it_final.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'WERKS'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'P_WERKS'
value_org = 'S'
TABLES
value_tab = it_final
return_tab = it_return.
WRITE: it_return-fieldval TO p_werks.
After selection
2013 Aug 07 8:11 AM
Hi Suneel,
Try this ,
DATA: RCUSTAB LIKE DDSHRETVAL OCCURS 1 WITH HEADER LINE.
TYPES: BEGIN OF type_carrid,
KUNNR LIKE KNA1-KUNNR,
END OF type_carrid.
DATA: CUSTAB TYPE STANDARD TABLE OF type_carrid.
SELECT KUNNR FROM KNA1 INTO TABLE CUSTAB
WHERE kunnr = '10000'.
REFRESH: RCUSTAB.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'Field name'
value_org = 'S'
TABLES
value_tab = CUSTAB
RETURN_TAB = RCUSTAB
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
2013 Aug 07 8:28 AM
Hi Suneel,
Could you please elaborate a little more on what is your exact requirement?
Thanks,
Arnab
2013 Aug 07 8:42 AM
Hi Suneel.
If you declare the parameter with reference to a standard table, automatically help facility will be extended to your program.
Eg: p_werks like T001W-werks.
2013 Aug 07 8:57 AM
2013 Aug 07 9:38 AM
Hi Suneel,
Your code corrected, try like this
TYPES: BEGIN OF ty_final,
werks TYPE marc-werks,
END OF ty_final.
DATA:it_final TYPE TABLE OF ty_final,
wa_final TYPE ty_final.
DATA: it_return TYPE TABLE OF ddshretval WITH HEADER LINE.
PARAMETERS: p_werks(10) TYPE c.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_werks.
SELECT werks
FROM marc
INTO TABLE it_final.
DELETE ADJACENT DUPLICATES FROM it_final.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'WERKS'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'P_WERKS'
value_org = 'S'
TABLES
value_tab = it_final
return_tab = it_return.
WRITE: it_return-fieldval TO p_werks.
After selection