Selection Screende Search Help

SAP’de Selection Screen üzerinde Search Help kullanmak, kullanıcılara belirli bir alanda (örneğin, malzeme numarası veya müşteri numarası gibi) geçerli değerler arasında seçim yapmalarını sağlayan kullanışlı bir özelliktir. SAP’de Search Help‘leri (Arama Yardımları) kullanarak, kullanıcıların kolayca veri seçmelerini sağlamak mümkündür.

İşte SAP Selection Screen‘e Search Help eklemek için adımlar:

1. Search Help Nedir?

Search Help, kullanıcıların ekranda bir alanın geçerli değerlerini görmesini sağlayan bir araçtır. Kullanıcılar, F4 tuşunu kullanarak bu değerleri liste halinde görüntüleyebilir ve seçim yapabilirler.

2. Search Help Türleri

SAP’de iki tür Search Help vardır:

  • Elementer Search Help: Basit bir arama yardımıdır. Genellikle bir alana bağlı olan ve o alandaki olası değerleri listeleyen bir yapıdır. Kullanıcı F4 tuşuna bastığında, bu liste görünür.
  • Toplu (Collective) Search Help: Birden fazla elementer search help’in bir araya gelerek kullanıldığı karmaşık bir arama yardım türüdür.

3. Selection Screen’e Search Help Nasıl Eklenir?

1. Veri Elemanı Kullanarak (Standard Search Help)

Eğer kullanmak istediğiniz alan zaten bir veri elemanına (data element) bağlıysa ve bu veri elemanının bir Search Help‘i varsa, selection screen’e otomatik olarak eklenir.

Örnek: Eğer MATNR (Malzeme Numarası) alanını kullanıyorsanız, bu alanın zaten bir search help’i vardır. Bu durumda şu şekilde kullanabilirsiniz:

PARAMETERS: p_matnr TYPE matnr.  " Malzeme Numarası

Bu durumda, MATNR veri elemanının bağlı olduğu arama yardımı otomatik olarak Selection Screen’de kullanılacaktır.

2. Özel (Custom) Search Help Oluşturma

Eğer özel bir arama yardımı oluşturmak istiyorsanız, SAP’nin ABAP Dictionary aracını kullanarak bunu yapabilirsiniz. SE11 işlem kodu ile bir Search Help oluşturabilirsiniz.

Adımlar:
  1. SE11‘e gidin.
  2. “Search Help” seçeneğini seçin ve “Create” butonuna tıklayın.
  3. Elementer veya Toplu bir arama yardımı seçin.
  4. Parametreler (alınacak değerler) belirleyin.
  5. Search Help’i aktive edin.

Bir özel Search Help oluşturduktan sonra, Selection Screen’deki bir alana bu arama yardımını atayabilirsiniz:

PARAMETERS: p_matnr TYPE matnr MATCHCODE OBJECT Z_MY_SEARCH_HELP.

Burada, Z_MY_SEARCH_HELP sizin oluşturduğunuz özel Search Help’dir.

3. Dinamik Search Help

Bazı durumlarda, arama yardımının dinamik olarak değişmesi gerekebilir (örneğin, bir alandaki değeri girdiğinizde başka bir alanda gösterilecek seçeneklerin değişmesi gibi). Bunu yapmak için, F4IF_SHLP_EXIT fonksiyon modüllerini kullanabilirsiniz.

Örnek:

DATA: lt_return TYPE TABLE OF ddshretval, 
      lv_searchhelp TYPE ddshretval.

CALL FUNCTION 'F4IF_SHLP_EXIT_EXAMPLE'
  EXPORTING
    fieldname = 'P_MATNR'
    value      = p_matnr
  IMPORTING
    returncode = lv_returncode
    return     = lt_return.

Bu şekilde, kullanıcı belirli bir değer girdiğinde, Search Help dinamik olarak filtrelenebilir.

4. Selection Screen’de Arama Yardımını Kullanma

Selection Screen’de arama yardımını kullanmak için, sadece MATCHCODE OBJECT ifadesini kullanmanız yeterlidir. Eğer özel bir Search Help kullanıyorsanız, bunu parametreye eklemeniz gerekir.

PARAMETERS: p_kunnr TYPE kunnr MATCHCODE OBJECT Z_KUNNR_SEARCH.

Burada, Z_KUNNR_SEARCH özel bir müşteri numarası arama yardımını ifade eder.

4. Search Help ile Seçim Yapmak

Kullanıcılar, F4 tuşuna basarak arama yardımlarını çağırabilirler. Bu, kullanıcının geçerli değerler arasında hızlıca seçim yapmasını sağlar.

5. Debugging Search Help

Bir Search Help çalışmazsa, şu adımları izleyerek sorunu çözebilirsiniz:

  • SE11‘deki veri elemanının Search Help‘ini kontrol edin.
  • MATCHCODE OBJECT ayarlarını kontrol edin.

One thought on “Selection Screende Search Help

  • Aralık 23, 2024 tarihinde, saat 8:38 am
    Permalink

    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_releas.
    gv_main->help_f4_heat( ).

    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_bolnr-low.
    gv_main->help_f4_bolnr( ). ” or perform help_f4_bolnr.

    ***********************************************************************
    METHOD help_f4_bolnr.
    DATA : lt_return TYPE TABLE OF ddshretval.
    DATA: lr_bolnr TYPE RANGE OF likp-bolnr.

    SELECT bolnr
    FROM likp
    INTO TABLE @DATA(lt_bolnr)
    WHERE bolnr IN @lr_bolnr.

    SORT lt_bolnr BY bolnr.
    DELETE ADJACENT DUPLICATES FROM lt_bolnr COMPARING bolnr.

    CALL FUNCTION ‘F4IF_INT_TABLE_VALUE_REQUEST’
    EXPORTING
    retfield = ‘HEAT’
    value_org = ‘S’
    TABLES
    value_tab = lt_bolnr
    return_tab = lt_return.

    LOOP AT lt_return INTO DATA(ls_return).
    s_bolnr-low = ls_return-fieldval.
    ENDLOOP.
    ENDMETHOD.

    Yanıtla

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir