How to create POV help

Hi all,
Please tell me how to create POV help for module pool.
Regards,

hi,
Try this
PROCESS ON VALUE-REQUEST.
* Module to fetch the branch value
* from the screen
  FIELD zval_discount-zbranch
  MODULE value_branch.
* field Discount type WRT Branch
  FIELD zval_discount-zdisctyp
  MODULE f4_help_discount_type .
MODULE value_branch INPUT.
  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
    EXPORTING
      tabname           = 'ZVAL_DISCOUNT'
      fieldname         = 'ZBRANCH'
      dynpprog          = sy-repid
      dynpnr            = sy-dynnr
      dynprofield       = 'ZBRANCH'
    EXCEPTIONS
      field_not_found   = 1
      no_help_for_field = 2
      inconsistent_help = 3
      no_values_found   = 4
      OTHERS            = 5.
  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.                 " value_branch  INPUT
MODULE f4_help_discount_type INPUT.
  REFRESH :
    i_dynpread,
    r_branch,
    i_disctyp.
  CLEAR   wa_dynpread.
  IF sy-dynnr = '0120'.
    wa_dynpread-fieldname = 'ZVAL_DISCOUNT-ZBRANCH'.
    APPEND wa_dynpread TO i_dynpread .
* Function module to read the value of ZBRANCH on the screen 120.
    CALL FUNCTION 'DYNP_VALUES_READ'
      EXPORTING
        dyname               = sy-repid
        dynumb               = sy-dynnr
        translate_to_upper   = 'X'
      TABLES
        dynpfields           = i_dynpread
      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 i_dynpread INDEX 1 INTO wa_dynpread.
      IF sy-subrc EQ 0.
        MOVE wa_dynpread-fieldvalue TO zval_discount-zbranch.
      ENDIF.
    ELSE.
      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
  ELSE.
    CLEAR v_stepl.
    CALL FUNCTION 'DYNP_GET_STEPL'
      IMPORTING
        povstepl        = v_stepl
      EXCEPTIONS
        stepl_not_found = 1
        OTHERS          = 2.
    IF sy-subrc <> 0.
      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    READ TABLE g_val_disc_maint_itab INTO g_val_disc_maint_wa
    INDEX v_stepl.
    IF sy-subrc EQ 0.
      zval_discount-zbranch = g_val_disc_maint_wa-zbranch.
    ENDIF.
  ENDIF.
  IF NOT zval_discount-zbranch IS INITIAL.
    r_branch-sign = 'I'.
    r_branch-option = 'EQ'.
    r_branch-low = zval_discount-zbranch.
    APPEND r_branch.
  ENDIF.
* Fetch the recods of purchase type for the
*  branch selected on the screen
  SELECT *
    FROM zval_disctyp
    INTO TABLE i_disctyp
   WHERE zbranch IN r_branch.
* Function module for F4 help for the field Purchase Type
  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      ddic_structure  = 'ZVAL_DISCTYP'
      retfield        = 'ZDISCTYP'
      dynpprog        = sy-repid
      dynpnr          = sy-dynnr
      dynprofield     = 'ZVAL_DISCOUNT-ZDISCTYP'
      window_title    = 'Discount Type'(016)
      value_org       = 'S'
    TABLES
      value_tab       = i_disctyp
      return_tab      = i_ddshretval
    EXCEPTIONS
      parameter_error = 1
      no_values_found = 2
      OTHERS          = 3.
  IF sy-subrc EQ 0.
    READ TABLE i_ddshretval INDEX 1.
    IF sy-subrc EQ 0.
      MOVE i_ddshretval-fieldval TO zval_discount-zdisctyp.
    ENDIF.
  ELSE.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDMODULE.                 " f4_help_discount_type  INPUT
Edited by: avinash kodarapu on Jan 5, 2009 12:34 PM

Similar Messages

  • How to create a help view for a customized error message

    Hi all,
    Can you guide me how to create a help view for a customized error message, we need to put some suggestions in it so that user can can resolve this issue with this guide. ( the short text is too short to describe all situations via TC:SE91)
    Thanks very much!
    Bruce, Wen

    Hi Bruce,
    Could you brief your concerns again.
    Why don't you maintain long text in message class for long description.
    Regards,
    Ranjith N

  • How to create Search Help for a field in Table control !!

    Hello Friends,
                  I like to know - How to create Search Help for a field in Table control. Is it possible, if it is please share ur knowledge, I wud be happy if U provide some source code example for this.
    Thanks,
    Senthil

    Check the sample code:
    *&  Include           ZSRO_MPRN_SEARCH                                 *
    MODULE PSTLZ_F4 INPUT
    MODULE pstlz_f4 INPUT.
    reading post code
      DATA: stepl TYPE systepl,
            stepl_index TYPE systepl.
      CLEAR: stepl, stepl_index.
      CLEAR:   lt_returntab,lt_dynpfields,i_mprn1.
      REFRESH: lt_returntab,lt_dynpfields,i_mprn1.
      lt_dynpfields-fieldname = 'I_MPRN-POST_CODE'.
      lt_dynpfields-stepl     = stepl.
      APPEND lt_dynpfields. CLEAR lt_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = c_x
          determine_loop_index = c_x
        TABLES
          dynpfields           = lt_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 EQ 0.
        READ TABLE lt_dynpfields INDEX 1.
      ENDIF.
      ws_outcode  = lt_dynpfields-fieldvalue.
      stepl_index = lt_dynpfields-stepl.
      REPLACE '*' WITH ' ' INTO lt_dynpfields-fieldvalue.
      IF NOT lt_dynpfields-fieldvalue IS INITIAL.
        MOVE lt_dynpfields-fieldvalue TO ws_outcode.
        ws_len = STRLEN( lt_dynpfields-fieldvalue ).
        IF ws_len GE 7.
          ws_len = ws_len - 3.
         ws_icode = ws_code+ws_len(3).
          lt_dynpfields-fieldvalue = lt_dynpfields-fieldvalue+0(ws_len).
          CONCATENATE lt_dynpfields-fieldvalue '%'
              INTO ws_outcode.
          CONDENSE lt_dynpfields-fieldvalue.
       REPLACE ws_icode WITH ' ' INTO lt_dynpfields-fieldvalue.
        ELSE.
          CONCATENATE lt_dynpfields-fieldvalue+0(4) '%'
            INTO ws_outcode.
        ENDIF.
       ws_ocode = ws_code+0(3).
      ENDIF.
    reading MPRN
      CLEAR:   lt_returntab,lt_dnpfields,i_mprn1.
      REFRESH: lt_returntab,lt_dnpfields,i_mprn1.
      lt_dnpfields-fieldname = 'I_MPRN-MPRN'.
      lt_dnpfields-stepl     = stepl_index.
      APPEND lt_dnpfields. CLEAR lt_dnpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = 'X'
        TABLES
          dynpfields           = lt_dnpfields
        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_dnpfields INDEX 1.
      ENDIF.
    MPRN blank and Post code exist
      IF lt_dnpfields-fieldvalue IS INITIAL.
        IF NOT lt_dynpfields-fieldvalue IS INITIAL.
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE outcode LIKE ws_outcode.
        ELSE.
    MPRN blank and Post code blank
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1.
        ENDIF.
      ELSE.
    MPRN exist and Post code exist
        IF NOT lt_dynpfields-fieldvalue IS INITIAL.
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE outcode LIKE ws_outcode AND
                       mprn EQ lt_dnpfields-fieldvalue.
        ELSE.
    MPRN exist and Post code blank
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE mprn EQ lt_dnpfields-fieldvalue.
        ENDIF.
      ENDIF.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'MPRN'
          dynpprog        = sy-repid
          dynpnr          = sy-dynnr
          window_title    = 'Select MPRN'
          value_org       = 'S'
        TABLES
          value_tab       = i_mprn1 "lt_mprn
          return_tab      = lt_returntab
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
      IF sy-subrc EQ 0.
        READ TABLE lt_returntab INDEX 1.
        READ TABLE i_mprn1 WITH KEY mprn = lt_returntab-fieldval.
        IF sy-subrc EQ 0.
    Updating post code
          CONCATENATE i_mprn1-outcode  i_mprn1-incode
                        INTO ws_postcode
                             SEPARATED BY space.
          MOVE ws_postcode TO i_mprn-post_code.
          CLEAR   : i_dnpfld,
                    ws_dynpfld.
          REFRESH : i_dnpfld.
          ws_dyname   = 'ZSRO_MASTER_DATA'.
          ws_dynumb   = '0301'.
          ws_dynpfld-fieldname  ='I_MPRN-POST_CODE'.
          ws_dynpfld-fieldvalue = ws_postcode .
          ws_dynpfld-stepl      = stepl_index.
          APPEND ws_dynpfld TO i_dnpfld.
          CALL FUNCTION 'DYNP_VALUES_UPDATE'
            EXPORTING
              dyname               = ws_dyname
              dynumb               = ws_dynumb
            TABLES
              dynpfields           = i_dnpfld
            EXCEPTIONS
              invalid_abapworkarea = 1
              invalid_dynprofield  = 2
              invalid_dynproname   = 3
              invalid_dynpronummer = 4
              invalid_request      = 5
              no_fielddescription  = 6
              undefind_error       = 7
              OTHERS               = 8.
          IF sy-subrc <> 0.
          ENDIF.
    Updating MPRN
          MOVE i_mprn1-mprn TO i_mprn-mprn.
          CLEAR   : i_dnpfld,
                    ws_dynpfld.
          REFRESH : i_dnpfld.
          ws_dyname   = 'ZSRO_MASTER_DATA'.
          ws_dynumb   = '0301'.
          ws_dynpfld-fieldname  ='I_MPRN-MPRN'.
          ws_dynpfld-fieldvalue = i_mprn1-mprn .
          ws_dynpfld-stepl      = stepl_index.
          APPEND ws_dynpfld TO i_dnpfld.
          CALL FUNCTION 'DYNP_VALUES_UPDATE'
            EXPORTING
              dyname               = ws_dyname
              dynumb               = ws_dynumb
            TABLES
              dynpfields           = i_dnpfld
            EXCEPTIONS
              invalid_abapworkarea = 1
              invalid_dynprofield  = 2
              invalid_dynproname   = 3
              invalid_dynpronummer = 4
              invalid_request      = 5
              no_fielddescription  = 6
              undefind_error       = 7
              OTHERS               = 8.
          IF sy-subrc <> 0.
          ENDIF.
        ENDIF.
      ELSEIF sy-subrc EQ 2.
        MESSAGE s005(zspa) WITH ws_postcode .
      ENDIF.
    ENDMODULE.                    "PSTLZ_F4 INPUT
    MODULE MPRN_F4 INPUT
    MODULE mprn_f4 INPUT.
    reading post code
    DATA: stepl TYPE systepl,
           stepl_index TYPE systepl.
      CLEAR: stepl, stepl_index.
      CLEAR:   lt_returntab,lt_dynpfields,i_mprn1.
      REFRESH: lt_returntab,lt_dynpfields,i_mprn1.
      lt_dynpfields-fieldname = 'I_MPRN-POST_CODE'.
      lt_dynpfields-stepl     = stepl.
      APPEND lt_dynpfields. CLEAR lt_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = c_x
          determine_loop_index = c_x
        TABLES
          dynpfields           = lt_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 EQ 0.
        READ TABLE lt_dynpfields INDEX 1.
      ENDIF.
      ws_outcode = lt_dynpfields-fieldvalue.
      stepl_index = lt_dynpfields-stepl.
      REPLACE '*' WITH ' ' INTO lt_dynpfields-fieldvalue.
      IF NOT lt_dynpfields-fieldvalue IS INITIAL.
        MOVE lt_dynpfields-fieldvalue TO ws_outcode.
        ws_len = STRLEN( lt_dynpfields-fieldvalue ).
        IF ws_len GE 7.
          ws_len = ws_len - 3.
         ws_icode = ws_code+ws_len(3).
          lt_dynpfields-fieldvalue = lt_dynpfields-fieldvalue+0(ws_len).
          CONCATENATE lt_dynpfields-fieldvalue '%'
              INTO ws_outcode.
          CONDENSE lt_dynpfields-fieldvalue.
       REPLACE ws_icode WITH ' ' INTO lt_dynpfields-fieldvalue.
        ELSE.
          CONCATENATE lt_dynpfields-fieldvalue+0(4) '%'
            INTO ws_outcode.
        ENDIF.
       ws_ocode = ws_code+0(3).
      ENDIF.
    reading MPRN
      CLEAR:   lt_returntab,lt_dnpfields,i_mprn1.
      REFRESH: lt_returntab,lt_dnpfields,i_mprn1.
      lt_dnpfields-fieldname = 'I_MPRN-MPRN'.
      lt_dnpfields-stepl     = stepl_index.
      APPEND lt_dnpfields. CLEAR lt_dnpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = 'X'
        TABLES
          dynpfields           = lt_dnpfields
        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_dnpfields INDEX 1.
      ENDIF.
    MPRN blank and Post code exist
      IF lt_dnpfields-fieldvalue IS INITIAL.
        IF NOT lt_dynpfields-fieldvalue IS INITIAL.
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE outcode LIKE ws_outcode.
        ELSE.
    MPRN blank and Post code blank
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1.
        ENDIF.
      ELSE.
    MPRN exist and Post code exist
        IF NOT lt_dynpfields-fieldvalue IS INITIAL.
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE outcode LIKE ws_outcode AND
                       mprn EQ lt_dnpfields-fieldvalue.
        ELSE.
    MPRN exist and Post code blank
          SELECT mprn ser_num sub_bud bud_name del_pt_alias
                 bud_num dep_street prin_street dbl_dep_street
                 dep_locty post_town county outcode incode
                 lg_site_ind file_date FROM zspa_mprn INTO
                 CORRESPONDING FIELDS OF TABLE i_mprn1
                 WHERE mprn EQ lt_dnpfields-fieldvalue.
        ENDIF.
      ENDIF.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'MPRN'
          dynpprog        = sy-repid
          dynpnr          = sy-dynnr
          window_title    = 'Select MPRN'
          value_org       = 'S'
        TABLES
          value_tab       = i_mprn1 "lt_mprn
          return_tab      = lt_returntab
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
      IF sy-subrc EQ 0.
        READ TABLE lt_returntab INDEX 1.
        READ TABLE i_mprn1 WITH KEY mprn = lt_returntab-fieldval.
        IF sy-subrc EQ 0.
    Updating MPRN
          MOVE i_mprn1-mprn TO i_mprn-mprn.
          CLEAR   : i_dnpfld,
                    ws_dynpfld.
          REFRESH : i_dnpfld.
          ws_dyname   = 'ZSRO_MASTER_DATA'.
          ws_dynumb   = '0301'.
          ws_dynpfld-fieldname  ='I_MPRN-MPRN'.
          ws_dynpfld-fieldvalue = i_mprn1-mprn .
          ws_dynpfld-stepl      = stepl_index.
          APPEND ws_dynpfld TO i_dnpfld.
    **code changed by laxman 10.08.2005
         ws_dynpfld-stepl  = mprn-current_line.
    **code changed by laxman 10.08.2005
          CALL FUNCTION 'DYNP_VALUES_UPDATE'
            EXPORTING
              dyname               = ws_dyname
              dynumb               = ws_dynumb
            TABLES
              dynpfields           = i_dnpfld
            EXCEPTIONS
              invalid_abapworkarea = 1
              invalid_dynprofield  = 2
              invalid_dynproname   = 3
              invalid_dynpronummer = 4
              invalid_request      = 5
              no_fielddescription  = 6
              undefind_error       = 7
              OTHERS               = 8.
          IF sy-subrc <> 0.
          ENDIF.
    Updating post code
          CONCATENATE i_mprn1-outcode  i_mprn1-incode
                        INTO ws_postcode
                             SEPARATED BY space.
          MOVE ws_postcode TO i_mprn-post_code.
          CLEAR   : i_dnpfld,
                    ws_dynpfld.
          REFRESH : i_dnpfld.
          ws_dyname   = 'ZSRO_MASTER_DATA'.
          ws_dynumb   = '0301'.
          ws_dynpfld-fieldname  ='I_MPRN-POST_CODE'.
          ws_dynpfld-fieldvalue = ws_postcode .
          ws_dynpfld-stepl      = stepl_index.
          APPEND ws_dynpfld TO i_dnpfld.
    **code changed by laxman 10.08.2005
         break gblap0.
         ws_dynpfld-stepl  = mprn-current_line.
         LOOP AT i_mprn.
           MOVE i_mprn1-mprn TO i_mprn-mprn.
           MOVE ws_postcode TO i_mprn-post_code.
           MODIFY i_mprn INDEX
                    mprn-current_line." transporting MPRN POST_CODE.
         ENDLOOP.
    **code changed by laxman 10.08.2005
          CALL FUNCTION 'DYNP_VALUES_UPDATE'
            EXPORTING
              dyname               = ws_dyname
              dynumb               = ws_dynumb
            TABLES
              dynpfields           = i_dnpfld
            EXCEPTIONS
              invalid_abapworkarea = 1
              invalid_dynprofield  = 2
              invalid_dynproname   = 3
              invalid_dynpronummer = 4
              invalid_request      = 5
              no_fielddescription  = 6
              undefind_error       = 7
              OTHERS               = 8.
          IF sy-subrc <> 0.
          ENDIF.
        ENDIF.
      ELSEIF sy-subrc EQ 2.
        MESSAGE s006(zspa) WITH i_mprn1-mprn .
      ENDIF.
    ENDMODULE.                    "MPRN_F4 INPUT
    MODULE GNTC_F4 INPUT
    MODULE gntc_f4 INPUT.
      DATA: BEGIN OF lt_gntc OCCURS 0,
              gntc LIKE iflot-zzgntc,
            END OF lt_gntc.
      CLEAR:   lt_returntab, lt_gntc.
      REFRESH: lt_returntab, lt_gntc.
      lt_gntc-gntc = 'DM'.
      APPEND lt_gntc. CLEAR lt_gntc.
      lt_gntc-gntc = 'NDM'.
      APPEND lt_gntc. CLEAR lt_gntc.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'ZZGNTC'
          dynpprog        = sy-repid
          dynpnr          = sy-dynnr
          window_title    = 'Select Gas Nomination Type Code'
          value_org       = 'S'
        TABLES
          value_tab       = lt_gntc
          return_tab      = lt_returntab
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
      IF sy-subrc EQ 0.
        READ TABLE lt_returntab INDEX 1.
        i_mprn-dm_ndm = lt_returntab-fieldval.
      ENDIF.
    ENDMODULE.                    "GNTC_F4 INPUT
    *&      Module  mprn1_f4  INPUT
          text
    MODULE mprn1_f4 INPUT.
      DATA: lt_f4          TYPE ddshretval OCCURS 0 WITH HEADER LINE,
            lt_returntab1  LIKE ddshretval OCCURS 0 WITH HEADER LINE,
            lt_dynpfields1 LIKE dynpread OCCURS 0 WITH HEADER LINE,
            lt_dnpfields1  LIKE dynpread OCCURS 0 WITH HEADER LINE.
      DATA: stepl1 TYPE systepl,
            stepl_index1 TYPE systepl.
      DATA : i_dnpfld1      LIKE dynpread OCCURS 0 WITH HEADER LINE,
             ws_dyname1     LIKE d020s-prog,
             ws_dynumb1     LIKE d020s-dnum,
             ws_dynpfld1    LIKE dynpread.
      CLEAR: i_dnpfld1,  ws_dyname1, ws_dynumb1, ws_dynpfld1,
             lt_f4, lt_returntab1,lt_dynpfields1, lt_f4,
             stepl1, stepl_index1.
      REFRESH: i_dnpfld1, lt_returntab1,lt_dynpfields1, lt_f4.
    To Determine Steploop Index
      lt_dynpfields1-fieldname = 'I_MPRN-POST_CODE'.
      lt_dynpfields1-stepl     = stepl1.
      APPEND lt_dynpfields1. CLEAR lt_dynpfields1.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = 'X'
          determine_loop_index = '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.
      ENDIF.
      stepl_index1 = lt_dynpfields1-stepl.
      CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
        EXPORTING
          tabname           = 'IFLOT'
          fieldname         = 'I_MPRN-MPRN'
          searchhelp        = 'ZS_MPRN_PC'
          dynpprog          = sy-repid
          dynpnr            = sy-dynnr
        TABLES
          return_tab        = lt_f4
        EXCEPTIONS
          field_not_found   = 1
          no_help_for_field = 2
          inconsistent_help = 3
          no_values_found   = 4
          OTHERS            = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    Update tablecontrol
      READ TABLE lt_f4 WITH KEY fieldname = 'MPRN'.
      IF sy-subrc = 0.
        MOVE lt_f4-fieldval TO i_mprn-mprn.
        ws_dyname1   = 'ZSRO_MASTER_DATA'.
        ws_dynumb1   = '0301'.
        ws_dynpfld1-fieldname  ='I_MPRN-MPRN'.
        ws_dynpfld1-fieldvalue = i_mprn-mprn.
        ws_dynpfld1-stepl      = stepl_index1.
        APPEND ws_dynpfld1 TO i_dnpfld1.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = ws_dyname1
            dynumb               = ws_dynumb1
          TABLES
            dynpfields           = i_dnpfld1
          EXCEPTIONS
            invalid_abapworkarea = 1
            invalid_dynprofield  = 2
            invalid_dynproname   = 3
            invalid_dynpronummer = 4
            invalid_request      = 5
            no_fielddescription  = 6
            undefind_error       = 7
            OTHERS               = 8.
        IF sy-subrc <> 0.
        ENDIF.
      ENDIF.
      CLEAR  : i_dnpfld1, ws_dynpfld1.
      REFRESH: i_dnpfld1.
      READ TABLE lt_f4 WITH KEY fieldname = 'ZZPSTLZ'.
      IF sy-subrc = 0.
        MOVE lt_f4-fieldval TO i_mprn-post_code.
        ws_dyname1   = 'ZSRO_MASTER_DATA'.
        ws_dynumb1   = '0301'.
        ws_dynpfld1-fieldname  ='I_MPRN-POST_CODE'.
        ws_dynpfld1-fieldvalue = i_mprn-post_code.
        ws_dynpfld1-stepl      = stepl_index1.
        APPEND ws_dynpfld1 TO i_dnpfld1.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = ws_dyname1
            dynumb               = ws_dynumb1
          TABLES
            dynpfields           = i_dnpfld1
          EXCEPTIONS
            invalid_abapworkarea = 1
            invalid_dynprofield  = 2
            invalid_dynproname   = 3
            invalid_dynpronummer = 4
            invalid_request      = 5
            no_fielddescription  = 6
            undefind_error       = 7
            OTHERS               = 8.
        IF sy-subrc <> 0.
        ENDIF.
      ENDIF.
    ENDMODULE.                 " mprn1_f4  INPUT
    *&      Module  pstlz1_f4  INPUT
          text
    MODULE pstlz1_f4 INPUT.
      CLEAR: i_dnpfld1,  ws_dyname1, ws_dynumb1, ws_dynpfld1,
              lt_f4, lt_returntab1,lt_dynpfields1, lt_f4,
              stepl1, stepl_index1.
      REFRESH: i_dnpfld1, lt_returntab1,lt_dynpfields1, lt_f4.
    To Determine Steploop Index
      lt_dynpfields1-fieldname = 'I_MPRN-MPRN'.
      lt_dynpfields1-stepl     = stepl1.
      APPEND lt_dynpfields1. CLEAR lt_dynpfields1.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          translate_to_upper   = 'X'
          determine_loop_index = '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.
      ENDIF.
      stepl_index1 = lt_dynpfields1-stepl.
      CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
        EXPORTING
          tabname           = 'IFLOT'
          fieldname         = 'I_MPRN-POST_CODE'
          searchhelp        = 'ZS_MPRN_PC'
          dynpprog          = sy-repid
          dynpnr            = sy-dynnr
        TABLES
          return_tab        = lt_f4
        EXCEPTIONS
          field_not_found   = 1
          no_help_for_field = 2
          inconsistent_help = 3
          no_values_found   = 4
          OTHERS            = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    Update tablecontrol
      READ TABLE lt_f4 WITH KEY fieldname = 'ZZPSTLZ'.
      IF sy-subrc = 0.
        MOVE lt_f4-fieldval TO i_mprn-post_code.
        ws_dyname1   = 'ZSRO_MASTER_DATA'.
        ws_dynumb1   = '0301'.
        ws_dynpfld1-fieldname  ='I_MPRN-POST_CODE'.
        ws_dynpfld1-fieldvalue = i_mprn-post_code.
        ws_dynpfld1-stepl      = stepl_index1.
        APPEND ws_dynpfld1 TO i_dnpfld1.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = ws_dyname1
            dynumb               = ws_dynumb1
          TABLES
            dynpfields           = i_dnpfld1
          EXCEPTIONS
            invalid_abapworkarea = 1
            invalid_dynprofield  = 2
            invalid_dynproname   = 3
            invalid_dynpronummer = 4
            invalid_request      = 5
            no_fielddescription  = 6
            undefind_error       = 7
            OTHERS               = 8.
        IF sy-subrc <> 0.
        ENDIF.
      ENDIF.
      CLEAR  : i_dnpfld1, ws_dynpfld1.
      REFRESH: i_dnpfld1.
      READ TABLE lt_f4 WITH KEY fieldname = 'MPRN'.
      IF sy-subrc = 0.
        MOVE lt_f4-fieldval TO i_mprn-mprn.
        ws_dyname1   = 'ZSRO_MASTER_DATA'.
        ws_dynumb1   = '0301'.
        ws_dynpfld1-fieldname  ='I_MPRN-MPRN'.
        ws_dynpfld1-fieldvalue = i_mprn-mprn.
        ws_dynpfld1-stepl      = stepl_index1.
        APPEND ws_dynpfld1 TO i_dnpfld1.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = ws_dyname1
            dynumb               = ws_dynumb1
          TABLES
            dynpfields           = i_dnpfld1
          EXCEPTIONS
            invalid_abapworkarea = 1
            invalid_dynprofield  = 2
            invalid_dynproname   = 3
            invalid_dynpronummer = 4
            invalid_request      = 5
            no_fielddescription  = 6
            undefind_error       = 7
            OTHERS               = 8.
        IF sy-subrc <> 0.
        ENDIF.
      ENDIF.
    ENDMODULE.                 " pstlz1_f4  INPUT
    Regards,
    Prakash.

  • How to create Search Help For Ztable fields

    Hi all,
    Please let me know How to create Search Help in SE11(what are the parameter i should pass)
    and How to maintain search help for Ztable fields at DIctionary level (in SE11) and programming level.

    hello .
    there are two types of search helps .
    1. elementary search help .
    2. collective serch help
    Below are the steps to create elementary search helps :
    1 In the initial screen of the ABAP Dictionary, select object class Search help, enter the name of the search help and choose  Create.
    2.then youget a option elementary or collective search as per you r need .
    3.select Elementary search help and choose
    4.write explanatory text in the field Short text.
    5. in the selection method give the name of the table or  a view .
    6 . Select the fields that should be used for value selection  or in a hit list .
    7. then define the attributes of the search help .
    8 Select the IMP flag if it is an import parameter. Select the EXP flag if it is an export parameter.
    9 .define the  dialog type of the search help.
    The dialog type tells  how the hit list will be displayed in the input help.
    10 . save and activate .
    plz reward if usefull
    Thanks ,
    Abhishek .

  • How to create search help on a parameter

    Hi all,
              How to create search help on a parameter .Please tell me process .
    Regards,

    Hi,
    If you want to create search help in parameter check that search help is available
    by going to se11 or
    create search help there ..
    Please check the following links to create a search helps. They guide you step by ste.
    Link:[http://www.sap-img.com/abap/attach-a-search-help-to-the-screen-field.htm]
    Regards
    Vinu.r

  • How to create a help button for downloading a help file in OA Framework

    Hi all
    I want to create a help button for downloading a help document.Plz suggest me how to do it.
    Thanks
    Bhupendra

    Create a button of type "button",set the destination url property to the place u have kept the file.But ur file should be anywhere in Common_top.If this file is stored as blob u can use messagedownload bean.
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to create a help file for a VI

    I want to create a help file describing my VI. How do i do that by clicking a control. How do I store the help file.

    Hi Mudda;
    Assuming you are using Windows, with LabVIEW, you can create the necessary files to create a help file, but you can't create the help file. In order to create your help file, you need a WinHelp compiler.
    Also, what LabVIEW allows you to do is to create a file that correspond to the documentation of you VI, so you need to fully document you VIs first.
    To document you VI, go to File -> VI Properties and select "Documentation" from the menu. You can access the VI Properties also by Right-clicking the VI icon in the top-right corner of the Window. To document the controls and indicators in your VI, Right-click the control or indicator and select "Description and Tip...".
    To create the documentation files, go to File -> Print. At some point
    , you will have the option to select a Destination. Select "RTF File" to generate the files a WinHelp compiler understand.
    As you will see too, you can also create html files for your VIs. It can be a good alternative for WinHelp files.
    There are some nice Help editors outhere. I use HelpScribble. You can see a very simple help file I created with HelpScribble in my small projects VI Background Check and VIs for DeployMaster.
    Regards;
    Enrique Vargas
    www.visecurity.com
    www.vartortech.com

  • How to create  search help for field in interactive adobe form

    HI
    I want to create search help for PERNR field in adobe form.
    how i can do it.
    Can any one giud me.
    Regards,
    Laxman Sankhla

    Hi Laxman,
    Please search SDN, there are lots of queries posted and solved earlier on this.
    especially there are step by step blogs.
    Cheers,
    Sai

  • Math code, how to create search help

    how will you call match code in your program

    Hi shaik shadulla  ,
         Search Help Creation:
            Using the T-Code SE11 you can create search help, first you should create one search help name in that screen then it will ask two options in that option you should select first one(Elementary search help), then third window will open, in the third window you should give table name and field names for that table and Lpos, Spos values then activate it. After finish this process you should move to SE11 screen then give table name afterwards you click the regarding fields for your search help.
    IF USEFULL GIVE REWARD POINTS

  • How to create Serach help in SRM?

    Hi all,
    Can you please guide me how to create a search help in SRM?
    I would like to display seach help for the custom field on SRM Portal.
    Which are the steps / procedure to display search help in SRM Portal?
    Thanks in advance.
    Regards,
    Hemant

    Hi Hemant,
    Hope this link may help you Adjusting SRM searchhelp using BBP_F4_READ_ON_ENTRY / BBP_F4_READ_ON_EXIT?
    Regards,
    Pravin

  • How to create a help page in my application like the one in HTMLDB ?

    Hi,
    What's the best way to create a help file for my application and link it like the help link at the top right of HTMLDB ?
    Thank you.

    That's what I did, but I have a lot of screen captures. Where would be the best place to save those gif, server or in the database by loading them via the images tab in HTMLDB ?
    Thank you.

  • How to create F1 help for fields of a table in SM30

    I have a z-table which is being maintained using SM30. while creating new entries for the z-table using this SM30 i want to create F1 help which will be useful for the user to create new entries. can anyone pls help we this requirement?

    Hi Lalitha,
    To have F1 help documentation, you need to create Documentation by pressing Documentation button in the Change Data Element screen (SE11)
    If you need certain values for the field through F4 help then you need to specify the values in the Domain of this Data element (SE11)
    Jogeswara Rao K

  • How to create search help for Web Dynpro?

    Hi all,
    I have troubles when creating search help for web dynpro. I have visited this link /people/dirk.rehberg/blog/2006/12/27/generic-search-help-for-web-dynpro-for-java but I can't find this generic search help plug-in for download. If u have this plug-in can u share it for me or upload somewhere for download. Or anyone has already done this search help please help me solve this problem! Thanks in advance!

    Hi Dinh Thieu Thien,
    please place such a request to the appropriate forum "[Web Dynpro for Java|Web Dynpro Java;".
    Thanks and regards,
    Boris

  • How to create value help in web-dynpro-abap

    Hi ,
         can anybody tell me detailed step for creating value help in web-dynpro-abap .

    Hi,
    Web Dynpro provides two types of pre-implemented search helps :
    1. ABAP Dictionary Search help
    2. OVS
    Input Help for WDA
    http://help.sap.com/saphelp_nw04s/helpdata/en/b3/4d3642eca5033be10000000a1550b0/frameset.htm
    There is  a blog on implementing OVS help in WDA. You can refer below link for sample code.
    /people/shruti.rathour/blog/2008/05/05/ovs-help-in-web-dynpro-abap
    In addition, you can also provide help through Drop Downs and Select options.
    Working with Select options in WDA
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c09fec07-0dab-2a10-dbbe-c9a26bdff03e
    Plz reward if helpful.
    Thanks.
    Raj.

  • How to create F4 help for a coloumn in CL_GUI_ALV_GRID?

    Hi experts,
       I have created alv grid on a container where i can enter data. But i need to create f4 help for a coloumn in the grid.Can you experts suggest some way to do it??
    Thanks in advance
    regards,
    Ashwin

    Hi ,
    Follow thios code.
    Develop a method in your class as follows.
    CLASS CL_PRICE_DATA DEFINITION.
    PUBLIC SECTION.
    ON_F4
    FOR EVENT ONF4 OF CL_GUI_ALV_GRID
    IMPORTING ES_ROW_NO E_FIELDNAME ER_EVENT_DATA.
    CLASS CL_PRICE_DATA IMPLEMENTATION.
    F4 for Reason Code
    METHOD ON_F4.
    FIELD-SYMBOLS: <FT_MODI> TYPE LVC_T_MODI .
    REFRESH :GT_FIELD_TAB,GT_VALUE_TAB,GT_RETURN.
    IF E_FIELDNAME = 'CTMBRCHGREASCD'.
    LOOP AT VALUES_TAB INTO VALUE_TAB.
    MOVE VALUE_TAB-CTMBRCHGREASCD TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR : GS_VALUE_TAB.
    MOVE VALUE_TAB-CTMBRCHGRSNDSC TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR :GS_VALUE_TAB.
    ENDLOOP.
    GS_FIELD_TAB-FIELDNAME = 'CTMBRCHGREASCD' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCTMBRCHG'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    clear GS_FIELD_TAB.
    GS_FIELD_TAB-FIELDNAME = 'CTMBRCHGRSNDSC' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCTMBRCHG'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    clear GS_FIELD_TAB.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
    RETFIELD = 'CTMBRCHGREASCD'
    VALUE_ORG = 'C'
    TABLES
    VALUE_TAB = GT_VALUE_TAB
    FIELD_TAB = GT_FIELD_TAB
    RETURN_TAB = GT_RETURN.
    ASSIGN ER_EVENT_DATA->M_DATA->* TO <FT_MODI>.
    GWA_MODI-ROW_ID = ES_ROW_NO-ROW_ID.
    LOOP AT GT_RETURN INTO GWA_LS_RETURN .
    GWA_MODI-FIELDNAME = GWA_LS_RETURN-FIELDNAME.
    GWA_MODI-VALUE = GWA_LS_RETURN-FIELDVAL.
    INSERT GWA_MODI INTO TABLE <FT_MODI>.
    READ TABLE VALUES_TAB INTO VALUE_TAB WITH KEY CTMBRCHGREASCD =
    GWA_LS_RETURN-FIELDVAL.
    GWA_MODI-FIELDNAME = 'CTMBRCHGRSNDSC'.
    GWA_MODI-VALUE = VALUE_TAB-CTMBRCHGRSNDSC.
    INSERT GWA_MODI INTO TABLE <FT_MODI>.
    ENDLOOP.
    ER_EVENT_DATA->M_EVENT_HANDLED = 'TRUE'.
    ELSEIF E_FIELDNAME = 'CONTMBRSTATCODE'.
    loop at gt_member_status into gs_member_status.
    MOVE gs_member_status-status TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR : GS_VALUE_TAB.
    MOVE gs_member_status-description TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR :GS_VALUE_TAB.
    endloop.
    GS_FIELD_TAB-FIELDNAME = 'CONTMBRSTATCODE' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCTMBRHST'.
    GS_FIELD_TAB-reptext = 'Member Status'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    clear GS_FIELD_TAB .
    GS_FIELD_TAB-FIELDNAME = 'CTSTATSHRTDESC' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCONSTAT'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    GS_FIELD_TAB-FIELDNAME = 'CTMBRCHGRSNDSC' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCTMBRCHG'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
    RETFIELD = 'CONTMBRSTATCODE'
    VALUE_ORG = 'C'
    TABLES
    VALUE_TAB = GT_VALUE_TAB
    FIELD_TAB = GT_FIELD_TAB
    RETURN_TAB = GT_RETURN.
    ASSIGN ER_EVENT_DATA->M_DATA->* TO <FT_MODI>.
    GWA_MODI-ROW_ID = ES_ROW_NO-ROW_ID.
    LOOP AT GT_RETURN INTO GWA_LS_RETURN .
    GWA_MODI-FIELDNAME = GWA_LS_RETURN-FIELDNAME.
    GWA_MODI-VALUE = GWA_LS_RETURN-FIELDVAL.
    INSERT GWA_MODI INTO TABLE <FT_MODI>.
    READ TABLE VALUES_TAB INTO VALUE_TAB WITH KEY CTMBRCHGREASCD =
    GWA_LS_RETURN-FIELDVAL.
    GWA_MODI-FIELDNAME = 'CTMBRCHGRSNDSC'.
    GWA_MODI-VALUE = VALUE_TAB-CTMBRCHGRSNDSC.
    INSERT GWA_MODI INTO TABLE <FT_MODI>.
    ENDLOOP.
    ER_EVENT_DATA->M_EVENT_HANDLED = 'TRUE'.
    ELSEIF E_FIELDNAME = 'SH_CUST_NMBR'.
    LOOP AT GT_SHARED_CUSTOMER INTO GS_SHARED_CUSTOMER.
    SELECT SINGLE CUST_NAME FROM /CPC/TCUSTOMER INTO
    GS_SHARED_CUSTOMER-CUST_NAME
    WHERE CUST_NMBR = GS_SHARED_CUSTOMER-SH_CUST_NMBR.
    MOVE GS_SHARED_CUSTOMER-SH_CUST_NMBR TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR : GS_VALUE_TAB.
    MOVE GS_SHARED_CUSTOMER-CUST_NAME TO GS_VALUE_TAB-STRING .
    APPEND GS_VALUE_TAB TO GT_VALUE_TAB.
    CLEAR : GS_VALUE_TAB.
    ENDLOOP.
    GS_FIELD_TAB-FIELDNAME = 'SH_CUST_NMBR' .
    GS_FIELD_TAB-TABNAME = '/CPC/TGRPSHRHLD'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    clear GS_FIELD_TAB.
    GS_FIELD_TAB-FIELDNAME = 'CUST_NAME' .
    GS_FIELD_TAB-TABNAME = '/CPC/TCUSTOMER'.
    APPEND GS_FIELD_TAB TO GT_FIELD_TAB.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
    RETFIELD = 'SH_CUST_NMBR'
    VALUE_ORG = 'C'
    TABLES
    VALUE_TAB = GT_VALUE_TAB
    FIELD_TAB = GT_FIELD_TAB
    RETURN_TAB = GT_RETURN.
    ASSIGN ER_EVENT_DATA->M_DATA->* TO <FT_MODI>.
    GWA_MODI-ROW_ID = ES_ROW_NO-ROW_ID.
    LOOP AT GT_RETURN INTO GWA_LS_RETURN .
    GWA_MODI-FIELDNAME = GWA_LS_RETURN-FIELDNAME.
    GWA_MODI-VALUE = GWA_LS_RETURN-FIELDVAL.
    INSERT GWA_MODI INTO TABLE <FT_MODI>.
    ENDLOOP.
    ER_EVENT_DATA->M_EVENT_HANDLED = 'TRUE'.
    ENDIF.
    ENDMETHOD.
    This will trigger when do a F4 on the field .
    Apart from this in the fieldcatalog for that field assign 'X' for the field F4AVAILABL and also set handler eventobj->on_f4 for grid .
    Please reward if useful.

Maybe you are looking for