Mustafa HAMIT

ABAP IF Kullanımı: Tüm Operatörler ve Koşullar (Örneklerle Rehber)

Bu liste, ABAP’ta günlük kullanımda ihtiyaç duyacağın tüm IF operatörlerini kapsar. ABAP’ta IF koşulları veri kontrolü ve iş mantığı kurmanın temelidir. Bu yazıda tüm operatörleri kategorize ederek tek sayfada topladım.


1) Karşılaştırma Operatörleri

IF a = b.      " eşit
IF a <> b.     " eşit değil
IF a > b.
IF a < b.
IF a >= b.
IF a <= b.

Eski stil (hala kullanılabilir):

IF a EQ b.
IF a NE b.
IF a GT b.
IF a LT b.
IF a GE b.
IF a LE b.

2) Mantıksal Operatörler

IF a = 1 AND b = 2.
IF a = 1 OR  b = 2.
IF NOT a = 1.

Parantez kullanımı:

IF ( a = 1 OR a = 2 ) AND b = 3.

3) Boş (Initial) Kontrolü

IF lv_var IS INITIAL.
IF lv_var IS NOT INITIAL.

4) String / Pattern Operatörleri

IF lv_text CP 'A*'.   " pattern (wildcard)
IF lv_text NP 'A*'.   " not pattern

IF lv_text CS 'ABC'.  " contains string
IF lv_text NS 'ABC'.  " not contains

IF lv_text CO 'ABC'.  " sadece bu karakterlerden oluşur
IF lv_text CN 'ABC'.

IF lv_text CA 'ABC'.  " herhangi biri varsa
IF lv_text NA 'ABC'.

5) Aralık (Range) Kontrolü

IF lv_num BETWEEN 1 AND 10.

6) Internal Table Kontrolü

Klasik yöntem:

READ TABLE lt_tab WITH KEY field = 'X'.

IF sy-subrc = 0.

Modern yöntem:

IF line_exists( lt_tab[ field = 'X' ] ).

7) Referans Kontrolü

IF lo_obj IS BOUND.
IF lo_obj IS NOT BOUND.

8) Nesne Türü Kontrolü

IF lo_obj IS INSTANCE OF cl_gui_textedit.

9) Birleşik Örnek

IF lv_supplier IS NOT INITIAL
   AND lv_waers = 'EUR'
   AND lines( lt_items ) < 5.

  " işlem
ENDIF.

10) Modern ABAP Kullanımı

IF line_exists( lt_po_group[ supplier = lv_supplier waers = lv_waers ] ).

Özet

  • Temel karşılaştırma: = <> > <
  • Mantık: AND OR NOT
  • Boş kontrol: IS INITIAL
  • String kontrol: CP, CS, CA
  • Tablo kontrol: line_exists
  • Nesne kontrol: IS BOUND

Loading

Bir yanıt yazın