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.

5230

被折叠的 条评论
为什么被折叠?



