点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨@Eitan,
我在报告中使用了您的代码(如下)来刷新alv网格,我认为它是可行的,网格中的记录正在更新,但旧记录仍在网格中,我的意思是在每次更新操作中, 记录越来越多,我的问题是旧记录也越来越多。
请让我知道可能的解决方案。
此致
CLASS:cl_event_receiver DEFINITION DEFERRED。
数据:ob_event_receiver类型参考cl_event_receiver。
数据:ob_gui_timer类型参考cl_gui_timer。
类处理程序:
* ---------------------------------------- ------------------------------ *
* --------------- -------------------------------------------------- ----- *
CLASS cl_event_receiver定义。
方法:结束
结束cl_gui_timer的活动。
ENDCLASS。 " cl_event_receiver DEFINITION
* ------------------------------------------- --------------------------- *
* ------------------ -------------------------------------------------- -*
CLASS cl_event_receiver实施。
* ------------------------------------ ---------------------------------- *
* ----------- -------------------------------------------------- --------- *
方法完成。
检查p_tmr_on情商abap_true。
ob_gui_timer-> cancel()。
ob_gui_timer-> interval = p_tmr_in。
ob_gui_timer-> run()。
*您的代码以加载alv数据。
PERFORM get_data_1。
离开屏幕100。
终结法。 "完成
* -------------------------------------------- -------------------------- *
ENDCLASS。" cl_event_receiver实施
选择屏幕:
* ---------------------------------------------- ------------------------ *
带有FRAME的Block12的选择屏幕开始。
参数:p_tmr_on TYPE timer_on AS CHECKBOX,< br> p_tmr_in类型timer_i默认60强制性。
选择屏幕结束的块block12。
* -------------------------- -------------------------------------------- *
在pbo处(在ob_gui_alv_grid-> set_table_for_first_display之后):
如果ob_gui_timer处于初始状态。
创建对象ob_gui_timer。
SET HANDLER ob_event_receiver_1->对于ob_gui_timer完成。
ENDIF。
*启动计时器。
如果p_tmr_on均衡abap_true。
ob_gui_timer-> interval = p_tmr_in。
ob_gui_timer-> run()。
ENDIF。
您正在显示CL_GUI_TIMER处理程序的代码,但没有显示如何处理ALV网格内容。
无论如何,您正在使用LEAVE TO SCREEN 100,但是您无需离开屏幕即可转到另一个屏幕,您需要刷新ALV网格控件的内容,即,您只需要调用alv_grid-> refresh_table_display()。
PS:请使用CODE按钮设置代码行的格式。
一周热门 更多>