- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SAPABAP开发基础自写留用.
学习顺序
数据类型
域什么什么的
字符串
结构
内表
OpenSQL
函数
子程序
报表
一、T-CODE
SE80 对象浏览器
SE38 写程序
SE11 建表
SE37 函数
SM04 查看用户
SE91 message
系统
sy-uzeit 系统时间
sy-datum 系统日期
sy-datum是2010.10.10
sy-datum+0(2)是20
sy-datum+2(3)是101
PS a-comun+29(11).这也是偏移的操作
sy-subrc 正常是0,不正常是0或其他
二、数据类型
完整型
d 日期 8字节 YYYYMMDD
t 时间 6字节
i 整型
f 浮点型
string 可变长的字符型非完整型
非完整型
c 字符型 (若不指定长度默认是1个字节)
n 数字字符型
p 小数(常用)(压缩数 装载它的空间是(x+1)/2 x是原来装载它的长度)
data v1(5) type p decimals 2 value 123.45.
三、各种定义
基本格式
DATA:XX TYPE YY VALUE'ZZ'
各种来了
*参照数据字典定义
*参照数据元素定义
data v9 type zdata_jg01.
*参照数据库表的字段定义
data v10 type scarr-carrid.
*定义常量
CONSTANTS c1 TYPE i VALUE 1.
*定义单值选侧屏幕
PARAMETERS p1(8) TYPE n default AA.
*参照自定义类型定义变量
TYPES t1(10) TYPE c.
DATA v9 TYPE t1.
*参照自定义变量定义变量
DATA v10 LIKE v9.
*参照数据字典中的TYPE GROUP定义数据类型
TYPE-POOLS zjg01 .
data v20 type zjg01_z1.
定义结构
DATA : BEGIN OF wa,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
cityfrom TYPE spfli-cityfrom,
cityto TYPE spfli-cityto,
distance TYPE spfli-distance,
distid TYPE string,
END OF wa.
根据结构定义内表
DATA itab LIKE TABLE OF wa.
流程控制-IF…ELSE
IF a 12.
WRITE : 他比12大.
ELSE.
WRITE : 他比12小.
ENDIF.
循环
DO 10 TIMES.
WRITE: / 这是第,ie,次.
ie = ie + 1.
ENDDO.
把内表循环到结构中
LOOP AT itab INTO wa.
WRITE : / wa-id.
ENDLOOP.
内表各种操作-collect
在内表中一定有一个数值型的字段,而且其他字段均为字符型
把数值型字段上的数加起来
DATA : BEGIN OF wa,
a(4) TYPE c,
b(4) TYPE c,
c TYPE i,
END OF wa.
DATA itab LIKE TABLE OF wa.
wa-a = 001.
wa-b = 0101.
wa-c = 100.
*APPEND wa TO itab.
COLLECT wa INTO itab.
wa-a = 002.
wa-b = 0201.
wa-c = 200.
*APPEND wa TO itab.
COLLECT wa INTO itab.
wa-a = 002.
wa-b = 0201.
wa-c = 100.
*APPEND wa TO itab.
COLLECT wa INTO itab.
LOOP AT itab INTO wa.
WRITE : / wa-a,
wa-b,
wa-c.
ENDLOOP.
内表各种操作-read
LOOP AT itab1 INTO wa.
READ TABLE itab2 INTO wa1 WITH KEY carrid = wa-carrid.
IF sy-subrc 0.
clear wa1.
move-corresponding wa to wa1.
append wa1 to itab2.
ENDIF.
ENDLOOP.
根据结
文档评论(0)