欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    初学ABAP的一点教程3.docx

    • 资源ID:12767953       资源大小:21.27KB        全文页数:11页
    • 资源格式: DOCX        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    初学ABAP的一点教程3.docx

    1、初学ABAP的一点教程3初学ABAP的一点教程(3)2009年02月18日 星期三 10:115. DATABASE CURSOR Database Cursor是一个资料库暂存区, 将经SELECT指令读取的记录存放至此暂存区, 再由此暂存区放至Work Area中, 可减少资料库读取的次数.1.开启 Database Cursor语法: OPEN CURSOR FOR SELECT WHERE Example: TABLES SPFLI. DATA: WA LIKE SPFLI, C1 TYPE CURSOR. OPEN CURSOR C1 FOR SELECT * FROM SPFLI

    2、WHERE AREA =TAIWAN.2.读取 Database Cursor的资料存入 Work Area语法: FETCH NEXT CURSOR INTO Example: FETCH NEXT CURSOR C1 INTO WA.读取下一笔Cursor位置的资料存入WA, 如果已无资料可读, SY-SUBRC 0. 关闭 Database Cursor语法: CLOSE CURSOR Example: CLOSE CURSOR C1.*-*COMMIT WORK & ROLLBACK WORK要确定资料成功写入资料库,可使用COMMIT WORK指令,如: COMMIT WORK.相反

    3、的,如果反悔要复原,可使用 ROLLBACK WORK, 可复原在上个COMMIT WORK指令之后的资料, 如: ROLLBACK WORK.*-*使用NATIVE SQL指令语法格式:EXEC SQL PERFORMING . ENDEXEC.举例一.EXEC SQL.CREATE TABLE AVERI_CLNT ( CLIENT CHAR(3) NOT NULL, ARG1 CHAR(3) NOT NULL, ARG2 CHAR(3) NOT NULL, FUNCTION CHAR(10) NOT NULL, PRIMARY KEY (CLIENT, ARG1, ARG2) )ENDE

    4、XEC.爱ERP网 举例二.DATA: F1(3), F2(3), F3(3).F3 = 1 EXEC SQL.SELECT CLIENT, ARG1 INTO :F1, :F2 FROM AVERI_CLNT WHERE ARG2 = :F3ENDEXECPERFORMING 的使用:如果NATIVE SQL的SELECT命令执行结果是抓到多笔记录,我们想要逐笔记录处理时,就用PERFORMING 参数,这个FORM能被逐次调用。如果想中止调用,就用EXIT FORM SQL结束调用。例如:DATA: F1(3), F2(3), F3(3).F3 = 010EXEC SQL PERFORMI

    5、NG WRITE_AVERI_CLNT.SELECT CLIENT, ARG1 INTO :F1, :F2 FROM AVERI_CLNT WHERE ARG2 = :F3ENDEXEC.FORM WRITE_AVERI_CLNT.WRITE: / F1, F2.ENDFORM. DATA: BEGIN OF WA, NAME(8), AGE TYPE I, END OF WA. DATA F1 TYPE I. FI = 20. EXEC SQL PERFORMING OUTPUT. SELECT NAME,AGE INTO :WA FROM NAME_TABLE WHERE AGE >

    6、= :F1. ENDEXEC. FORM OUTPUT. WRITE: / WA-NAME,WA-AGE. ENDFORM.注意:a. NATIVE SQL把TABLE中的MANDT(client)栏位当作一般栏位使用,所以在抓取资料时必须指定特定的Client;b. NATIVE SQL中的SELECT语句没有CHECK权限的功能;c. 在登入SAP R/3系统时,我们已经自动与Database连接,所以在执行NATIVE SQL时并不需要CONNECT语句;d. 一条NATIVE SQL语句可以以分号;结束,一般情况下是以句号.结束.e. 某些数据库系统对TABLE名字和FIELD名字有大

    7、小写区别,要正确书写.f. 在NATIVE SQL中,双引号不表示注释.*-*结果语句条件述叙 1. IF 述叙语法: IF . ELSEIF . ELSEIF . . ELSE. ENDIF. (1).在每个判断关键字之后要加上 . (2).在巢状循环之中无法使用 ELSE 关键字, ELSE 关键字属 IF 关键字 Example: IF 3 > 8. WRITE / 3 is less than 8. ENDIF. 2. CASE 关键字语法: CASE . WHEN . WHEN . . WHEN OTHERS. ENDCASE. Example: S = A. CASE S.

    8、WHEN X. WRITE / String is X. WHEN OTHERS. WRITE / String is not X. ENDCASE.循环关键字1.计次循环语法: DO n TIMES VARYING FROM TO . ENDDO. Example: DO 2 TIMES. WRITE / X. ENDDO. 执行结果: X X DO VARYING I FROM1 TO 10. S = S + I. ENDDO. WRITE: / ,1+2+3+10=,S 执行结果: 1+2+3+10=552.条件循环语法: WHILE . ENDWHILE Example: I = 1.

    9、 S=0. WHILE I CHECK 之后条件成立才继续往下执行循环Example: DO 5 TIMES. CHECK SY-INDEX BETWEEN 2 AND 4. WRITE / SY-INDEX. ENDDO. 执行结果: 2 3 43. EXIT跳离循环关键字Example: DO 10 TIMES. IF SY-INDEX = 4. EXIT. ENDIF WRITE / SY-INDEX. ENDDO. 执行结果: 1 2 3无穷循环 DO . ENDDO. 无穷循环必须配合 EXIT 关键字来执行*-*搜索字符串要搜索特定模式的字符串,请使用 SEARCH 语句,用法如下

    10、:语法SEARCH FOR .该语句在字段 中搜索 中的字符串。如果成功,则将 SY-SUBRC 的返回代码值设置为0并将 SY-FDPOS 设置为字段 中该字符串的偏移量。否则将 SY-SUBRC 设置为4。搜索串 可为下列格 之一: 目 的 搜索 ( 任何字符顺序)。忽略尾部空格。. 搜索 ,但是不忽略尾部空格 。* 搜索以 结尾的词。* 搜索以 开始的词。单词之间用空格、逗号、句号、分号、冒号、问号、叹号、括号、斜杠、加号和等号等分隔 。DATA STRING(30) VALUE This is a little sentence.WRITE: / Searched, SY-SUBRC,

    11、 SY-FDPOS.ULINE /1(26).SEARCH STRING FOR X.WRITE: / X, SY-SUBRC UNDER SY-SUBRC, SY-FDPOS UNDER SY-FDPOS SEARCH STRING FOR itt .WRITE: / itt , SY-SUBRC UNDER SY-SUBRC, SY-FDPOS UNDER SY-FDPOS SEARCH STRING FOR .e .WRITE: / .e ., SY-SUBRC UNDER SY-SUBRC, SY-FDPOS UNDER SY-FDPOS.SEARCH STRING FOR *e.WR

    12、ITE: / *e , SY-SUBRC UNDER SY-SUBRC, SY-FDPOS UNDER SY-FDPOS.SEARCH STRING FOR s*.WRITE: / s* , SY-SUBRC UNDER SY-SUBRC, SY-FDPOS UNDER SY-FDPOS.该过程的输 出如下:SEARCHED SY-SUBRC SY-FDPOSX 4 0itt 0 11.e . 0 15*e 0 10s* 0 17搜索字符字段 的各种选项 ()如下 ABBREVIATED在字段 中搜索包含 中指定字符串的单词, 其中字符可能被其它字符隔开。单词和字符串的第一个字母必须相同 。

    13、STARTING AT 在字段 中搜索从 开始的 。结果 SY-FDPOS 参照相对于 的偏移量而不是字段的开始。 ENDING AT 在字段 搜索 直到位置 。 AND MARK如果找到搜索串,则将搜索串中的所有字符(和使用 ABBREVIATED 时的所有字符)转换为大写形式。DATA: STRING(30) VALUE This is a fast first example., POS TYPE I, OFF TYPE I.WRITE / STRING.SEARCH STRING FOR ft ABBREVIATED.WRITE: / SY-FDPOS:, SY-FDPOS.POS =

    14、 SY-FDPOS + 2.SEARCH STRING FOR ft ABBREVIATED STARTING AT POS AND MARK.WRITE / STRING.WRITE: / SY-FDPOS:, SY-FDPOS.OFF = POS + SY-FDPOS -1.WRITE: / Off:, OFF.该过程的输 出如下:This is a fast first example.SY-FDPOS: 10This is a fast FIRST example.SY-FDPOS: 4Off: 15请注意,在找到单词 fast 之后,为了查找包含 ft的第二个单词,必须在偏移量 SY

    15、-FDPOS 上加2,然后从位置 POS 开始查找。否则,会再次找到单词 fast。要获得 first 相对于字段 STRING 开始的偏移量,从 POS 和 SY-FDPOS 计算。获得字符串长度要决定字符串到最后一个字符而不是 SPACE 的长度,请使用内部函数 STRLEN,用法如下:语法COMPUTE = STRLEN( ).STRLEN 将操作数 作为字符数据类型处理,而不考虑其实际类型。不进行转换。关键字 COMPUTE 可选。有关内部函数的详细信息,参见使用数学函数(页 49) 。DATA: INT TYPE I, WORD1(20) VALUE 12345. WORD2(20)

    16、. WORD3(20) VALUE 4 . INT = STRLEN( WORD1 ). WRITE INT.INT = STRLEN( WORD2 ). WRITE / INT.INT = STRLEN( WORD3 ). WRITE / INT.结果分别是 5,0 和 4。*-*Standard Report 一个典型的报表程序是由许多的程序区块(Code Block)所组成,在区块间最好能加上一些说明以利程序可读性,一个典型的报表程序格式如下:* PROGRAM SOURCE HEADER : 说明程序名称及目的* Program Name: * Description:* Date/A

    17、uthor: * Table Update:* Special Logic:* Include:*-* MODIFICATION LOG : 程序修改更新记录 *-* ChangeDate Programmer Request Description*-* NEW PROGRAM*-* REPORT NAME : 声明程序名称及报表格式, *-*REPORT Z_ NO STANDARD PAGE HEADING MESSAGE-ID _ 所使用的MESSAGE LINE-COUNT _ 每页报表列数 LINE-SIZE _. 每页报表宽度* TABLE DESCRIPTION : 声明程序会使用的TABLE*-*TABLES: * DATA : 声明程序所使用的变量及自定型态*-*TYPES:DATA: * SELECTION SCREEN / OPTION / PARAMETER : 屏幕输入报表筛选条件*-*SELECTION-SCREEN BEGIN OF BLOCK _ SELECT-OPTIONS: SELECTION-SCREEN END OF BLOCK _* INITIALIZATION : 启动程序开始执行, 如SELECT-OPTION及PARAMETER*-*INITIALIZATION.INCLUDE _.* AT START SELECTION :


    注意事项

    本文(初学ABAP的一点教程3.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开