[ABAP] Abbildung von boolschen Werten im ABAP

Typen

Typ          Herkunft                  Anmerkung
----------------------------------------------------------------------------------------------------------------------------------
abap_bool    Typegruppe ABAP           empfohlen in den offiziellen ABAP Programming Guidelines
                                       Ab Release 7.40 sind bei Predicative Method Calls Rückgabewerte vom Typ ABAP_BOOL notwendig
                                       https://help.sap.com/doc/abapdocu_752_index_htm/7.52/de-DE/abenpredicative_method_calls.htm
boolean      Datenelement BOOLEAN      hat keine Feldbezeichner
xfeld        Datenelement XFELD        hat keine Feldbezeichner
os_boolean   Datenelement OS_BOOLEAN
wdy_boolean  Datenelement WDY_BOOLEAN
ddbool_d     Datenelement DDBOOL_D

Werte

boolscher Typ  ABAP-Konstante                ABAP-Wert  Definition         Datentyp  Länge
------------------------------------------------------------------------------------------
true           abap_true                     'X'        Typegruppe ABAP    char      1
false          abap_false                    ' '        Typegruppe ABAP    char      1
               abap_undefined                '-'        Typegruppe ABAP    char      1
true           cl_abap_typedescr=>true       'X'        cl_abap_typedescr  char      1
false          cl_abap_typedescr=>false      ' '        cl_abap_typedescr  char      1
               cl_abap_typedescr=>undefined  '-'        cl_abap_typedescr  char      1

[ABAP] Prüfen, ob Datensatz auf der Datenbank vorhanden

DATA: lv_matnr_ok TYPE boolean VALUE abap_false.

PARAMETERS: p_matnr TYPE mara-matnr.

* wenn Datensatz vorhanden, wird abap_true in lv_matnr_ok geschrieben
SELECT SINGLE @abap_true FROM mara INTO @lv_matnr_ok
  WHERE matnr = @p_matnr.

WRITE: / COND string( WHEN lv_matnr_ok = abap_true THEN 'MATNR vorhanden.' ELSE 'MATNR nicht vorhanden.').

IF sy-subrc NE 0.
  WRITE: / 'Fehler:', sy-subrc.
ENDIF.