Chinaunix首页 | 论坛 | 博客
  • 博客访问: 939978
  • 博文数量: 463
  • 博客积分: 10070
  • 博客等级: 上将
  • 技术积分: 4963
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-16 14:16
文章分类

全部博文(463)

文章存档

2011年(18)

2010年(144)

2009年(83)

2008年(218)

我的朋友

分类: IT职场

2008-07-22 16:07:32

   Table Control作为一个表维护的标准工具,在屏幕程序中经常使用。它的特点就是简单,实现速度快。缺点就是不够灵活。
   我个人更喜欢用ALV grid,由于基于OO,ALV grid绘制图形表格,更加灵活,功能更加强大(大家从标准的ALV grid中自带了那么多功能键就知道了)。但是往往强大的工具,实现起来就相对就比较复杂。
   所以对于需求比较简单的功能,诸如从一些外部文件导入数据,然后在维护表中稍加修改和检查,再自动生成单据的需求,就可以用Table Control。对于一些,需要复杂事件触发的程序,ALV grid更加适用。
   Table Control有自动和人工两种生成方法。使用的时候要视具体境况而定。我的例子中,是在自动生成的程序中,做了一下修改,使之为我所用。(能复用的代码为什么不用呢?)
屏幕流: 

PROCESS BEFORE OUTPUT.
*&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'ZTC'
  
MODULE ZTC_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE ZTC_CHANGE_COL_ATTR.
  
LOOP AT   GT_ZKEVIN
       
INTO GS_ZKEVIN
       
WITH CONTROL ZTC
       
CURSOR ZTC-CURRENT_LINE.
    
MODULE ZTC_GET_LINES.
*&SPWIZARD:   MODULE ZTC_CHANGE_FIELD_ATTR
  
ENDLOOP.

 
MODULE STATUS_1000.
*
PROCESS AFTER 
INPUT.
*&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'ZTC'
  
LOOP AT GT_ZKEVIN.
    CHAIN.
      
FIELD GS_ZKEVIN-ID.
      
FIELD GS_ZKEVIN-NAME.
      
MODULE ZTC_MODIFY ON CHAIN-REQUEST.
    endchain.
    
FIELD GS_ZKEVIN-LINE
      
MODULE ZTC_MARK ON REQUEST.
  
ENDLOOP.
  
MODULE ZTC_USER_COMMAND.
*&SPWIZARD: MODULE ZTC_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE ZTC_CHANGE_COL_ATTR.

 
MODULE USER_COMMAND_1000.

阅读(2336) | 评论(2) | 转发(0) |
0

上一篇:软件测试随想

下一篇:Table Control代码实现

给主人留下些什么吧!~~

zcywset152008-07-23 14:53:40

Table Control要用在screen上加控件的,简单的copy是跑不了的。博客上不易放图,所以没有screen的画法,不过这个case我是用wizard的,你可以试一下。 zkevin 表的结构,ID是主键。 ID CHAR 4 NAME CHAR 10

chinaunix网友2008-07-23 14:14:37

程序copy直接跑不了,推荐用非Z表做模板,容易移植。 Steven