TABLE CONTROL 转载http://blog.csdn.net/yandong_song/article/details/11143355
自己用table control向导画了一个表格,用向导画好,在里面填写数据,拉滚动栏的时候数据丢失了!
这是为什么呢?
自动产生的代码:
MODULE EMPLOYEEINFO_MODIFY INPUT.
MODIFY ZEMPLOYEE
FROM ZEMPLOYEE
INDEX EMPLOYEEINFO-CURRENT_LINE.
ENDMODULE.
经观察,需要在这段代码做一些修改
MODULE EMPLOYEEINFO_CHANGE_TC_ATTR OUTPUT.
DESCRIBE TABLE ZEMPLOYEE LINES WA_LINES.
EMPLOYEEINFO-LINES = WA_LINES + 20." 额外增加20行
ENDMODULE.
------------------------------------------------------------------------------------
MODULE EMPLOYEEINFO_MODIFY INPUT.
“判断ZEMPLOYEE的行数是否大于current_line,大于就修改内表zemployee,小于就往zemployee添加数据
IF WA_LINES >= EMPLOYEEINFO-CURRENT_LINE.
MODIFY ZEMPLOYEE
FROM ZEMPLOYEE
INDEX EMPLOYEEINFO-CURRENT_LINE.
ELSE.
APPEND ZEMPLOYEE TO ZEMPLOYEE. "你的内表和工作区
ENDIF.
ENDMODULE.
这样修改以后再拉滚动栏或者其他地方数据就不会丢失了