ALV GRID(1) 例子

ALV GRID 应该是最常用的显示方式了,下面我举一个例子:查询物料描述及物料组

 1 REPORT  ZTEST01.
 2
 3 tables:mara,makt.
 4
 5 type-pools:slis.
 6
 7 types:begin of typ_mara,
 8   matnr type mara-matnr,
 9   maktx type makt-maktx,
10   matkl type mara-matkl,
11   end of typ_mara.
12 data:gt_mara type standard table of typ_mara.
13
14 select-options:s_matnr for mara-matnr.
15
16 start-of-selection.
17   perform sub_get_data.
18   perform sub_alv_data.
19
20 *&---------------------------------------------------------------------*
21 *&      Form  sub_get_data
22 *&---------------------------------------------------------------------*
23 *       text
24 *----------------------------------------------------------------------*
25 form sub_get_data.
26   select mara~matnr makt~maktx mara~matkl
27     into corresponding fields of table gt_mara
28     from mara
29     left join makt
30     on mara~matnr = makt~matnr and makt~spras = sy-langu
31     where mara~matnr in s_matnr.
32 endform.                    "sub_get_data
33
34 *&---------------------------------------------------------------------*
35 *&      Form  sub_alv_data
36 *&---------------------------------------------------------------------*
37 *       text
38 *----------------------------------------------------------------------*
39 form sub_alv_data.
40
41   data: ltd_cat type standard table of slis_fieldcat_alv,
42         lth_cat type slis_fieldcat_alv.
43
44   data: ls_lay type slis_layout_alv.  "alv布局
45   ls_lay-colwidth_optimize = ‘X‘.
46
47   lth_cat-fieldname = ‘MATNR‘.
48   lth_cat-seltext_s = ‘物料编码‘.
49   append lth_cat to ltd_cat.
50   clear lth_cat.
51   lth_cat-fieldname = ‘MAKTX‘.
52   lth_cat-seltext_s = ‘描述‘.
53   append lth_cat to ltd_cat.
54   clear lth_cat.
55   lth_cat-fieldname = ‘MATKL‘.
56   lth_cat-seltext_s = ‘物料组‘.
57   append lth_cat to ltd_cat.
58   clear lth_cat.
59
60   call function ‘REUSE_ALV_GRID_DISPLAY‘
61     EXPORTING
62       i_callback_program      = sy-repid
63       i_grid_title            = ‘批量查询‘
64       i_callback_user_command = ‘USER_COMMAND‘
65       is_layout               = ls_lay  "gth_lay
66       it_fieldcat             = ltd_cat
67       i_save                  = ‘A‘
68     TABLES
69       t_outtab                = gt_mara.
70
71 endform.                    "sub_alv_data
72
73
74 *&---------------------------------------------------------------------*
75 *&      Form  sub_command
76 *&---------------------------------------------------------------------*
77 *       text
78 *----------------------------------------------------------------------*
79 *      -->I_UCOMM    text
80 *      -->I_SELFIELD text
81 *----------------------------------------------------------------------*
82 form USER_command using i_ucomm like sy-ucomm
83                          i_selfield type slis_selfield.
84
85   if i_ucomm = ‘&IC1‘.
86     case i_selfield-fieldname.
87       when ‘MATNR‘.
88         set parameter id ‘MAT‘ field I_selfield-value.
89         call transaction ‘MM03‘ and skip first screen.
90     endcase.
91   endif.
92
93 endform.                    "user_command
时间: 2024-11-07 15:36:20

ALV GRID(1) 例子的相关文章

程序间获取ALV显示数据(读取ALV GRID上的数据)

程序间获取ALV数据的两种方法: 方法1:通过修改SUBMIT的目标程序,把内表EXPORT到内存,SUBMIT后IMPORT ,该方法需要修改目标程序,可以任意设置目标程序的中断点: * Execute transaction IA09 to get all Functional Location Tasklists SUBMIT riplko10 WITH SELECTION-TABLE lt_selscreen WITH pn_iflo = abap_true "Select Func L

OO方式下,ALV TREE和ALV GRID的不同之处

ALV TREE和ALV GRID的实现整体上是相似的,但也有一些不同之处,现总结如下 首先定义概念:文中的ALV GRID指的是由OO方式建立的.由类cl_gui_alv_grid实例化后产生的ALV GRID,而ALV TREE指的是由类cl_gui_alv_tree实例化后产生的ALV TREE 1,输出内容的构建方式 ALV GRID的输出数据是通过直接将查询结果内表作为参数传递到ALV GRID对象的 set_table_for_first_display方法而显示的.   在ALV

ALV GRID(2) 详解3 颜色

ALV GRID颜色设置方式分为三种,行.列.单元格 零.颜色 颜色字段为char4类型 一.行 1.首先在显示的内表中定义颜色字段,类型为c(4),如 color(4) type c 2.ALV布局种指定颜色字段 data: ls_lay type slis_layout_alv. "alv布局 ls_lay-info_fieldname = 'COLOR'. 二.列 设置FIELDCAT就可以了,例如 DATA:lth_cat type slis_fieldcat_alv, ltd_cat

ABAP_ALV_Function方式与OO方式(较为简单、普通的ALV)

目录 一.ALV简介 1.简介 2.ALV_GRID介绍 3.其它描述 二.开发ALV的基本流程 三.ALV相关开发细节 1.标准ALV与对象ALV的共同开发细节 2.标准ALV开发相关细节 3.对象ALV开发相关细节 四.注意事项 五.附属信息 1.ALV快捷工具栏功能说明(如下图) 2.类型SLIS_FIELDCAT_ALV常用参数说明 3.类型SLIS_T_SORTINFO_ALV常用参数说明 4.类型SLIS_LAYOUT_ALV常用参数说明 5.类型SLIS_T_EVENT常用参数说明

[ABAP技术总结]ALV

目录导航 声明:原创作品,转载时请注明文章来自SAP师太博客,并以超链接形式标明文章原始出处,否则将追究法律责任!原文出自: 7.      ALV. 70 7.1.           Layout重要字段... 70 7.2.           FIELDCATALOG重要字段... 70 7.3.           指定双击触发的FunCode. 71 7.4.           相关函数... 71 7.5.           重要参数接口... 71 7.6.         

ALV行 列颜色设置

ALV的颜色设置分为3种:行.列.单元格. 1.列颜色的设置 在 slis_t_fieldcat_alv-emphasize 中,写入需要的颜色代码. Eg: DATA: fc TYPE slis_t_fieldcat_alv WITH HEADER LINE. fc-tabname = 'ITAB'. fc-fieldname = 'COL'. fc-emphasize = 'C100'. append fc. 2.行颜色的设置 a.在要输出的 itab 中,加入 color 列,类型为C(4

ALV 中根据条件设置某个cell 是否可编辑

*&---------------------------------* *& Report  Z_TEST_ZS13 *& *&---------------------------------* *& *& *&---------------------------------* REPORT  Z_TEST_ZS13. *&---------------------------------* *& Report  ZDEMO_A

miniUI Grid添加汇总行,Grid绑定数据,IDEA免编译设置

坑1: 2017-6-5周二,上午解决了昨天摸索一下午的问题,使用miniui显示汇总行数据,要点有这么几个 在创建Grid div的时候一定要加上以下两个属性: //显示汇总行开关 showSummaryRow="true" //当grid数据改变会触发这个方法,内部我没填充汇总行上面的数据 ondrawsummarycell="onDrawSummaryCell" 在onDrawSummaryCell方法给某行填充数据(我的问题就出在这里) //昨天的问题就出在

ALV详解:OO ALV

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4291373.html OO ALV.. 79 EnjoySAP Controls and CFW... 79 LVC_S_FCAT. 84 LVC_S_LAYO.. 88 set_table_for_first_dispaly()方法参数.