Example DATA flight_tab TYPE HASHED TABLE OF spfli WITH UNIQUE KEY carrid connid. SELECT * FROM spfli INTO TABLE @flight_tab. IF line_exists( flight_tab[ carrid = 'LH' connid = '0400' ] ). ... ENDIF.
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. 1 使用此语法,可判断内表中行是否...
Check if the line exist with the value which exists in the table, followed by the entry which doesn’t exist with equivalent old code. DATA:t_dataTYPESTANDARDTABLEOFi.DATA(lv_value)=9.DO10TIMES.APPENDsy-indexTOt_data.ENDDO.*WRITE:/'>>> New',lv_value.IFline_exists(t_data[table_line...
ABAP-LINES的用法 1*获取内表数据的数目2DATA(lv_num) =lines( lt_tab ) .34*判断有没有内表有没有符合条件的数据5IFline_exists( lt_tab[ checkbox ='X'a =''] ) .6ENDIF.78*获取内表数据符合条件的索引9DATA(lv_index) = line_index( lt_tab[ checkbox ='X'a =''] ) ....
4.优先使用LINE_EXISTS而不是READ TABLEorLOOP AT去判断值是否存在 5. 避免不必要的表读取 字符串 1. 使用 ` 来定义文字 2. 使用|来动态连接字符串 布尔值 1.使用XSDBOOL设置布尔变量 条件 1. 优先选择IS NOT而不是NOT IS 2. 保持较低的嵌套深度 ...
* 2.1 line_exists( ) - 判断记录是否存在 * 2.2 line_index( ) - 获取符合记录的索引值 * 3. 內表推导 - FOR 理解为LOOP,是对实现操作符 NEW 和值操作符VALUE的一种增强,作用是构造內表内容 * 语法1 : …FOR i = ... [THEN expr] UNTIL | WHILE log_exp ... ...
Line_exists IF line_exists( gt_data[ field1 = ' ' field2 = ' ' ] ). ENDIF. 1. 使用此语法,可判断内表中行是否有满足条件的,无需LOOP判断,省去好多代码。 3. Select 内表 select 内表,可以i对内表使用sql的语法。例如:取内表某一列的最大值,就可以直接MAX,无需排序后,读第一行, ...
Line_exists 代码语言:javascript 代码运行次数:0 IFline_exists(gt_data[field1=' 'field2=' ']).ENDIF. 使用此语法,可判断内表中行是否有满足条件的,无需LOOP判断,省去好多代码。 3. Select 内表 select 内表,可以i对内表使用sql的语法。例如:取内表某一列的最大值,就可以直接MAX,无需排序后,读第一...
CHECK line_exists( gt_mara[ matnr = 'AT001' ] ). "得到数据在内表中的行 "旧语法 DATA lv_tabix TYPE sy-tabix. READ TABLE gt_mara TRANSPORTING NO FIELDS WITH KEY matnr = 'AT001'. IF sy-subrc EQ 0. lv_tabix = sy-tabix.
ABAP新语法记录(⼀)原⽂链接:主要内容 内联声明 构造表达式 内表操作 Open SQL 其他 本⽂列出了ABAP新语法的⼀些使⽤⽅式,供⼤家学习参考。内联声明 代码实现:*&--- * 主题⼀:内联声明 * 语法:DATA(...) ,FILED-SYMBOL(…)* 1. 定义变量 * 2. 定义结构 * 3. 定义内表 * 4...