弹出 ALV 的几种方法 ALVPOPUP

作者:ABAP老白 约 2 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发

[ ABAP老白 ](javascript:void\(0\);)

***方法1

DATA: go_alv TYPE REF TO cl_salv_table,

go_funlst TYPE REF TO cl_salv_functions_list.

DATA: itab TYPE STANDARD TABLE OF t001.
DATA: cxroot TYPE REF TO cx_root,

excmsg TYPE string.

SELECT * FROM t001 INTO TABLE itab .
TRY.
cl_salv_table=>factory(

IMPORTING

r_salv_table = go_alv

CHANGING

t_table = itab[] ).
CATCH cx_root INTO cxroot.

excmsg = cxroot->get_text( ).

MESSAGE e000(oo) WITH excmsg.

ENDTRY.

go_funlst = go_alv->get_functions( ).

go_funlst->set_all( 'X' ).

IF go_alv IS BOUND.

go_alv->set_screen_popup(

start_column = 10

end_column = 110

start_line = 5

end_line = 15 ).

go_alv->display( ).

ENDIF.
弹出 ALV 的几种方法 ALVPOPU - 封面图
弹出 ALV 的几种方法 ALVPOPU - 封面图

***方法2

DATA: go_grid TYPE REF TO cl_rs_alv_grid_popup,

itab TYPE TABLE OF t001 .

SELECT * FROM t001 INTO TABLE itab .
CALL SCREEN 100.

MODULE status_0100 OUTPUT.

CREATE OBJECT go_grid

EXPORTING

i_structure_name = 'T001'

i_repid = sy-repid

i_dynnr = '0100'

i_left = 80

i_top = 80

i_height = 300

i_width = 800.

CALL METHOD go_grid->show_data

EXPORTING

i_t_data = itab[].
ENDMODULE. " STATUS_0100 OUTPUT
弹出 ALV 的几种方法 ALVPOPU - 封面图
弹出 ALV 的几种方法 ALVPOPU - 封面图

***方法3

DATA : itab TYPE TABLE OF t001 ,

result TYPE c .

SELECT * FROM t001 INTO TABLE itab .
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'

EXPORTING

i_title = 'TEST'

i_screen_start_column = 15

i_screen_start_line = 1

i_screen_end_column = 128

i_screen_end_line = 20

i_tabname = ''

i_selection = ''

i_structure_name = 'T001'

IMPORTING

e_exit = result

TABLES

t_outtab = itab

EXCEPTIONS

program_error = 1

OTHERS = 2 .

弹出 ALV 的几种方法 ALVPOPU - 封面图
弹出 ALV 的几种方法 ALVPOPU - 封面图
弹出 ALV 的几种方法 ALVPOPU - 封面图
弹出 ALV 的几种方法 ALVPOPU - 封面图
ABAP老白

关于作者:ABAP老白

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「弹出ALV的几种方法ALVPOPUP.md」整理生成,仅用于内部技术分享与学习交流。