- DATA(ls_data) = gt_data[ index ]. 使用此语法,可以省去read,直接读取指定行号的数据,但需要判断gt_data不是否有指定index行,需要catch 异常CX_SY_ITAB_LINE_NOT_FOUND异常,会直接dump.
- Line_exists
IF line_exists( gt_data[ field1 = ' ' field2 = ' ' ] ). ENDIF.
使用此语法,可判断内表中行是否有满足条件的,无需LOOP判断,省去好多代码。 3. Select 内表 select 内表,可以i对内表使用sql的语法。例如:取内表某一列的最大值,就可以直接MAX,无需排序后,读第一行, 需要append a表 to B表时,但A表字段与B表字段数量不一致时,可以使用
代码语言:javascript复制 SELECT FROM @a表 AS a
FIELDS field1
APPENDING CORRESPONDING FIELDS OF TABLE @b表.
- 前导0处理
lv_field = |{ lv_field ALPHA = OUT }|.//去前导0
代码语言:javascript复制 lv_field = |{ lv_field ALPHA = IN }|.//加前导0
- Value
lr_data = VALUE #( sign = 'I' option = 'BT' ( low = 1 high = 2 )
( low = 3 high = 4 )
( low = 4 high = 5 )
option = 'EQ' ( low = 6 ) ).
对range表赋值,非常简便。 先写这些 ,后面持续更新。