zoukankan      html  css  js  c++  java
  • ABAP如何使用CL_SALV_TABLE 的代码样例(2004以后版本)

    1、 简单的CL_SALV_TABLE 的使用
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_table->display( ).
    运行结果

    2、使用CL_SALV_FUNCTIONS添加工具栏(注意添加的红色代码)
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).

      gr_table->display( ).
    运行结果

    3、使用CL_SALV_DISPLAY_SETTINGS(注意添加的红色代码)
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      gr_table->display( ).

    4、使用CL_SALV_COLUMNS_TABLE和CL_SALV_COLUMN_TABLE(注意添加的红色代码)
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.
    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.
    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      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 ).

      gr_table->display( ).

    5、使用CL_SALV_SORTS(注意添加的红色代码),增加排序
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.
    data: gr_columns type ref to cl_salv_columns_table.
    data: gr_column type ref to cl_salv_column_table.
    data: gr_sorts type ref to cl_salv_sorts.

    data: color type lvc_s_colo.
    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      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 ).
      gr_sorts = gr_table->get_sorts( ).
      gr_sorts->ADD_SORT( 'CITYTO' ).

      gr_table->display( ).

    6、使用CL_SALV_AGGREGATIONS(注意添加的红色代码),增加汇总
    将DISTANCE字段按CITYTO字段进行汇总
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.
    data: gr_columns type ref to cl_salv_columns_table.
    data: gr_column type ref to cl_salv_column_table.
    data: gr_sorts type ref to cl_salv_sorts.
    data: gr_agg type ref to cl_salv_aggregations.

    data: color type lvc_s_colo.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      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 ).
      gr_sorts = gr_table->get_sorts( ).
    *  gr_sorts->ADD_SORT( 'CITYTO' ).
      gr_sorts->add_sort( columnname = 'CITYTO' subtotal = abap_true ).
      gr_agg = gr_table->get_aggregations( ).
      gr_agg->add_aggregation( 'DISTANCE' ).
      gr_table->display( ).

    7、使用CL_SALV_FILTERS(注意添加的红色代码),增加过滤
    只显示CARRID等于'LH'
    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.
    data: gr_columns type ref to cl_salv_columns_table.
    data: gr_column type ref to cl_salv_column_table.
    data: gr_sorts type ref to cl_salv_sorts.
    data: gr_agg type ref to cl_salv_aggregations.
    data: gr_filter type ref to cl_salv_filters.

    data: color type lvc_s_colo.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      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 ).
      gr_sorts = gr_table->get_sorts( ).
    *  gr_sorts->ADD_SORT( 'CITYTO' ).
      gr_sorts->add_sort( columnname = 'CITYTO' subtotal = abap_true ).
      gr_agg = gr_table->get_aggregations( ).
      gr_agg->add_aggregation( 'DISTANCE' ).
      gr_filter = gr_table->get_filters( ).
      gr_filter->add_filter( columnname = 'CARRID' low = 'LH' ).
      gr_table->display( ).

    8、使用CL_SALV_LAYOUT(注意添加的红色代码),增加变式保存
    *&---------------------------------------------------------------------*
    *& Report  ZTEST4
    *&
    *&---------------------------------------------------------------------*
    *&
    *&
    *&---------------------------------------------------------------------*

    REPORT ZALVOM_DEMO1.
    data: ispfli type table of spfli.
    data: gr_table type ref to cl_salv_table.
    data: gr_functions type ref to cl_salv_functions.
    data: gr_display type ref to cl_salv_display_settings.
    data: gr_columns type ref to cl_salv_columns_table.
    data: gr_column type ref to cl_salv_column_table.
    data: gr_sorts type ref to cl_salv_sorts.
    data: gr_agg type ref to cl_salv_aggregations.
    data: gr_filter type ref to cl_salv_filters.
    data: gr_layout type ref to cl_salv_layout.

    data: key type salv_s_layout_key.
    data: color type lvc_s_colo.

    start-of-selection.
      select * into table ispfli from spfli.
      cl_salv_table=>factory( importing r_salv_table = gr_table changing t_table = ispfli ).
      gr_functions = gr_table->get_functions( ).
      gr_functions->set_all( abap_true ).
      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 heading' ).
      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 ).
      gr_sorts = gr_table->get_sorts( ).
    *  gr_sorts->ADD_SORT( 'CITYTO' ).
      gr_sorts->add_sort( columnname = 'CITYTO' subtotal = abap_true ).
      gr_agg = gr_table->get_aggregations( ).
      gr_agg->add_aggregation( 'DISTANCE' ).
      gr_filter = gr_table->get_filters( ).
      gr_filter->add_filter( columnname = 'CARRID' low = 'LH' ).
      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( ).
  • 相关阅读:
    js json与字符串相互转换
    Web 加入favicon
    JS 深拷贝
    C# 读取配置文件
    设计模式之抽象工厂模式
    设计模式之工厂方法的隐藏
    设计模式之工厂方法的重载
    设计模式之工厂方法配置文件与反射
    C#设计模式之工厂方法模式
    jq解析json文件
  • 原文地址:https://www.cnblogs.com/cnlmjer/p/4099845.html
Copyright © 2011-2022 走看看