Dahili sıralı tablolarda primary key & key kullanımı

Birden fazla sıralı tablolarda "with table key" argümanı ile "read table" komutu çalıştırıldığında sy-tabix kullanılan key`in indeksini döndürür. Asıl tablonun indeksini kaybetmemek için asıl indeksi tablodaki bir sütuna yazdırabilirsiniz . Alternatif olarak "assign" ile  "field-point" üzerinden indekse ihtiyaç duymadan çalışabilirsiniz.


typesTty_EKBE    type sorted table of ty_EKBE
                          with unique key EBELN EBELP ZEKKN  VGABE GJAHR BELNR BUZEI
                          WITH NON-UNIQUE SORTED KEY malgiris COMPONENTS EBELN EBELP  BUDAT
                          WITH NON-UNIQUE SORTED KEY belge COMPONENTS GJAHR BELNR BUZEI EBELN EBELP.
TYPESTty_EKBE_tab type STANDARD TABLE OF ty_EKBE.

 

    clear ls_ekbe_101.
    lv_xndx_101 0.
    read table lt_ekbe_full into ls_ekbe_101 with table key belge
          components gjahr ls_mseg-sjahr   belnr ls_mseg-smbln   buzei ls_mseg-smblp  EBELN ls_mseg-EBELN EBELP ls_mseg-EBELP .
    if sy-subrc eq 0.
      lv_xndx_101 ls_ekbe_101-ekbe_xndx"sy-tabix
    endif.


    clear ls_ekbe_102.
    lv_xndx_102 0.
    read table lt_ekbe_full into ls_ekbe_102 with table key belge
         components gjahr ls_mseg-mjahr   belnr ls_mseg-mblnr   buzei ls_mseg-zeile   EBELN ls_mseg-EBELN EBELP ls_mseg-EBELP .
    if sy-subrc eq 0.
      lv_xndx_102 ls_ekbe_102-ekbe_xndx"sy-tabix.
    endif.

 Key