ABAP 7.4新特性(四): COND SWITCH 操作符
阿新 • • 發佈:2019-01-06
在新語法中,可以使用COND、SWITCH來根據邏輯表示式或情況的不同確定指定變數的結果。
語法格式:
...COND dtype | # ( WHEN log_exp1 THEN result1
[ WHEN log_exp2 THEN result2 ]
....
[ ELSE resultn ] ) ...
...SWITCH dtype | # ( operand
WHEN const1 THEN result1
[ WHEN const2 THEN result2 ]
....
[ ELSE resultn ] ) ...
[ ] 裡可填,THEN後面都是返回的結果。在SWITCH中 operand 是一個變數類似case operand: when...
例一:
sy = '120000' 就是時間12點。 程式就是根據sy-timlo是否超過12點 然後設定不同的格式賦值給time。DATA(time) = COND string( WHEN sy-timlo < '120000' THEN |{ sy-timlo TIME = ISO } AM| WHEN sy-timlo > '120000' THEN |{ CONV t( sy-timlo - 12 * 3600 ) TIME = ISO } PM| WHEN sy-timlo = '120000' THEN |High noon| * ELSE ). WRITE: time.
例二:
DATA(a) = 11.
DATA(text) = SWITCH #( a
WHEN '11' THEN '11yyagd'
WHEN '12' THEN '12dkdkkd'
* ELSE
).
WRITE: text.
這段程式碼就是根據變數a的值,賦不同的值給text。