Chinaunix首页 | 论坛 | 博客
  • 博客访问: 360727
  • 博文数量: 68
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 690
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-06 22:35
文章分类

全部博文(68)

文章存档

2013年(1)

2012年(1)

2011年(4)

2010年(62)

我的朋友

分类: WINDOWS

2010-06-16 00:35:19

 

1)先自定义一个结构ST_SCARR, [Page]
2)以结构ST_SCARR定义一个工作区WA_SCARR,
3)用”LIKE TABLE OF”从工作区WA_SCARR定义一个内表IT_SCARR.
4)用SELELT语句从数据库表SCARR中读取数据.
5)用”CORRESPONDING FIELDS OF TABLE ”给内表IT_SCARR字段进行同名输值.
6)用”LOOP AT…TO…”把内表中的数据逐条传给工作区,最后对工作区的数据进行输出.
TYPES: BEGIN OF ST_SCARR,
       CARRID TYPE SCARR-CARRID,
       CARRNAME TYPE SCARR-CARRNAME,
       CURRCODE TYPE SCARR-CURRCODE,
       URL TYPE SCARR-URL,
       END OF ST_SCARR.
DATA: WA_SCARR TYPE ST_SCARR,
      IT_SCARR LIKE TABLE OF WA_SCARR.
SELECT CARRID CARRNAME CURRCODE URL
        FROM SCARR
        INTO CORRESPONDING FIELDS OF TABLE IT_SCARR.
LOOP AT IT_SCARR INTO WA_SCARR.
   WRITE: /1(3) WA_SCARR-CARRID,
           5(20) WA_SCARR-CARRNAME,
           26(5) WA_SCARR-CURRCODE,
           32(30) WA_SCARR-URL.
ENDLOOP.


1.TYPES与DATA区别:TYPES是用来自定义某种类(型)的,需(用DATA语句)实例化以后才可以使用,而DATA是用来声明基本类型数据对象(实例变量)的,对于用DATA直接定义的结构体对象(不参照其它结构类型).

参照自定义类型生成新数据语法格式如下:

TYPES | DATA 。。。TYPE 1_type 。。。''1_type代表程序内部类型

参照程序中已经声明的数据对象生成新数据语法格式如下:

TYPES | DATA 。。。LIKE dobj 。。。。。''dobj代表数据对象

2.TYPE与LIKE区别:TYPE后面跟随的只能是某种类(型),而LIKE后面可以跟实例对象,参照结构体对象生成内表时只能用LIKE,不能用TYPE,因为结构体对象不是类型,只是一种实例对象,参照结构类型生成内表时可以用LIKE也可以用TYPE.其中通过LIKE定义的内表直接拥有参照结构类型的元素结构,而通过TYPE定义的内表只能间接拥有被参照结构类型的元素结构,结构类型不能作为内表的工作区,只有结构体对象才可以.
阅读(1647) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~