table control 问题一 填数据丢失

自己用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.

这样修改以后再拉滚动栏或者其他地方数据就不会丢失了

你可能感兴趣的:(table control 问题一 填数据丢失)