SAP ABAP S/4新语法
-
- 新语法
1. 内联声明(Inline Declarations)
用途:直接在代码中声明变量或内表,无需预先定义数据类型。
示例:
" 声明内联变量DATA(lv_name) = 'John'. " 自动推断类型为 CHAR
" 声明内联内表(Standard 表)
DATA(lt_flights) = VALUE TABLE OF sflight( ).
" 通过 SELECT 直接填充内联内表
SELECT * FROM sflight INTO TABLE @DATA(lt_data).
2. 字符串模板(String Templates)
用途:简化字符串拼接,支持换行和变量嵌入。
示例:
DATA(lv_date) = sy-datum.DATA(lv_text) = |Flight { lv_date } is delayed by { 2 } hours.|.
" 多行字符串DATA(lv_html) = |<html>\n| &
| <body>\n| &
| <h1>Hello { lv_name }!</h1>\n| &
| </body>\n| &
|</html>|.
3. 条件表达式(Conditional Expressions)
用途:用单行表达式替代 IF 或 CASE 语句。
示例:
" 单行 IF-ELSEDATA(lv_status) = COND string(
WHEN sy-subrc = 0 THEN 'Success'
ELSE 'Error' ).
" CASE 表达式DATA(lv_grade) = SWITCH string(
lv_score