1.包含语句
co只包含(1 co 12) cn不止包含(12 cn 1 )
ca 包含任何(12 ca 1) na 不包含任何(12 na 34)
cs 包含字符串 (12 cs 1) na 不包含字符串 (12 ns 3)
2.逻辑语句
CASE num1.
WHEN 1.
WRITE 1.
WHEN OTHERS.
WRITE 3.
ENDCASE.
DO 10 TIMES.
sy-index.
ENDDO.
WHILE num1 < 10.
WRITE num1.
num1 += 1.
ENDWHILE.
3.关键字
continue / exit / wait up to 2 seconds. (等待两秒)
4. 字符串操作
4.1连接
CONCATENATE 'a' 'b' 'c' INTO str SEPARATED BY space RESPECTING BLANKS.
1.连接 (SEPARATED BY 用什么分隔, RESPECTING BLANKS 意思是保留空格)(等同于 str = 'd' && 'e' && 'f'.) ’‘ 和 `` 之间的区别是包含空格是否显示
2.WRITE sy-subrc.判断上面是否字符连接成功,成功显示0,失败显示4.
4.2find 从一个字符串查找另一个小的字符串
find 'abce' in 'abcd'.
WRITE sy-subrc.
4.3 取字符串
WRITE sy-abcde+0(2).
从sy-abcde的字符串中,从第0位开始取两位 。
4.4 替换
DATA str TYPE string VALUE 'abcd'.
REPLACE 'bcd' in str WITH '123'.
结果就是 bcd 被替换 123 打印出a123
4.5 shift
4.6 split 分割 字符串或者表
DATA str TYPE string VALUE 'a,bc,d'.
DATA : str1 TYPE string,
str2 type string,
str3 TYPE string.
SPLIT str at ',' INTO str1 str2 str3.
WRITE: str1,str2,str3.
将一个字符串以逗号分割给其他变量
4.7 CONDENSE 去空格
DATA str TYPE string VALUE ' a bc d '.
去两头空格
CONDENSE str.
WRITE / str.
去掉所有空格
CONDENSE str NO-GAPS .
WRITE / str.
4.8 TRANSLATE <字段名> to UPPER/ LOWER 转大小写
DATA str TYPE string VALUE 'abcd '.
TRANSLATE str to UPPER CASE.
WRITE str.
4.9日期转字符串,转格式(有问题)
第一种转格式方式
DATA str TYPE c LENGTH 10.
data date TYPE d.
str = sy-datum(4) && '/' && sy-datum+4(2).
WRITE str.
打印的结果是:2022/09
第二种转日期格式,比较方便但是有些问题
DATA str TYPE c LENGTH 10.
DATA date TYPE d.
WRITE sy-datum to str YYMMDD.
WRITE str.
这里第二种字符串转格式有问题
4.10 write
DATA str TYPE c LENGTH 10.
data name TYPE string.
name = 'sy-datum'.
WRITE (name) to str .
WRITE str.
加 name 加() 表示是sy-datum的值 ,不加()直接打印出sy-datum这个字符串