效果图: 设置抬头,列颜色,排序,汇总, 筛选 code
文本版代码:
REPORT zlm_alv_001.
*ALV Object Model – DATA: gt_spfli TYPE TABLE OF spfli. DATA: gr_table TYPE REF TO cl_salv_table.
"display setting DATA: gr_display TYPE REF TO cl_salv_display_settings.
"tool bar DATA: gr_functions TYPE REF TO cl_salv_functions.
"Columns – CL_SALV_COLUMNS_TABLE and CL_SALV_COLUMN_TABLE DATA: gr_columns TYPE REF TO cl_salv_columns_table. DATA: gr_column TYPE REF TO cl_salv_column_table. DATA: color TYPE lvc_s_colo.
*Sorts – CL_SALV_SORTS DATA: gr_sorts TYPE REF TO cl_salv_sorts.
*Aggregations – CL_SALV_AGGREGATIONS DATA: gr_agg TYPE REF TO cl_salv_aggregations.
*Filters – CL_SALV_FILTERS DATA: gr_filter TYPE REF TO cl_salv_filters.
*Layouts – CL_SALV_LAYOUT DATA: gr_layout TYPE REF TO cl_salv_layout. DATA: key TYPE salv_s_layout_key.
START-OF-SELECTION.
SELECT * INTO TABLE gt_spfli FROM spfli.
cl_salv_table=>factory( IMPORTING r_salv_table = gr_table CHANGING t_table = gt_spfli ).
*tool bar gr_functions = gr_table->get_functions( ). gr_functions->set_all( abap_true ).
*display setting ~title gr_display = gr_table->get_display_settings( ). gr_display->set_striped_pattern( cl_salv_display_settings=>true ). gr_display->set_list_header( 'This is the Title' ).
"Columns – CL_SALV_COLUMNS_TABLE and CL_SALV_COLUMN_TABLE gr_columns = gr_table->get_columns( ). gr_column ?= gr_columns->get_column( 'CITYTO' ). gr_column->set_long_text( 'This is long text' ). gr_column->set_medium_text( 'This is med text' ). gr_column->set_short_text( 'This is sh' ). gr_column ?= gr_columns->get_column( 'CITYFROM' ). color-col = '6'. color-int = '1'. color-inv = '0'. gr_column->set_color( color ).
*Sorts – CL_SALV_SORTS gr_sorts = gr_table->get_sorts( ).
* "Aggregations – CL_SALV_AGGREGATIONS gr_sorts->add_sort( columnname = 'CITYTO' subtotal = abap_true ). gr_agg = gr_table->get_aggregations( ).
gr_agg->add_aggregation( 'DISTANCE' ).
* Filters – CL_SALV_FILTERS gr_filter = gr_table->get_filters( ). gr_filter->add_filter( columnname = 'CARRID' low = 'LH' ). *Layouts – CL_SALV_LAYOUT
gr_layout = gr_table->get_layout( ). key-report = sy-repid. gr_layout->set_key( key ). gr_layout->set_save_restriction( cl_salv_layout=>restrict_none ).
gr_table->display( ).
来源:https://www./content-4-857551.html
|