Insert Data into Sorted Table

来源:互联网 发布:java可以做网站吗 编辑:程序博客网 时间:2024/05/07 05:54

今天使用APPEND LINES OF table1 TO table2的时候,发生了如下Dump:

ITAB_ILLEGAL_SORT_ORDER_BLK

Error analysis
    You want to insert several lines at once into the sorted internal table.To do this, you use:

INSERT/APPEND LINES OF SrcTab ... INTO/TO DstTab ...

However, when the line 1 of the source table SrcTab was inserted, the
sorting sequence - determined for the target table DstTab via

its key - was destroyed.

仔细查看发现table2 是sorted table,如果table1的key值不是按顺序排列的话,或者table2不为空,你插入的时候导致顺序错误。都会发生dump.

解决的办法: 使用 INSERT LINES OF table1 INTO TABLE table2.

 

同样的道理,单条插入的时候,可以使用

INSERT line INTO TABLE sorted_table.

来代替

APPEND line TO sorted_table。

The program short dumps when appending a sorted table in the wrong sort order

data: sorted_tab type sorted table of ty_tab with non-unique key key,      line       type ty_tab.line-key = 1.append line to sorted_tab.  "works fine"line-key = 2.append line to sorted_tab.  "works fine"line-key = 1.append line to sorted_tab.  "<==== Short dump here"

Use INSERT in stead:

data: sorted_tab type sorted table of ty_tab with non-unique key key,      line       type ty_tab.line-key = 1.insert line into table sorted_tab.  "works fine"line-key = 2.insert line into table sorted_tab.  "works fine"    line-key = 1.insert line into table sorted_tab.  "works fine"

Note If you had a UNIQUE key you would still get a short dump because you're using the same key twice


原创粉丝点击