Select case when

Aus SAP-Wiki
Wechseln zu:Navigation, Suche

Siehe Schlüsselbefehl Select.

Siehe Select coalesce-Funktion (Ersatzwert bei Initialwert).

Bei der neuen ABAP-Syntax ist auch möglich im Select Befehle einzubauen, die Werte in die Zieltabelle schreiben, die nicht aus der Datenbank stammen, sondern lediglich eine Abhängigkeit zu einem/den Select-Feldern haben.

Beispiel

Hier wird z. B. in Abhängigkeit von den Werten in TSP01-RQDOCTYPE das Feld "ICON" gefüllt.

 SELECT
   tsp01~rqident,    "Spoolnumer
   tsp01~rq0name,    "Name
   tsp01~rq1name,    "Suffix1
   tsp01~rq2name,    "Suffix2
   tsp01~rqowner,    "User
   tsp01~rqcmode,    "External mode of an
   tsp01~rqfinal,    "Spool request comple
   tsp01~rqcretime,  "Created
   tsp01~rqdeltime,  "Deleted At
   tsp01~rqdest,     "Output Device
   tsp01~rqcopies,   "No. of copies
   tsp01~rqdoctype,   "DocTyp
   case when tsp01~rqdoctype = 'LIST'
          then '@3D@'
        when tsp01~rqdoctype = 'SMART'
          then  '@0Q@'
        when tsp01~rqdoctype = 'OTF'
          then '@0Y@'
        when tsp01~rqdoctype = 'ADSP'
          then '@0N@'
        else ' '
   end as icon      "Zielfeld
   INTO TABLE @ct_itab
   FROM tsp01
   WHERE
     tsp01~rqident   IN @s_rqid  AND
     tsp01~rqdoctype IN @s_docty AND
     tsp01~rqowner   IN @s_user.

TSP01 13.JPG