Seçim Ekranına F4 Yardmı


Seçim ekranına F4 yardımı ile ülke seçimi ekleme örneğidir.


SELECT-OPTIONS:
           ulkeno   
FOR zdi_tab01-ulkeno.

*/ F4 ile Ülke seçimi
AT SELECTION-SCREEN ON VALUE-REQUEST FOR ulkeno-high.
  
PERFORM deger_oku TABLES ulkeler USING ulkeno-high.
*/ F4 ile Ülke seçimi
AT SELECTION-SCREEN ON VALUE-REQUEST FOR ulkeno-low.
  
PERFORM deger_oku TABLES ulkeler USING ulkeno-low.
INITIALIZATION.
*/Ülke bilgilerini itaba al
  
PERFORM ulke_oku.
FORM ulke_oku.
*/Ülke bilgilerini oku
*/ülkeler tablosuna yerleştir
  
SELECT FROM t005t WHERE spras EQ 'T'.
    ulkeler-value = t005t-land1.
    ulkeler-valdescr = t005t-landx.
    
APPEND ulkeler.
    
CLEAR ulkeler.
  ENDSELECT.
ENDFORM.                               
" ULKE_OKU

FORM deger_oku TABLES itab LIKE tab[]
                         
USING deger.
*/Verilen karakteristiğe ait değerleri
*/okuyarak itab'a yerleştirir
  
DATA : tabix LIKE sy-tabix.
  
REFRESH valst.  REFRESH values.
  
PERFORM baslik_ekle.
  
DATA i TYPE i.
  
LOOP AT itab.
    
= sy-tabix.
    
PERFORM deger_ekle USING itab-value 1.
    
PERFORM deger_ekle USING itab-valdescr 2.
  ENDLOOP.
  
CALL FUNCTION 'VALUES_DISPLAY'
*       exporting
*         CUCOL                     = 0
*         CUROW                     = 0
*         DISPLAY                   = ' '
*         FIELDNAME                 = ' '
*         TABNAME                   = ' '
*         SHRINK_FLAG               = ' '
*         TITLE_IN_VALUES_LIST      = ' '
*         NO_CONVERSION             = ' '
*         EXTERNAL_F4               = ' '
       
IMPORTING
            select_index              = tabix
*            select_value              =
*            external_f4_call_2nd_time =
       
TABLES
            values                    = values
            valuestructure            = valst
*         SELECT_VALUES             =
       
EXCEPTIONS
            check_table_locked        = 
1
            no_values_for_field       = 
2
            tablefield_does_not_exist = 
3
            
OTHERS                    4.
  
CHECK sy-subrc EQ 0.
  
READ TABLE itab INDEX tabix.
  deger = itab-value.

ENDFORM.                               
" DEGER_OKU


Basit Popup Alv


SAP'de popup liste göstermek istediğiniz kullanabileceğiniz pratik bir pop up alv.
 


DATA go_alv TYPE REF TO cl_salv_table.

  TRY.
      cl_salv_table=>factory(
        IMPORTING
          r_salv_table = go_alv
        CHANGING
          t_table      = z_itab[] ).

    CATCH cx_salv_msg.
  ENDTRY.

  DATA: lr_functions TYPE REF TO cl_salv_functions_list.

  lr_functions = go_alv->get_functions( ).
  lr_functions->set_all( 'X' ).

  IF go_alv IS BOUND.

      go_alv->set_screen_popup(
        start_column = 25
        end_column  = 100
        start_line  = 6
        end_line    = 10 ).


    go_alv->display( ).

  ENDIF.