`
zjut_xiongfeng
  • 浏览: 273184 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

function方式的ALV中 增加按钮 用 REUSE_ALV_GRID_DISPLAY

 
阅读更多

function方式的ALV中,实现增强功能。

例如,想要在ALV界面通过某个按钮完成ALV数据的下载。这个需求有很多实现的方式,我这里给出一种比较少见的做法。

每一个标准的用'REUSE_ALV_GRID_DISPLAY'实现的ALV,执行后都会跳转到一个标准的屏幕。我们可以去观察这个screenGUI Status—STANDARD_FULLSCREEN’。上面有不少的按钮,每个按钮都有一个功能代码。如&ALL’ ‘&SAL’这种。我的想法是,按这个按钮的时候激发我在程序中代码,实现ALVuser exit

做法(以下载按钮为例):

Step 1

DATA: it_event_test TYPE slis_t_event_exit,

it_event_test_wa TYPE slis_event_exit.

it_event_test_wa-ucomm = '%PC '.

it_event_test_wa-before = 'X'.

*it_event_test_wa-after = 'X'.

APPEND it_event_test_wa TO it_event_test.

Step 2

FORM. mycommand USING r_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

IF r_ucomm = '%PC '.

此处添加增强的代码

ENDIF.

ENDFORM.

Step 3:

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program= g_repid

is_layout= gs_layout

it_fieldcat= gt_fieldcat[]

i_grid_title= l_text

i_save= 'A'

is_variant= gs_variant

i_callback_user_command = 'MYCOMMAND'

it_event_exit= it_event_test

TABLES

t_outtab= gt_data[].


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics