Serch Help

Hi all,
I have created an elementary search help for a custom table. In the selection screen I am finding duplicate (redundant) values for F4 . Can anybody tell me how to eleminate this.
Thanks,
Mungala.

See if this thread can help you:
Re: Search Help(SAP-ABAP)
https://forums.sdn.sap.com/click.jspa?searchID=3348838&messageID=3121203

Similar Messages

  • USE OF SERCH HELP EXIT

    hello
    i am usin serch help in callcontrol = 'DISP'
    in this way
    LOOP AT GT_IT_ITAB INTO  GW_ITAB.
         LWA_SELOPT-SHLPNAME     = 'ZSDH_FOCUS_LIST'.
         LWA_SELOPT-SHLPFIELD    = 'AUART'.
         LWA_SELOPT-SIGN         = 'I'.
         LWA_SELOPT-OPTION       = 'EQ'.
         LWA_SELOPT-LOW          = GW_ITAB-PARAM_VALUE2.
         APPEND LWA_SELOPT TO LT_SELOPT.
       ENDLOOP.
       SHLP-SELOPT[] = LT_SELOPT[].
    what is missing becouse im getting worg aswer
    thank you
    for your help
    shlomit

    hello
    i am usin serch help in callcontrol = 'DISP'
    in this way
    LOOP AT GT_IT_ITAB INTO  GW_ITAB.
         LWA_SELOPT-SHLPNAME     = 'ZSDH_FOCUS_LIST'.
         LWA_SELOPT-SHLPFIELD    = 'AUART'.
         LWA_SELOPT-SIGN         = 'I'.
         LWA_SELOPT-OPTION       = 'EQ'.
         LWA_SELOPT-LOW          = GW_ITAB-PARAM_VALUE2.
         APPEND LWA_SELOPT TO LT_SELOPT.
       ENDLOOP.
       SHLP-SELOPT[] = LT_SELOPT[].
    what is missing becouse im getting worg aswer
    thank you
    for your help
    shlomit

  • Parameters to collective serch help

    Hi,
    Noe i created a collective serch help , using  an elementry serch help with two fields from table QPMK
    QPMK-VERSION and
    QPMK-MKMNR
    In elementry serch help
    MKMNR is used as parameter in my module pool screen one field is QPMK-VERSION, I want to select the values in to this serch help based on the value of field QPMK-VERSION
    Regards
    Nausal

    Not sure what you're asking, or why you need a collective search help.  Sounds like you had what you need with the elementary.
    But, for a really good how-to, look at how SAP constructs collective search helps, like DEBI, or ASH_VMVA or others.

  • Relating to a field inside serch help exit

    Hi!
    The serchhelp which was created by me has two
    fields.
    One field is character field (CHAR030). It is not
    a dictionary field which is being in any table
    or else.
    My question is how can I relate to this field
    in the serch help exit. For example to check
    what a user has input in this field ?
    I have to program some abap code inside
    of serch help exit.
    Regards
    ertas

    hi,
    how do you bind my mentioned field with this FunctionModule
    F4IF_INT_TABLE_VALUE_REQUEST
    Rgds
    ertas

  • Serch Help Exits

    Hi,
    How can i write a serch help exits.
    My requirement is to add a serch help exit for kunnr.

    Hi Phani,
    Goto SE11 create a search help, in the search help exit the search help FM name for example (ZMET_DE_INSP_SHELP_EXIT).
    Check the sample code for search help user exit.
    FUNCTION zspa_es_insp_shelp_exit.
    ""Local interface:
    *"  TABLES
    *"      SHLP_TAB TYPE  SHLP_DESCR_TAB_T
    *"      RECORD_TAB STRUCTURE  SEAHLPRES
    *"  CHANGING
    *"     VALUE(SHLP) TYPE  SHLP_DESCR_T
    *"     VALUE(CALLCONTROL) LIKE  DDSHF4CTRL STRUCTURE  DDSHF4CTRL
      IF callcontrol-step = 'SELECT'.
        CLEAR: i_sel, wa_sel, ws_date_from, ws_date_to, ws_year,
               r_inspdt, i_inst, i_inst_name, i_final, wa_inst,
               wa_inst_name, wa_final.
        REFRESH: i_sel, i_inst, i_inst_name, i_final, r_inspdt.
      ENDIF.
      IF callcontrol-step = 'DISP'.
        i_sel[] = shlp-selopt[].
        READ TABLE i_sel INTO wa_sel WITH KEY shlpfield = 'DATE_FROM'.
        IF sy-subrc = 0.
          ws_date_from = wa_sel-low.
        ENDIF.
        READ TABLE i_sel INTO wa_sel WITH KEY shlpfield = 'DATE_TO'.
        IF sy-subrc = 0.
          ws_date_to = wa_sel-low.
        ENDIF.
        READ TABLE i_sel INTO wa_sel WITH KEY shlpfield = 'YEAR'.
        IF sy-subrc = 0.
          ws_year = wa_sel-low.
        ENDIF.
        IF NOT ws_date_from IS INITIAL AND
           NOT ws_year      IS INITIAL.
          PERFORM go_back_years USING     ws_date_from
                                CHANGING  ws_date_from.
          IF NOT ws_date_to IS INITIAL.
            PERFORM go_back_years USING     ws_date_to
                                  CHANGING  ws_date_to.
            r_inspdt-sign   = c_i.
            r_inspdt-option = c_bt.
            r_inspdt-low    = ws_date_from.
            r_inspdt-high   = ws_date_to.
            APPEND r_inspdt.
          ELSE.
            r_inspdt-sign   = c_i.
            r_inspdt-option = c_eq.
            r_inspdt-low    = ws_date_from.
            APPEND r_inspdt.
          ENDIF.
          SELECT aanlage asparte avstelle bzzinspdt
                 INTO TABLE i_inst
                 FROM eanl AS a INNER JOIN zeanl AS b
                 ON aanlage EQ banlage
                 WHERE b~zzinspdt IN r_inspdt.
          IF sy-subrc = 0.
            SELECT vstelle str_erg2 INTO TABLE i_inst_name
                    FROM evbs
                    FOR ALL ENTRIES IN i_inst
                    WHERE vstelle = i_inst-vstelle.
            LOOP AT i_inst INTO wa_inst.
              wa_final-date_from = ws_date_from.
              wa_final-date_to   = ws_date_to.
              wa_final-year      = ws_year.
              wa_final-anlage    = wa_inst-anlage.
              READ TABLE i_inst_name INTO wa_inst_name WITH KEY
                                     vstelle = wa_inst-vstelle.
              IF sy-subrc = 0.
                wa_final-str_erg2  = wa_inst_name-str_erg2.
              ENDIF.
              wa_final-last_insp_date = wa_inst-zzinspdt.
              PERFORM inspdt_plus_years USING     wa_inst-zzinspdt
                                        CHANGING  wa_final-next_inst_date.
              APPEND wa_final TO i_final.
              CLEAR: wa_final, wa_inst, wa_inst_name.
            ENDLOOP.
            LOOP AT i_final INTO wa_final.
              record_tab-string = wa_final.
              APPEND record_tab.
              CLEAR wa_final.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDIF.
      CALL FUNCTION 'F4UT_OPTIMIZE_COLWIDTH'
        TABLES
          shlp_tab    = shlp_tab
          record_tab  = record_tab
        CHANGING
          shlp        = shlp
          callcontrol = callcontrol.
    ENDFUNCTION.
    Regards,
    PRakash.

  • Problem in getting data form serch help .

    Hi experts ,
    i am using function module F4IF_FIELD_VALUE_REQUEST to ge the values in a button click .
    i want to fill the values to be filled in the screen fields automatically when i click of a perticular line.
    please help me out.
    thanks in advance .
    Naval bhatt

    Hi,
    DATA : v_return LIKE  ddshretval OCCURS 0 WITH HEADER LINE.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_idn1-low.
    **--Value help for service provider
      PERFORM value_help_serprovider USING  c_add c_low.
    FORM value_help_serprovider USING p1_field p1_text.
    SELECT werks INTO TABLE i_t001w
      FROM t001w.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
             EXPORTING
                  retfield        = 'WERKS'
                  dynpprog        = ws_repid
                  dynpnr          = sy-dynnr
                  value_org       = 'S'
             TABLES
                  value_tab       = i_t001w
                  return_tab      = v_return
             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.
      ENDIF.
    This the  main point to get the selected line into selection screen.
        s_plant1-low = v_return-fieldval.
    ENDFORM.                    " Value_Help_Serprovider

  • Serch help F4 in Screen Painter

    Hi All
    I am creating a new screen in Screen Painter, for one of the input fields , I want F4 search help, which should be desplayed from the database table.
    can any body guide how can I solve this.
    cheers
    AJ

    If no searh help avaialble for the data element.
    use process on value-request.
    field 'FIELD_NAME'  module set_values.
    and in module set_values   wrtie the below code
    for example i have taken entreis from t158g.
      types :  begin of t_tab,
                     gmcode  like t158g-gmcode,
                     tcode like t158g-tcode,
               end of t_tab.
      data it_tab type standard table of t_tab.
      select gmcode tcode into table it_tab from t158g.
      if not it_tab[] is initial.
        call function 'F4IF_INT_TABLE_VALUE_REQUEST'
          exporting
            retfield               = 'GMCODE'
           dynpprog               = sy-repid
           dynpnr                 = sy-dynnr
           dynprofield            = 'ZMAPGMCODE-GM_CODE'
           value                  = space
           value_org              = 'S'
           display                = 'F'
    IMPORTING
      USER_RESET             =
          tables
            value_tab              = it_tab
        if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        endif.
      endif.

  • Value serch help issue in webdtnpro ABAP interactive form

    Hi Experts,
    Iam facing an issue with value search help filed in Adobe interactive form using webdynpro native .
    if i click on button search help is working but after selecting value in popup is not populating in respective field .
    Please guide me on this.
    Thanks,
    Pavan

    Hi Pawan,
    Where you able to resolve the issue, if yes can you please share with me the details.
    Regards,
    Pranay

  • Re: serch help

    Hi gurus,
                 I have one doubt in search help , when I have created a table (ztable) in that i have maintain one field with data element
    kunnr, so when i try to create entries its giving f4 fumctionality for that field eventhough i haven't maintain any foreign key ralatio ship. The reason may be SAP already key created search help for kunnr .
                                 I tried in another way like I have created another table ( ztable) maintain search help for a field ,
                   If i call the same dataelement for another table its not giving f4 functionality. So my question is if u call kunnr dataelement in any table its giving f4 functionality. If i try with z table its not giving , I want the reason for it.
    Regards,
    sashi

    Data element KUNNR has explicitly assinged search help to it. If you go to definition of KUNNR and select Further characteristics tab you will see that there is used search help C_KUNNR for it. So wherever you use this data element it will provide F4 functionality (input help) for that field.
    This can be overwritten on field level. This means that you can explicitly remove or assing different search help for particular field in table using this KUNNR as data element. That's why in some tables it may be provided in some not.
    Moreover it can also be overwritten directly in program (if you for example don't want to use search help in particular screen field).
    Please refer [Hierarchy of the Search Help Call|http://help.sap.com/saphelp_nw04/helpdata/en/0b/32e9b798da11d295b800a0c929b3c3/frameset.htm]. This explains what overwrites what and in which case (in terms of data element).
    Regards
    Marcin

  • Serch help for list of currency key

    Hi friends,
    Can any budy tells me what is the search help to get list of currency key.
    like
    INR,
    USD,
    EUR
    Thank you.
    Regards,
    Virat

    Hi
    1) Elementary search helps describe a search path. The elementary search help must define where the data of the hit list should be read from (selection method), how the exchange of values between the screen template and selection method is implemented (interface of the search help) and how the online input help should be defined (online behavior of the search help).
    2) Collective search helps combine several elementary search helps. A collective search help thus can offer several alternative search paths.
    3)An elementary search help defines the standard flow of an input help.
    4) A collective search help combines several elementary search helps. The user can thus choose one of several alternative search paths with a collective search help.
    5)A collective search help comprises several elementary search helps. It combines all the search paths that are meaningful for a field.
    6)Both elementary search helps and other search helps can be included in a collective search help. If other collective search helps are contained in a collective search help, they are expanded to the level of the elementary search helps when the input help is called.
    CREATION:
    Go to SE11 Tcode
    select search help
    give the 'z' search help name and create
    select the selection method ur table name eg : 'mara'
    dialog module 'display value immediately'.
    add the field whatever u want and lpos = 1 and spos = 1 and check import and export parameter.
    where left position when displaying and spos = search position
    and then save and activate ..
    See the links:
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ee38446011d189700000e8322d00/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ee45446011d189700000e8322d00/content.htm
    pls go through this for search help creation
    http://help.sap.com/saphelp_nw2004s/helpdata/en/41/f6b237fec48c67e10000009b38f8cf/content.htm
    Search Help Exits:
    Re: dynamic values for search help
    Re: Dynamic search  help
    Thanks
    Ashu

  • Preferred Vendor serch help does not retrieve values

    Hi,
    SRM 5.0, Classic scenario
    I have successfully replicated the Vendors. But I don't see the vendors in the "search help" when I create a SC.
    It seems to me that I have implement the OSS note 845883. Can someone please confirm it.
    With regards,
    Pranav

    Hi,
    Apply this note and it should fix your problem:
    Note 845883 - Preferred vendor search help does not retrieve values
    Some other useful OSS notes ->
    968251 BBPSC02:In source of supply preferred vendor not validated
    1017288 SRM@ERP : no vendor replication into follow-on documents
    831833 Search help for preferred vendor does not update data
    980450 Shopping cart: search help for preferred vendor
    860886 Incorrect search results for deleted 'Preferred Vendor'
    711197 Preferred vendor not copied from template
    739531 Preferred vendor/service agent must not be changeable
    733899 Complete shopping cart: Preferred vendor disappears
    634794 Preferred vendor: partner not found
    726102 Performance in vendor search help
    647760 Shopping cart: Preferred vendor / partner not
    BR,
    Disha.
    <b>Pls reward points for useful answers.</b>

  • Dynamic serch help in TMG

    Hi All,
    I have creatred one table maintaince generator for the table with 2 fields.
    My equirement is to have dynamic F4 help on the second field.
    Dynamic means the values displayed in the F4 help should be depending on the values in the first field.
    for this in tmg modification/mainten screens i created on POV and module validate for second fiel. in
    that moudule  i call fn dynpro_value_read to get the value of first field. its geting empty value.
    can any body help me

    Hi Thirumala,
    Based on what you had created the TMG, means based on the table or a maintenance view. If you had created a maintenance view, then you should be calling the POV based on this field. For example if your table is ZTAB and your maintainence view is ZV_TAB the call from POV should be as follows:
    Case-1:
    FIELD ztab-field1 MODULE f4_field1.         "If TMG is based on table
    Case-2:
    FIELD zv_tab-field1 MODULE f4_field1.      "If TMG is based on maintenance view
    Then within the module f4_field1, you should be calling the DYNP_VALUES_READ as follows.
    Case-1:
    wa_dynpread-fieldname = 'ZTAB-FIELD1'.
    APPEND wa_dynpread TO gt_dynpread.
    Case-2:
    wa_dynpread-fieldname = 'ZV_TAB-FIELD1'.
    APPEND wa_dynpread TO gt_dynpread.
    CALL FUNCTION 'DYNP_VALUES_READ'
         EXPORTING
           dyname               = sy-repid
           dynumb               = sy-dynnr
         TABLES
           dynpfields           = gt_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.
    Now make your selection from the table based on the value that you got in gt_dynpread into table lt_f4_help which will contain value for field2.
    IF gt_dynpread IS NOT INITIAL.
         READ TABLE gt_dynpread INTO wa_dynpread INDEX 1.
         "Make your selection into lt_f4_help
          CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
                 EXPORTING
                   retfield        = 'FIELD2'
                   dynpprog        = sy-repid
                   dynpnr          = sy-dynnr
                   dynprofield     = 'ZV_TAB-FIELD2' "In case maintenance view
                   window_title    = text-004
                   value_org       = 'S'
                 TABLES
                   value_tab       = gt_versn_hlp
                 EXCEPTIONS
                   parameter_error = 1
                   no_values_found = 2
                   OTHERS          = 3.
               IF sy-subrc <> 0.
                 "Implement suitable error handling here
               ENDIF.
    ENDIF.
    Hope this will solve your issue.
    Regards,
    Abijith

  • Serch Help Exit problem

    Hi.
    I have this FM created by me.
    FUNCTION z_ricerca_ara_ofi.
    *"*"Interfaccia locale:
    *"  TABLES
    *"      SHLP_TAB TYPE  SHLP_DESCR_TAB_T
    *"      RECORD_TAB STRUCTURE  SEAHLPRES
    *"  CHANGING
    *"     VALUE(SHLP) TYPE  SHLP_DESCR_T
    *"     VALUE(CALLCONTROL) LIKE  DDSHF4CTRL STRUCTURE  DDSHF4CTRL
    DATA DECLARED ... :P
    * EXIT immediately, if you do not want to handle this step
      IF callcontrol-step <> 'SELONE' AND
         callcontrol-step <> 'SELECT' AND
         " AND SO ON
         callcontrol-step <> 'DISP'.
        EXIT.
      ENDIF.
    * STEP SELONE  (Select one of the elementary searchhelps)
    * This step is only called for collective searchhelps. It may be used
    * to reduce the amount of elementary searchhelps given in SHLP_TAB.
    * The compound searchhelp is given in SHLP.
    * If you do not change CALLCONTROL-STEP, the next step is the
    * dialog, to select one of the elementary searchhelps.
    * If you want to skip this dialog, you have to return the selected
    * elementary searchhelp in SHLP and to change CALLCONTROL-STEP to
    * either to 'PRESEL' or to 'SELECT'.
      IF callcontrol-step = 'SELONE'.
    *   PERFORM SELONE .........
        EXIT.
      ENDIF.
    * STEP PRESEL  (Enter selection conditions)
    * This step allows you, to influence the selection conditions either
    * before they are displayed or in order to skip the dialog completely.
    * If you want to skip the dialog, you should change CALLCONTROL-STEP
    * to 'SELECT'.
    * Normaly only SHLP-SELOPT should be changed in this step.
      IF callcontrol-step = 'PRESEL'.
    *   PERFORM PRESEL ..........
        EXIT.
      ENDIF.
    * STEP SELECT    (Select values)
    * This step may be used to overtake the data selection completely.
    * To skip the standard seletion, you should return 'DISP' as following
    * step in CALLCONTROL-STEP.
    * Normally RECORD_TAB should be filled after this step
      IF callcontrol-step = 'SELECT'.
        LOOP AT shlp-selopt INTO ls_interface.
          APPEND ls_interface TO lt_interface.
        ENDLOOP.
        STUFF DONE HERE :P.
        LOOP AT lt_matnr INTO ls_matnr.
          APPEND ls_matnr TO record_tab.
        ENDLOOP.
      ENDIF.
    * STEP DISP     (Display values)
    * This step is called, before the selected data is displayed.
    * You can e.g. modify or reduce the data in RECORD_TAB
    * according to the users authority.
    * If you want to get the standard display dialog afterwards, you
    * should not change CALLCONTROL-STEP.
    * If you want to overtake the dialog on you own, you must return
    * the following values in CALLCONTROL-STEP:
    * - "RETURN" if one line was selected. The selected line must be
    *   the only record left in RECORD_TAB. The corresponding fields of
    *   this line are entered into the screen.
    * - "EXIT" if the values request should be aborted
    * - "PRESEL" if you want to return to the selection dialog
      IF callcontrol-step = 'DISP'.
    *   PERFORM AUTHORITY_CHECK TABLES RECORD_TAB USING SHLP.
        EXIT.
      ENDIF.
    ENDFUNCTION.
    My questions is:
    Do i have to write something else in some of the STEPS ?
    Because i receive the message that the list is empty, but lt_matnr has 397 lines.
    I saw that in some further steps, outside my FM, record_tab is refreshed.
    There seams to be something missing from my FM, but i can't figure it out.
    Can someone help?
    Thanks.

    Hi there guys.
    Thanks for the help and for the ideas.
    The answer was allot simpler. It was only needed to add one line
    callcontrol-step = 'DISP'.
    before the corresponding ENDIF of
    IF callcontrol-step = 'SELECT'.
    Here is what I did:
    FUNCTION z_ricerca_ara_ofi.
    *"*"Interfaccia locale:
    *"  TABLES
    *"      SHLP_TAB TYPE  SHLP_DESCR_TAB_T
    *"      RECORD_TAB STRUCTURE  SEAHLPRES
    *"  CHANGING
    *"     VALUE(SHLP) TYPE  SHLP_DESCR_T
    *"     VALUE(CALLCONTROL) LIKE  DDSHF4CTRL STRUCTURE  DDSHF4CTRL
      DATA: BEGIN OF ls_cawnt,
            atinn TYPE atinn,
            spras TYPE spras,
            adzhl TYPE adzhl,
            atzhl TYPE atzhl,
            END OF ls_cawnt.
      DATA: BEGIN OF ls_cawn,
            atwrt TYPE atwrt,
            atflv TYPE atflv,
            END OF ls_cawn.
      DATA: BEGIN OF ls_cabn,
            atfor TYPE atfor,
            anzst TYPE anzst,
            anzdz TYPE anzdz,
            END OF ls_cabn.
      DATA: BEGIN OF lt_ausp OCCURS 0,
            objek TYPE objnum,
            cuobf     TYPE cuobm,
            END OF lt_ausp,
            ls_ausp LIKE LINE OF lt_ausp.
      DATA: lt_interface TYPE STANDARD TABLE OF ddshselopt,
            ls_interface LIKE LINE OF lt_interface,
            strwhere TYPE string,
            strwhere2 TYPE string
      TYPES: BEGIN OF gs_matnr,
              matnr TYPE matnr,
             END OF gs_matnr.
      DATA: lt_matnr TYPE TABLE OF gs_matnr,
            ls_matnr TYPE gs_matnr.
      DATA: BEGIN OF s_matnr OCCURS 0,
             sign(1),
             option(2),
             low  TYPE matnr,
             high TYPE matnr,
            END OF s_matnr.
      DATA: BEGIN OF s_maktg OCCURS 0,
             sign(1),
             option(2),
             low  TYPE maktg,
             high TYPE maktg,
            END OF s_maktg.
      DATA: BEGIN OF s_spras OCCURS 0,
             sign(1),
             option(2),
             low  TYPE spras,
             high TYPE spras,
            END OF s_spras.
      DATA: BEGIN OF s_zzcodara OCCURS 0,
             sign(1),
             option(2),
             low  TYPE zzcodara,
             high TYPE zzcodara,
            END OF s_zzcodara.
      DATA: BEGIN OF s_zzcodofi OCCURS 0,
             sign(1),
             option(2),
             low  TYPE zzcodofi,
             high TYPE zzcodofi,
            END OF s_zzcodofi.
      DATA: BEGIN OF s_carat1 OCCURS 0,
            sign(1),
            option(2),
            low  TYPE zcarat,
            high TYPE zcarat,
           END OF s_carat1.
      DATA: BEGIN OF s_carat2 OCCURS 0,
            sign(1),
            option(2),
            low  TYPE zcarat,
            high TYPE zcarat,
           END OF s_carat2.
      DATA: BEGIN OF s_carat3 OCCURS 0,
            sign(1),
            option(2),
            low  TYPE zcarat,
            high TYPE zcarat,
           END OF s_carat3.
      DATA: BEGIN OF s_categ OCCURS 0,
            sign(1),
            option(2),
            low  TYPE zcateg,
            high TYPE zcateg,
           END OF s_categ.
    * EXIT immediately, if you do not want to handle this step
      IF callcontrol-step <> 'SELONE' AND
         callcontrol-step <> 'SELECT' AND
         " AND SO ON
         callcontrol-step <> 'DISP'.
        EXIT.
      ENDIF.
    * STEP SELONE  (Select one of the elementary searchhelps)
    * This step is only called for collective searchhelps. It may be used
    * to reduce the amount of elementary searchhelps given in SHLP_TAB.
    * The compound searchhelp is given in SHLP.
    * If you do not change CALLCONTROL-STEP, the next step is the
    * dialog, to select one of the elementary searchhelps.
    * If you want to skip this dialog, you have to return the selected
    * elementary searchhelp in SHLP and to change CALLCONTROL-STEP to
    * either to 'PRESEL' or to 'SELECT'.
      IF callcontrol-step = 'SELONE'.
    *   PERFORM SELONE .........
        EXIT.
      ENDIF.
    * STEP PRESEL  (Enter selection conditions)
    * This step allows you, to influence the selection conditions either
    * before they are displayed or in order to skip the dialog completely.
    * If you want to skip the dialog, you should change CALLCONTROL-STEP
    * to 'SELECT'.
    * Normaly only SHLP-SELOPT should be changed in this step.
      IF callcontrol-step = 'PRESEL'.
    *   PERFORM PRESEL ..........
        EXIT.
      ENDIF.
    * STEP SELECT    (Select values)
    * This step may be used to overtake the data selection completely.
    * To skip the standard seletion, you should return 'DISP' as following
    * step in CALLCONTROL-STEP.
    * Normally RECORD_TAB should be filled after this step
      IF callcontrol-step = 'SELECT'.
        LOOP AT shlp-selopt INTO ls_interface.
          APPEND ls_interface TO lt_interface.
        ENDLOOP.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'MATNR'.
        IF sy-subrc = 0.
          s_matnr-sign = ls_interface-sign.
          s_matnr-option = ls_interface-option.
          s_matnr-low = ls_interface-low.
          APPEND s_matnr.
          CONCATENATE strwhere ' mara~matnr IN s_matnr AND' INTO strwhere.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'MAKTG'.
        IF sy-subrc = 0.
          s_maktg-sign = ls_interface-sign.
          s_maktg-option = ls_interface-option.
          s_maktg-low = ls_interface-low.
          APPEND s_maktg.
          CONCATENATE strwhere ' MAKTG IN s_maktg AND' INTO strwhere.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'SPRAS'.
        IF sy-subrc = 0.
          s_spras-sign = ls_interface-sign.
          s_spras-option = ls_interface-option.
          s_spras-low = ls_interface-low.
          APPEND s_spras.
          CONCATENATE strwhere ' spras IN s_spras AND' INTO strwhere.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'ZZCODARA'.
        IF sy-subrc = 0.
          s_zzcodara-sign = ls_interface-sign.
          s_zzcodara-option = ls_interface-option.
          s_zzcodara-low = ls_interface-low.
          APPEND s_zzcodara.
          CONCATENATE strwhere ' zzcodara IN s_zzcodara AND' INTO strwhere.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'ZZCODOFI'.
        IF sy-subrc = 0.
          s_zzcodofi-sign = ls_interface-sign.
          s_zzcodofi-option = ls_interface-option.
          s_zzcodofi-low = ls_interface-low.
          APPEND s_zzcodofi.
          CONCATENATE strwhere ' zzcodofi IN s_zzcodofi AND' INTO strwhere.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'CARAT1'.
        IF sy-subrc = 0.
          s_carat1-sign = ls_interface-sign.
          s_carat1-option = ls_interface-option.
          s_carat1-low = ls_interface-low.
          APPEND s_carat1.
          CONCATENATE strwhere2 ' ATWTB IN s_carat1 AND' INTO strwhere2.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'CARAT2'.
        IF sy-subrc = 0.
          s_carat2-sign = ls_interface-sign.
          s_carat2-option = ls_interface-option.
          s_carat2-low = ls_interface-low.
          APPEND s_carat2.
          CONCATENATE strwhere2 ' ATWTB IN s_carat2 AND' INTO strwhere2.
          CLEAR ls_interface.
        ENDIF.
        READ TABLE lt_interface INTO ls_interface WITH KEY shlpfield = 'CARAT3'.
        IF sy-subrc = 0.
          s_carat3-sign = ls_interface-sign.
          s_carat3-option = ls_interface-option.
          s_carat3-low = ls_interface-low.
          APPEND s_carat3.
          CONCATENATE strwhere2 ' ATWTB IN s_carat3 AND' INTO strwhere2.
          CLEAR ls_interface.
        ENDIF.
        IF ( NOT strwhere2 IS INITIAL ).
          SHIFT strwhere2 RIGHT DELETING TRAILING 'AND'.
          SELECT SINGLE atinn spras adzhl atzhl
          FROM cawnt
          INTO CORRESPONDING FIELDS OF ls_cawnt
          WHERE (strwhere2).
          SELECT SINGLE atwrt atflv
          FROM cawn
          INTO CORRESPONDING FIELDS OF ls_cawn
          WHERE atinn EQ ls_cawnt-atinn
            AND atzhl EQ ls_cawnt-atzhl.
          SELECT SINGLE atfor anzst anzdz
          FROM cabn
          INTO CORRESPONDING FIELDS OF ls_cabn
          WHERE atinn EQ ls_cawnt-atinn
            AND adzhl EQ ls_cawnt-adzhl.
          IF ls_cabn-atfor = 'CHAR'.
            SELECT objek
            FROM ausp
            INTO CORRESPONDING FIELDS OF TABLE lt_ausp
            WHERE atinn EQ ls_cawnt-atinn
              AND adzhl EQ ls_cawnt-adzhl
              AND atwrt EQ ls_cawn-atwrt.
          ENDIF.
          IF ls_cabn-atfor = 'NUM'.
            SELECT objek
            FROM ausp
            INTO CORRESPONDING FIELDS OF TABLE lt_ausp
            WHERE atinn EQ ls_cawnt-atinn
              AND adzhl EQ ls_cawnt-adzhl
              AND atflv GE ls_cawn-atflv
              AND atflb LE ls_cawn-atflv.
          ENDIF.
          LOOP AT lt_ausp INTO ls_ausp.
            MOVE ls_ausp-objek+0(18) TO ls_ausp-cuobf.
            MODIFY lt_ausp INDEX sy-tabix FROM ls_ausp
                   TRANSPORTING cuobf.
          ENDLOOP.
          IF sy-subrc = 0.
            SELECT matnr
            FROM mara
            INTO CORRESPONDING FIELDS OF TABLE lt_matnr
            FOR ALL ENTRIES IN lt_ausp
            WHERE cuobf EQ lt_ausp-cuobf.
          ENDIF.
        ENDIF.
        SHIFT strwhere RIGHT DELETING TRAILING 'AND'.
        IF NOT s_matnr-low IS INITIAL.
          SELECT mara~matnr
          FROM mara
                JOIN makt ON mara~matnr = makt~matnr
          INTO CORRESPONDING FIELDS OF TABLE lt_matnr
          WHERE (strwhere) " mara~prdha IN s_categ AND spras IN s_spras "
        ENDIF.
        LOOP AT lt_matnr INTO ls_matnr.
          APPEND ls_matnr TO record_tab.
        ENDLOOP.
        callcontrol-step = 'DISP'.
        CLEAR s_categ.
        CLEAR lt_matnr. REFRESH lt_matnr.
        CLEAR ls_matnr.
      ENDIF.
    * STEP DISP     (Display values)
    * This step is called, before the selected data is displayed.
    * You can e.g. modify or reduce the data in RECORD_TAB
    * according to the users authority.
    * If you want to get the standard display dialog afterwards, you
    * should not change CALLCONTROL-STEP.
    * If you want to overtake the dialog on you own, you must return
    * the following values in CALLCONTROL-STEP:
    * - "RETURN" if one line was selected. The selected line must be
    *   the only record left in RECORD_TAB. The corresponding fields of
    *   this line are entered into the screen.
    * - "EXIT" if the values request should be aborted
    * - "PRESEL" if you want to return to the selection dialog
      IF callcontrol-step = 'DISP'.
    *    PERFORM authority_check TABLES record_tab shlp_tab
    *                               CHANGING shlp callcontrol.
    *    EXIT.
      ENDIF.
    ENDFUNCTION.
    It's true that it was not obligatory to do something in that perform (that's why it's still commented), but still I did not have to change the name in F4UT*.
    If there is a special reason i have to change it in F4UT* pls tell me.
    Thanks again for you help.
    Edited by: Marius Cosmin Stoica on Aug 19, 2008 8:13 PM

  • Reg : F4 help for custom fields in ALV report

    hi friends..
    in my internal table i have fields including 1 custom field..
    DATA : BEGIN OF i_final OCCURS 0,
      pernr LIKE p0000-pernr,
      begda LIKE p0000-begda,
      plans LIKE ZPOSITION-plans,  (custom)
      werks LIKE pspar-werks,
      end of i_final.
    i want to display this i_final table in alv. for that i genetrate one fieldcatalog
    PERFORM fcat USING:
                      'I_FINAL' 'PERNR' 'P0000' 'PERNR' '15' 'X' '',
                      'I_FINAL' 'BEGDA' 'P0000' 'BEGDA' '10' 'X' '',
                      'I_FINAL' 'PLANS' 'ZPOSITION' 'PLANS' '8' 'X' '',
                      'I_FINAL' 'WERKS' 'PSPAR' 'WERKS' '14' 'X' ''.
    in custom table zposition, i maintain serch help for custom field "PLANS".
    then i used reuse_alv_grid_display.. for all the std fields along wit custom fields
    i got f4 all std fields but for my custom i am not getting the f4 help
    how can i get the F$ help for this custom fields Zposition-plans..
    plz give some idea

    Hi
    In that Ztable against the field
    PLANS give the check table name as  <b>T528B</b>
    then it will automatically give the search help
    or you can create your own search help(elementary) and add to that field
    Reward if useful
    regards
    Anji

  • Hiding a input field in the F4 help...?

    hi,
    How can we hide a input field(selection criteria) in the F4 help.
    Eg- if we use standard serch help KRED_C for the field lifnr. i want to hide 'Name' from the filter criteria??
    Thanks

    Hi Pavan,
    It's a reccurring question in BSP forum that cannot be solved that easily...
    You will find some examples of how it can be handled in demo BSP :
    <b>bsp_valuehelp</b>
    <b>bsp_vhelp</b>     (this one is MVC-oriented)
    To go further, you should have a look at the following blog :
    /people/thomas.jung3/blog/2004/09/17/bsp-150-a-developer146s-journal-part-xii-150-value-input-help-popups
    /people/thomas.jung3/blog/2004/11/01/bsp-value-input-help-popups-version-20-part-1
    Hope it helps.
    Best regards,
    Guillaume

Maybe you are looking for

  • Increase performance in a multiple data source report

    Post Author: ArturoFromPeru CA Forum: General Hi everybody. I have a big problem, when i make a report that have multiple data sources the performance decrease considerably, i still don't know the reason. Is it true that using multiple data sources i

  • Minimum permissions to allow an end-user to create linked reports?

    User has Browser and Content Manager permissions at the SSRS folder level. I'm finding I have to add them to the SCDW_Administrators role before they can create/save Linked Reports - seems excessive, so looking to see if there's a better solution O.

  • PPTP VPN - Clients inside Cisco877w - server at workplace

    I am trying to connect to my workplace PPTP server from my home that has a Cisco 877w ADSL/Wireless router.  I configured the majority of the setup via CLI and just started playing with CCP.  I've used version 2.5 and 2.7 on a virtual Windows station

  • ITunes Radio not playing songs I want

    I set up a station with the following artists: Gene Clark, Poco, Flying Burrito Brothers, Pure Pararie League, Gram Parsons, New Riders of the Purple Sage, The Byrds, etc. I have the "variety" setting selected for the station. The station plays very

  • Abap objects for beginners

    hi all please send me links or pdf documents or materials on abap objects <u><b>ASAP</b>.</u>