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.
types: Tty_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.
TYPES: Tty_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.