ImageVerifierCode 换一换
格式:DOCX , 页数:51 ,大小:36.50KB ,
资源ID:92119      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-92119.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ABAP语法完整版.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

ABAP语法完整版.docx

1、ABAP语法完整版ABAP语法完整版SAP ABAP / 4 基础知识学习数据类型C :字符串D :日期型格式为 YYYYMMDD 例:1999/12/03F : 浮点数长度为8I :整数N :数值组成的字符串如:011,302P : PACKED数用于小数点数值 如:12.00542T : 时间格式为:HHMMSS 如:14:03:00X : 16进制数如:1A03*-*变量声明DATA decimals 变量名称 变量类型及长度 初值 小数位数exp: DATA : COUNTER TYPE P DECIMALS 3. NAME(10) TYPE C VALUE DELTA. S_DATE

2、 TYPE D VALUE 19991203.exp: DATA : BEGIN OF PERSON, NAME(10) TYPE C, AGE TYPE I, WEIGHT TYPE DECIMALS 2, END OF PERSON.另外,有关DATA声明的指令还有: CONSTANTS(声明常数)、STATICS(临时变量声明).exp:CONSTANTS PI TYPE P DECIMALS 5 VALUE 3.14159.STATICS 关键字声明的变量仅在目前的程序中使用, 结束后会自动释放语法: STATICS 系统专用变量说明 系统内部专门创建了SYST这个STRUCTURE,

3、里面的栏位存放系统变量,常用的系统变量有: SY-SUBRC: 系统执行某指令后,表示执行成功与否的变量,0表示成功 SY-UNAME: 当前使用者登入SAP的USERNAME; SY-DATUM: 当前系统日期; SY-UZEIT: 当前系统时间; SY-TCODE: 当前执行程序的Transaction code SY-INDEX: 当前LOOP循环过的次数 SY-TABIX: 当前处理的是internal table 的第几笔 SY-TMAXL: Internal table的总笔数 SY-SROWS: 屏幕总行数; SY-SCOLS: 屏幕总列数; SY-MANDT: CLIENT N

4、UMBER SY-VLINE: 画竖线 SY-ULINE: 画横线TYPE 关键字 用来指定资料型态或声明自定资料型态 Example: TYPES: BEGIN OF MYLIST, NAME(10) TYPE C, NUMBER TYPE I, END OF MYLIST. DATA LIST TYPE MYLIST.LIKE 关键字 跟TYPE关键字使用格式相同, 如 DATA TRANSCODE LIKE SY-TCODE. 不同的是 LIKE 用在已有值的资料项, 如系统变量, 而TYPE关键字则是用在指定资料型态。TABLES 关键字用来声明 Table Work Area 的数据

5、, 对应至 ABAP/4 资料文件(Dictionary Object), 由SQL 指令加载所需数据语法:TABLES Example:TABLES: SPFL.SELECT * FROM SPFL.WRITE: SPFL-MANDT, SPFL-CARRID,SPFL-CONNECTION.ENDSELECT.从ABAP/4 Dictionary 的 SPFL 档载入MANDT,CARRID,CONNECTION 三个字段至SPFL 此Table Work Area*-*输出一. WRITE 语句ABAP/4用来在屏幕上输出资料的指令是WRITE指令,例如: WRITE: USER NAM

6、E IS:, SY-UNAME.二. 指定屏幕输出位置指定输出位置的语句格式为: WRITE: AT / () 资料项 其中: / : 在下一行输出: 指定输出的行号;():指定输出位数(长度): 指定显示格式参数,参数有: LEFT-JUSTIFIED 资料*左对齐 CENTERED 资料*中间对齐 RIGHT-JUSTIFIED 资料*右对齐 UNDER 正对在资料项的下面显示 NO-GAP 紧接着显示,不留空格 USING EDIT MASK : 使用内嵌子元显示, 如 12:03:20 USING NO EDIT MASK: 不使用内嵌子元 NO-ZER 数字前面 0 的部分不显示 N

7、O-SIGN: 不显示正负号 DECIMALS : 显示位小数 EXPOENT : F(浮点数)指数的值 ROUND : 四舍五入至小数点后位 CURRENCY : 币别显示 DD/MM/YY : 日期显示格式 MM/DD/YY: YY/MM/DD: YY/DD/MM MM/DD/YYYY: DD/MM/YYYY YYYY/MM/DD: YYYY/DD/MM:例如1: WRITE: /10(6) ABCDEFGHIJK.输出结果为: ABCDEF例如2: DATA: X TYPE I VALUE 11:20:30, A(5) TYPE C VALUE AB CDE. WRITE: / X US

8、ING EDIT MASK _:_:_. WRITE: / X USING EDIT MASK $_,_. WRITE: / Y NO-GAP.输出结果为: 11:20:30 $112,030 ABCDEF例如3: DATA: LEN TYPE I VALUE 10, POS TYPE I VALUE 11, TEXT(10) VALUE 1234567890 WRITE The text - appears in the text. WRITE AT POS(LEN) TEXT.WRITE TO 语句的基本形式要将值(文字)或源字段内容写入目标字段,可以使用 WRITE TO 语句:语法WR

9、ITE TO .DATA: NUMBER TYPE F VALUE 4.3, TEXT(10), FLOAT TYPE F, PACK TYPE P DECIMALS 1.WRITE NUMBER.WRITE NUMBER TO TEXT EXPONENT 2.WRITE / TEXT.WRITE NUMBER TO FLOAT.WRITE / FLOAT.WRITE NUMBER TO PACK.WRITE / PACK.MOVE NUMBER TO PACK.WRITE / PACK.exp:DATA: NAME(10) VALUE SOURCE, SOURCE(10) VALUE Ant

10、ony, TARGET(10).WRITE (NAME) TO TARGET.WRITE: TARGET.exp :DATA: COUNTER TYPE I.COMPUTE COUNTER = COUNTER + 1.COUNTER = COUNTER + 1.ADD 1 TO COUNTER.在此,三条运算语句进行相同算术运算输出屏幕上的线和空行用下列语法,可以在输出屏幕上生成水平线:语法ULINE AT /().它等同于WRITE AT /() SY-ULINE.AT 后的格式规范,与在在屏幕上定位 WRITE 输出(页 28)中为 WRITE 语句说明的格式规范完全一样。如果没有格式规范

11、,系统则开始新的一行,并用水平线填充该行。否则,只按指定输出水平线。生成水平线的另一种方法,是在 WRITE 语句中键入恰当数量的连字符,如下所示:WRITE AT /() -.垂直线用下列语法,可以在输出屏幕上生成垂直线:语法WRITE AT / SY-VLINE.或WRITE AT / |.空行用下列语法,可以在输出屏幕上生成空行:语法SKIP .该语句从当前行开始,在输出屏幕上生成个空行。如果没有指定的值,就输出一个空行。要将输出定位在屏幕的指定行上,请使用:语法SKIP TO LINE .该语句允许将输出位置向上或向下移动。四. 显示图示:语法: WRITE: AS SYMBOL. W

12、RITE: AS ICON.例如: INCLUDE . INCLUDE .WRITE: / Phone symbol:, SYM_PHONE AS SYMBOL.WRITE: / Alarm Icon:, ICON_VOICE_OUTPUT AS ICON.要查看系统所提供有那些符号及图示,可选择EDIT下的Insert Statement,选择Write,接下来选择要查看的群组,如SYMBOL 或ICON, 接下来按Display即可.*-*一. Internal Table 的声明ABAP/4中的Internal Table是一种Data Structure,类似于其他语言中的STRUTU

13、RE,它可以由几个不同类型的栏位(field)组成,用来表示具有不同属性的某一事物,单独一笔资料表示某个事物,多笔资料表示具有相同属性的多个事物.Internal table 的定义有以下几种格式:格式一. DATA: BEGIN OF OCCURS , TYPE , TYPE , TYPE , END OF . 语法: DATA OCCURS WITH HEADER LINE Example: DATA VECTOR TYPE I OCCURS 10 WITH HEADER LINE.格式二. TYPES: BEGIN OF , TYPE , TYPE , TYPE , END OF . T

14、YPES TYPE OCCURS .格式三. DATA: BEGIN OF . INCLUDE STRUCTURE . DATA: END OF . DATA: LIKE OCCURS .exp:TYPES VECTOR TYPE I OCCURS 10.TYPES: BEGIN OF LINE, COLUMN1 TYPE I, COLUMN2 TYPE I, COLUMN3 TYPE I, END OF LINE.TYPES ITAB TYPE LINE OCCURS 10.TYPES: BEGIN OF DEEPLINE, TABLE1 TYPE VECTOR, TABLE2 TYPE I

15、TAB, END OF DEEPLINE.TYPES DEEPTABLE TYPE DEEPLINE OCCURS 10.本示例创建与上例相同的内表数据类型(VECTOR 和 ITAB)。然后创建数据类型 DEEPLINE 作为字段串,包含这些内表作为组件。通过该字段串,数据类型 DEEPTABLE 被创建为内表。因此该内表的元素本身就是内表。exp :TYPES: BEGIN OF LINE, COLUMN1 TYPE I, COLUMN2 TYPE I, COLUMN3 TYPE I, END OF LINE.TYPES ITAB TYPE LINE OCCURS 10.DATA TAB1

16、 TYPE ITAB.DATA TAB2 LIKE TAB1 WITH HEADER LINE.同创建内表数据类型(页 99)中所示,该示例创建数据类型 ITAB 作为内表。通过使用 DATA 语句的 TYPE 参数引用 ITAB,使数据对象 TAB1 与 ITAB 结构相同。通过使用 DATA 语句的 LIKE 参数引用 TAB1,使数据对象 TAB2 结构相同。创建的 TAB2 带表头行。因此,可以在程序中使用 TAB2-COLUMN1、TAB2-COLUMN2 和 TAB2-COLUMN3 等定位表格工作区域 TAB2。exp :DATA FLIGHT_TAB LIKE SFLIGHT

17、OCCURS 10.本示例创建数据对象 FLIGHT_TAB,其结构与数据库表格 SFLIGHT 相同。本示例介绍如何采用两种不同的步骤创建同一内表。TYPES VECTOR_TYPE TYPE I OCCURS 10.DATA VECTOR TYPE VECTOR_TYPE WITH HEADER LINE.在此创建一个内表数据类型 VECTOR_TYPE,其行包含首先创建的基本类型 I 字段。然后,通过引用 VECTOR_TYPE 创建数据对象 VECTOR。通过使用 WITH HEADER LINE 选项还创建表格工作区域 VECTOR。在这种情况下,表格工作区域包含一种类型 I 字段,

18、可以通过名称 VECTOR 定位。DATA VECTOR TYPE I OCCURS 10 WITH HEADER LINE.在这种情况下,通过直接在 DATA 语句中使用 OCCURS 选项创建完全一样的数据类型 VECTOR。*-*1. TYPES type.2. TYPES type(len).3. TYPES: BEGIN OF structype . END OF structype.4. TYPES itabtype TYPE tabkind OF linetype LIKE tabkind OF lineobj WITH UNIQUE|NON-UNIQUE keydef INIT

19、IAL SIZE n.5. TYPES itabtype TYPE RANGE OF type. TYPES itabtype LIKE RANGE OF f.6. TYPES itabtype TYPE linetype|LIKE lineobj OCCURS n.*-*APPEND LINE格式:APPEND TO 举例一:(使用WORK AREA)DATA : BEGIN OF LINE, COL1 TYPE I, COL2 TYPE I, END OF LINE.DATA ITAB LIKE LINE OCCURS 10.DO 2 TIMES. LINE-COL1 = SY-INDEX

20、. LINE-COL2 = SY-INDEX * 2. APPEND LINE TO ITAB.ENDDO.LOOP AT ITAB INTO LINE. WRITE : / LINE-COL1,LINE-COL2.ENDLOOP.举例二 (不使用WORK AREA)DATA : BEGIN OF ITAB OCCURS 10, COL1 TYPE I, COL2 TYPE I, END OF ITAB.DO 2 TIMES. ITAB-COL1 = SY-INDEX. ITAB-COL2 = SY-INDEX * 2. APPEND ITAB.ENDDO.LOOP AT ITAB. WRIT

21、E : / ITAB-COL1,ITAB-COL2.ENDLOOP.exp:DATA: BEGIN OF ITAB OCCURS 10, COL1 TYPE C, COL2 TYPE I, END OF ITAB.DO 3 TIMES. APPEND INITIAL LINE TO ITAB. ITAB-COL1 = SY-INDEX. ITAB-COL2 = SY-INDEX * 2. APPEND ITAB.ENDDO.LOOP AT ITAB. WRITE: / ITAB-COL1, ITAB-COL2.ENDLOOP.举例三. (加入另一个Internal table的元素) 格式:

22、APPEND LINES OF FROM TO TO . 将的元素加入至中,可选取自至的范围. APPEND LINES OF ITAB TO JTAB.COLLECT LINECOLLECT 指令也是将元素加入Internal table中,与APPEND 的区别是: COLLECT指令在非数值栏位相同的情况下,将数值栏位汇总.格式: COLLECT INTO DATA: BEGIN OF ITAB OCCURS 3, COL1(3) TYPE C, COL2 TYPE I, END OF ITAB. ITAB-COL1 = ABC. ITAB-COL2 = 10. COLLECT ITAB. ITAB-COL1 = XYZ. ITAB-COL2 = 20. COLLECT ITAB. ITAB-COL1 = ABC. ITAB-COL2 = 80. COLLECT ITAB.此时, internal table中放的是2笔数据, 分别为: ITAB-COL1 ITAB-COL2 ABC

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2