如何刷新ALV屏幕与刷新ALV输出内表
1个回答
展开全部
首先找到如下代码:宽毁CALLFUNCTION'REUSE_ALV_GRID_DISPLAY'EXPORTING
i_callback_program=g_repid
i_structure_name='TYP_RESULT'
i_grid_title=g_title
i_grid_settings=g_setting
i_callback_user_command='SUB_USER_COMMAND'
i_callback_pf_status_set='SUB_SET_PF_STATUS'
i_callback_top_of_page='SUB_TOP_OF_PAGE'i_save=g_saveis_layout=wa_layout
it_fieldcat=gt_fieldcat[]TABLESt_outtab=gt_resultEXCEPTIONS
program_error=1OTHERS=2.
程序中标红的部分是传递的一个子程序的名称,这个子程序用来处理你在ALV状态栏上新笑培增的功能操作。此子程序代码如下:
*@--------------------------------------------------------------------**@Form
sub_user_command
*@--------------------------------------------------------------------**--R_UCOMM事务功能码*
--RS_SELFIELD
ALV相关的数据
*---------------------------------------------------------------------*FORMsub_user_commandUSINGr_ucommLIKEsy-ucomm
rs_selfieldTYPEslis_selfield.CASEr_ucomm.WHEN'&IC1'.
"双击事件的功能码WHEN'CLEAR'.PERFORMsub_ucomm_clear."清空操作ENDCASE.*刷新ALV报表*CALLFUNCTION'GET_GLOBALS_FROM_SLVC_FULLSCR'*IMPORTING*e_grid=g_grid.*CALLMETHODg_grid-check_changed_data.*CALLMETHODg_grid-refresh_table_display.
rs_selfield-refresh='X'.
ENDFORM.
以上子程序传递的参数是碰巧唯固定,不用理会。程序中注释掉的部分是当输出的内表内容发生变化时,我们将变化的内容刷新显示。如果ALV是可编辑的,编辑相应的单元格后,只要有标红的那一句参数设置,就可以实现内表内容的刷新。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询