ABAP--如何使用CL_SALV_TABLE 的代码样例(2004以后版本)

原创 2007年10月09日 15:03:00

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( ).

版权声明:本文为博主原创文章,未经博主允许不得转载。

SAP 自带程序(示例及功能), 持续更新...

经常会用到一些SAP自带的小程序, 无TCODE, 或者是示例啥的, 慢慢整理一下, 在这里备查.   1. SAPRDEMOWORD97INTEGRATION      调用Wor...
  • zeewjj
  • zeewjj
  • 2014年01月17日 03:31
  • 3502

ABAP 保存SAP系统中全部自开发程序的程序一个

*&---------------------------------------------------------------------* *& Report ZTEST1 *& *&----...
  • ot512csdn
  • ot512csdn
  • 2015年09月04日 16:06
  • 1624

批量下载ABAP程序和表结构

REPORT YGJH003 NO STANDARD PAGE HEADING LINE-SIZE 200 MESSAGE-ID WA. ****************************...
  • zhongguomao
  • zhongguomao
  • 2015年01月29日 10:10
  • 2087

运用类CL_SALV_TABLE实现alv

以前一直运用container的方式来显示alv,现在介绍一种不太常用的方法来显示alv,希望可以提供一种新的思路。但是一直没有找到怎样运用此方法在Toolbar上增加一个按钮,或者响应某些事件。 ...
  • zhongguomao
  • zhongguomao
  • 2012年06月20日 21:48
  • 929

ABAP 查看股票 SALV版本

执行界面:  ********************************************************************* *使用方法: *输入股票号码,获得新浪财经A...
  • kindsavage
  • kindsavage
  • 2017年11月12日 17:49
  • 22

ABAP--HR的工资计算样例代码

 ABAP--HR的工资计算样例代码 2007-12-14 17:06 77人阅读 评论(0) 收藏 举报 dateradiobuttonvalidationperform...
  • u012358094
  • u012358094
  • 2015年01月20日 20:20
  • 659

ABAP--HR的工资计算样例代码

*********************************************************************** * Database Tables ********...
  • fengyan5022
  • fengyan5022
  • 2011年11月08日 08:39
  • 426

ABAP--一个读取EXCEL单元格的内容超过256个字符的代码样例

我们在sap上限初期经常会将EXCEL数据倒入到SAP,sap也为此封装了许多的函数,但是这些函数都有单元文本长度限制。具体介绍如下: 1、 'TEXT_CONVERT_XLS_TO_SAP'单...
  • xx4565715
  • xx4565715
  • 2015年01月16日 15:15
  • 202

ABAP SD--提取订单的定价过程的各类折扣的报表样例

REPORT z_sales_discount. TYPES: BEGIN OF s_all,   vkorg TYPE vkorg,              "sales organi...
  • georgesze
  • georgesze
  • 2014年04月30日 16:26
  • 483

windows简易版本 Redis 使用 demo样例(ssm框架下)

1. 在网上下载 windows 版本 的Redis  。下载了直接解压出来 : 2. 双击 redis-server.exe 启动服务(如下图),使用中就一直不要关闭这个窗...
  • u011314442
  • u011314442
  • 2017年02月22日 14:58
  • 357
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ABAP--如何使用CL_SALV_TABLE 的代码样例(2004以后版本)
举报原因:
原因补充:

(最多只允许输入30个字)