效果图:
设置抬头,列颜色,排序,汇总,
设置筛选
code:
*&---------------------------------------------------------------------*
*&Report
ZLM_ALV_001
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORTzlm_alv_001 .
*ALVObject
Model
–
DATA :gt_spfli
TYPE
TABLE
OF
spfli .
DATA :gr_table
TYPE
REF
TO
cl_salv_table .
"displaysetting
DATA :gr_display
TYPE
REF
TO
cl_salv_display_settings .
"toolbar
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
) .
*toolbar
gr_functions
=
gr_table ->get_functions (
) .
gr_functions ->set_all (
abap_true
) .
*displaysetting
~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 (
*&
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT
*ALV
DATA :
DATA :
"display
DATA :
"tool
DATA :
"Columns
DATA :
DATA :
DATA :
*Sorts
DATA :
*Aggregations
DATA :
*Filters
DATA :
*Layouts
DATA :
DATA :
START-OF-SELECTION .
*tool
*display
*Sorts
*
*
*Layouts