Chinaunix首页 | 论坛 | 博客
  • 博客访问: 133824
  • 博文数量: 12
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 132
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-27 15:31
文章分类

全部博文(12)

文章存档

2008年(12)

我的朋友

分类:

2008-05-04 14:12:01

1, 在ABAP开发中, 我们经常会删除内表中的重复行,这时我们会需要一个很方便的语句,就是"DELETE
ADJACENT DUPLICATES FROM", 但是在使用这个语句,要注意它删除相邻的重复行,我们一般要通过SORT
对这个语句进行排序,示例如下:
DATA: BEGIN OF wa_pa0001,
      pernr   LIKE pa0001-pernr,
      uname   LIKE pa0001-uname,
      bukrs   LIKE pa0001-bukrs,
      plans   LIKE pa0001-plans,
      END OF wa_pa0001.
DATA: itab_pa0001 LIKE TABLE OF wa_pa0001 WITH HEADER LINE.
SORT itab_pa0001 BY pernr.
DELETE ADJACENT DUPLICATES FROM itab_pa0001.
2, 在ABAP开发中,有时要进行一个耗费时间的处理,这时不想让客户感到处理出现问题或者以为是电脑
死机,给出一个提示,“请等待的...”,可以使用下面语句:
CALL FUNCATION 'SAPGUI_PROGRESS_INDICATOR'
 EXPORTING
    text = '数据处理中,请等待...'.
" 进行耗费时间处理
3, 在ABAP开发中,有时我们做的程序界面是不需要全部必选的,例如:
SELECTION-SCREEN BEGIN OF BLOCK blk WITH FRAME TITLE TEXT-001.
   PARAMETERS:    p_werks LIKE mseg-werks.     " 物料凭证-工厂
   PARAMETERS:    p_lgort LIKE mseg-lgort OBLIGATORY. " 物料凭证-库存地点
   SELECT-OPTION: s_mblnr FOR  mseg-mblnr.     " 物料凭证-编号
SELECTION-SCREEN END OF blk.
在选在屏幕中p_lgort 是必选;s_mblnr 是一个范围,在OPEN-SQL中可以使用IN查询范围, 若s_mblnr
没有数据时,取全部,有数据时取符合条件的数据;p_werks为一个数据值,在写SQL语句时,我们要根
据条件进行SQL拼加。在这我们可以通过SELECT-OPTION 做一个操作,通过如下语句
SELECT-OPTION: s_werks FOR mseg-werks NO-EXTENSION NO INTERVALS. 可以去掉SELECT-OPTION 的区间选项、后缀选项,但有个问题是不能去掉"=、<=、<、>、>="选择。
阅读(3856) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

qdbarry2008-05-09 16:20:52

去掉"=、<=、<、>、>="选择: http://blog.chinaunix.net/u1/40527/showart.php?id=444154