Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

f4_field_on_value-request

suneel_uggina
Participant
0 Likes
1,491

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.

1 ACCEPTED SOLUTION
Read only

former_member209120
Active Contributor
0 Likes
1,413

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


5 REPLIES 5
Read only

Former Member
0 Likes
1,413

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.

Read only

Former Member
0 Likes
1,413

Hi Suneel,

Could you please elaborate a little more on what is your exact requirement?

Thanks,

Arnab

Read only

Arun_Prabhu_K
Active Contributor
0 Likes
1,413

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.

Read only

Former Member
0 Likes
1,413
Read only

former_member209120
Active Contributor
0 Likes
1,414

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