2020-09-03 03:20发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家您好,
我想问一下用户按下按钮后如何刷新ALV网格显示中的数据。 我正在使用功能模块REUSE_ALV_GRID_DISPLAY。
谢谢。
尝试这个。
使用ucomm类型sy-ucomm
selfield类型slis_selfield形成用户命令。
selfield-refresh ='X'。 p>
endform。
致谢
Prabhu
嗨,
调用方法网格(网格名称)-> refresh_table_display
导出
IS_STABLE = (这是用于数据刷新)
I_SOFT_REFRESH = (这用于图标刷新)。
此致
Bhanu
在您的输出屏幕上,首先创建一个刷新数据的按钮。
。
使用user_command和endform形式编写以下代码。
常量:l_c_repid TYPE sy-repid VALUE'/CCC/RDSDSLSR_GTS_RECON'。
数据:rsparams的l_i_seltab类型表。
通话功能'RS_REFRESH_FROM_SELECTOPTIONS'
curr_report = l_c_repid
导入
SP =
表格
selection_table = l_i_seltab
例外情况
not_found = 1
no_report = 2
其他= 3
IF sy-subrc <> 0。
消息ID sy-msgid类型sy-msgty编号sy-msgno
与sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。
ELSE。
使用SELECTION-TABLE l_i_seltab提交/ccc/rdsdslsr_gts_recon。
ENDIF。
ENDFORM。
Naveen M。
在alv工具栏中创建带有一些功能代码的按钮。
在at-usercommand事件中,
检查sy-ucomm ='刷新按钮的功能代码"。
如果是,则将字段" slis_selfield-refresh"的值设置为" X"。
这将有助于刷新alv。
亲爱的
要在用户按下按钮后刷新ALV网格显示中的数据,可以使用
此功能模块'RS_REFRESH_FROM_SELECTOPTIONS'
欢呼声
好吃
OUFFF OK !!,只是为了阐明问题的唯一好答案:
这里出现的问题是,在用户执行操作之后,上下文可能已更改,您需要在ALV中反映该更改。
简单的示例:
我要执行该供应商阻止程序。 我正在显示所选供应商的alv,其中一个字段是阻止状态。 然后,只需按一下按钮,我就一步一步地阻塞了未阻塞的供应商,并一路修改了供稿内部表的阻塞状态字段。
如果我没有做任何专门的事情来刷新ALV,在完成按钮操作之后,屏幕上的阻止字段将不会相应地更新。
因此,正如上面一个人所说,这个技巧很简单:
selfield-refresh ='X'!!!!
您知道,要响应用户操作,您必须将用户命令表传递给ALV呼叫。 表单的结构是强制性的,如下所示(只要您有ucomm字段,然后是slis_selfield,就可以根据需要更改名称)。
然后,宾果游戏,如果将参数selfieldref-refresh改回'X',它将自动触发从修改后的内部表刷新,该刷新为ALV提供信息
使用ucomm类型sy-ucomm selfield类型slis_selfield形成user_command。
...
selfield-refresh ='X'。
最多设置5个标签!
尝试这个。
使用ucomm类型sy-ucomm
selfield类型slis_selfield形成用户命令。
selfield-refresh ='X'。 p>
endform。
致谢
Prabhu
嗨,
调用方法网格(网格名称)-> refresh_table_display
导出
IS_STABLE =(这是用于数据刷新)
I_SOFT_REFRESH =(这用于图标刷新)。
此致
Bhanu
嗨,
在您的输出屏幕上,首先创建一个刷新数据的按钮。
点击按钮时。
使用user_command和endform形式编写以下代码。
常量:l_c_repid TYPE sy-repid VALUE'/CCC/RDSDSLSR_GTS_RECON'。
数据:rsparams的l_i_seltab类型表。
通话功能'RS_REFRESH_FROM_SELECTOPTIONS'
导出
curr_report = l_c_repid
导入
SP =
表格
selection_table = l_i_seltab
例外情况
not_found = 1
no_report = 2
其他= 3
。
IF sy-subrc <> 0。
消息ID sy-msgid类型sy-msgty编号sy-msgno
与sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。
ELSE。
使用SELECTION-TABLE l_i_seltab提交/ccc/rdsdslsr_gts_recon。
ENDIF。
ENDFORM。
此致
Naveen M。
在alv工具栏中创建带有一些功能代码的按钮。
在at-usercommand事件中,
检查sy-ucomm ='刷新按钮的功能代码"。
如果是,则将字段" slis_selfield-refresh"的值设置为" X"。
这将有助于刷新alv。
亲爱的
要在用户按下按钮后刷新ALV网格显示中的数据,可以使用
此功能模块'RS_REFRESH_FROM_SELECTOPTIONS'
欢呼声
好吃
OUFFF OK !!,只是为了阐明问题的唯一好答案:
这里出现的问题是,在用户执行操作之后,上下文可能已更改,您需要在ALV中反映该更改。
简单的示例:
我要执行该供应商阻止程序。 我正在显示所选供应商的alv,其中一个字段是阻止状态。 然后,只需按一下按钮,我就一步一步地阻塞了未阻塞的供应商,并一路修改了供稿内部表的阻塞状态字段。
如果我没有做任何专门的事情来刷新ALV,在完成按钮操作之后,屏幕上的阻止字段将不会相应地更新。
因此,正如上面一个人所说,这个技巧很简单:
selfield-refresh ='X'!!!!
您知道,要响应用户操作,您必须将用户命令表传递给ALV呼叫。 表单的结构是强制性的,如下所示(只要您有ucomm字段,然后是slis_selfield,就可以根据需要更改名称)。
然后,宾果游戏,如果将参数selfieldref-refresh改回'X',它将自动触发从修改后的内部表刷新,该刷新为ALV提供信息
使用ucomm类型sy-ucomm selfield类型slis_selfield形成user_command。
...
...
selfield-refresh ='X'。
...
...
endform。
一周热门 更多>