1.随时取数随时显示,显示表 lt_item的数据,每个字段都显示
2.列名称需要每一个单独设置
"重新设置列名称 go_alv->get_columns( )->get_column( 'KDAUF' )->set_long_text( '销售订单' )." go_alv->get_columns( )->get_column( 'AUFNR' )->set_long_text( '生产订单' )." go_alv->get_columns( )->get_column( 'BDMNG' )->set_long_text( '需求数量' )."3.窗口大小参数有四个,分别是左上角的X坐标,右下角的X坐标,左上角的Y坐标,右下角的Y坐标
IF go_alv IS BOUND."设置窗口大小与位置- go_alv->set_screen_popup( start_column = 30 end_column = 80 start_line = 5 end_line = 15 ). go_alv->display( ). ENDIF.全部代码如下,一般是双击按钮调用这个perfoem。
*&---------------------------------------------------------------------* *& Form frm_call_aufnr_sec *&---------------------------------------------------------------------* *& text *&---------------------------------------------------------------------* *& --> <WA> *& --> LV_BDAT *& --> LV_EDAT *&---------------------------------------------------------------------* FORM frm_call_aufnr_sec USING p_matnr p_bdat p_edat. DATA: go_alv TYPE REF TO cl_salv_table, go_funlst TYPE REF TO cl_salv_functions_list. DATA: cxroot TYPE REF TO cx_root, excmsg TYPE c. CLEAR:go_alv,go_funlst. SELECT a~kdauf ,a~aufnr,a~bdmng FROM @gt_resb as a WHERE a~matnr = @p_matnr AND a~bdter BETWEEN @p_bdat AND @p_edat INTO TABLE @DATA(lt_item) . IF sy-subrc = 0. TRY. cl_salv_table=>factory( IMPORTING r_salv_table = go_alv "导出ALV的容器对象 CHANGING t_table = lt_item[] ). "内容表 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' ). "重新设置列名称 go_alv->get_columns( )->get_column( 'KDAUF' )->set_long_text( '销售订单' )." go_alv->get_columns( )->get_column( 'AUFNR' )->set_long_text( '生产订单' )." go_alv->get_columns( )->get_column( 'BDMNG' )->set_long_text( '需求数量' )." IF go_alv IS BOUND."设置窗口大小与位置- go_alv->set_screen_popup( start_column = 30 end_column = 80 start_line = 5 end_line = 15 ). go_alv->display( ). ENDIF. ENDIF. ENDFORM.