ABAP 使用向导创建TABLE CONTROL (TC 表控件)

来源:互联网 发布:淘宝怎么免物流发货 编辑:程序博客网 时间:2024/06/05 15:48

使用向导创建TC,主要有以下步骤,

1.定义你要在TC上显示的列为一个数据结构,并用该结构定义内表和工作区。在创建TC前一定要激活程序,这样TC才能获得定义的内表和工作区。

2.创建屏幕,转到格式布局,添加“表控件(含向导)”,之后按弹出的向导完成TC的创建。

3.在生成的屏幕里->逻辑流,PROCESS BEFORE OUTPUT(PBO).下面定义屏幕显示前的module,如MODULE STATUS_9000(9000是自己定义的屏幕号,下同)用来显示自己的status。在PROCESS AFTER INPUT(PAI)下面定义自己按钮响应的module,如 MODULE USER_COMMAND_9000。


有几个要注意的点。

1.如要有选择按钮,则要在数据结构那里定义一个CHAR字段来标识。选择按钮可以在向导里实现,也可后面自己添加选择框,样式可能不一样。

2.如果程序先有选择屏幕,那么得在START-OF-SELECTION.下面call screen 9000.

3.用向导做好tc后,会在程序里自动生成一些代码,这些代码以“&SPWIZARD:”开头。主要是它自己的一些处理,如下一页,全选等按钮的响应,这些代码不要动。

 4.TC做好后,还是得自己添加一些MODULE,如PBO,PAI等,为了程序结构清晰,可以将PBO,PAI,以及用到的FUNCION都单独拿出来放到几个INCLUDE里面。


下面给出一些步骤及说明。

1.数据结构,内表及工作区定义

*&---------------------------------------------------------------------**&数据类型声明*&---------------------------------------------------------------------*TYPES: BEGIN OF ty_data,  ZXH2 TYPE ZYHY_TABLE01-ZXH2,  ZXM2 TYPE ZYHY_TABLE01-ZXM2,  ZXB2 TYPE ZYHY_TABLE01-ZXB2,  ZNL2 TYPE ZYHY_TABLE01-ZNL2,  sel  TYPE C, "选择框  END OF ty_data.*&---------------------------------------------------------------------**&内表和工作区声明*&---------------------------------------------------------------------*DATA: it_data TYPE TABLE OF ty_data,      it_temp TYPE TABLE OF ty_data.DATA: wa_data TYPE ty_data.


2.下面是TC过程的一些截图

  表控制名称,如定义为ztc2,那么后面一些关于该控件的,系统自动生成的代码一般会以ztc为开头



这就是为什么在这步之前一定要激活程序


这里不需要选择SEL字段(用于选择),后面会有设置


“选择列字段” 填sel,就是用来标识选择的一个字段。“单个”就是只能单选,“多重”就是能多选。


这里就是选择一些附加按钮,如全选,取消全选等。


在这里就可以定义PAI,PBO等模块放在单独的include文件里,在下图中我都放在一个程序里了。



向导介绍后:



最后在选择屏幕定义的代码下面添加取数代码即可:

START-OF-SELECTION.  SELECT *  INTO CORRESPONDING FIELDS OF TABLE it_data  FROM ZYHY_TABLE01.  CALL SCREEN 9000.

  运行输入选择条件后:



0 0