Abap String Fonksiyonları
SAP Abapta kullanılan bazı string fonksiyonları aşağıdaki gibidir.
STRLEN – Bir string değişkeninin uzunluğunu bulur.
WRITE – Ekrana veya değişkene yazma işlemini yapar.
CONCATENATE – Değişkenleri dışa aktarmadan art arda yapıştırır.
SHIFT – Değişkenin içeriğini sağa ya da sola kaydırır.
CONDENSE – String değişkenin başındaki boşlukları atar.
lv_string+23(12) – lv_string değişkeninin 23 karakterini atlayıp sonraki 12 karakterini al.
SEARCH – Bir string değişkenin içeriğini başka bir değişken için tarama.
REPLACE – Bir stringin içeriğindeki belirli sözcükleri başkaları ile değiştirir.
STRLEN – Bir string değişkenin uzunluğunu döner.
Örneğin;
lv_num1 = STRLEN( lv_string ).
IF STRLEN( lv_string ) GE 5.
WRITE lv_string(5).
ENDIF.
WRITE – Dışa aktarım rutini kullanarak tarihi, belgeyi, vb. ekrana veya değişkene yazar.
Örneğin;
"EKRANA YAZ:
WRITE: lv_matnr, lv_kunnr, sy-datum, lv_belnr.
WRITE: lv_dmbtr CURRENCY lv_waers.
"DEĞİŞKENE YAZ:
WRITE sy-datum TO lv_outstr.
WRITE lv_menge TO lv_out UNIT lv_meins.
CONCATENATE – Değişkenleri dışa aktarım rutini kullanmadan art arda yapıştırır.
Örneğin;
CONCATENATE 'Bu ayki ciromuz' lv_dmbtr 'TL dir.'
INTO lv_outstr
SEPARATED BY space.
SHIFT – Değişkenin içeriğini sağa veya sola kaydırır.
Örneğin;
SHIFT lv_matnr LEFT DELETING LEADING '0'.
CONDENSE
– String değişkenin başındaki boşlukları atar.
Örneğin;
CONDENSE lv_outstr.
SEARCH – Bir string değişkenin içeriğini başka bir değişken için tarama, string varsa SY-SUBRC 0 olur, yoksa 4 olur. Stringin içerisinde bulunduğu ilk karakter 0 olmak kaydıyla SY-FDPOS o karakterin bulunduğu sırayı verir.
Örneğin;
SEARCH lv_matnr FOR 'MT'.
CHECK sy-subrc EQ 0 AND sy-fdpos EQ 2.
REPLACE – Bir stringin içeriğindeki belli kelimeleri başkaları ile değiştirir.
WRITE lv_menge TO lv_outstr.
REPLACE ',000' IN lv_outstr WITH ''.
REPLACE ALL OCCURENCES OF 'AB' IN lv_outstr WITH 'BC'.
SPLIT – metinlerde ayırma işlemi gerçekleştirir.
Örneğin;
SPLIT lv_text AT ' ' INTO TABLE it_data.