ABAP概要小结

1,ABAP源代码结构包括数据定义和处理块两部分,处理块分为三个部分(事件块,对话模块,过程)事件块和对话模块是ABAP程序外部调用,过程是通过程序语句内部调用。

2,应用程序类型:

         <1>,可执行程序:常常用于创建通常意义上的报表,由report关键字引导,还可以通过submit语句或者分配报表事务代码来运行。可包含所有类型的ABAP处理块,但不能在其中定义功能模块(但是可以调用)。

         <2>,模块池:一般包含程序自身定义的屏幕和对话模块,由Program关键字引导

3,语句结构:

         <1>,声明语句: 用于数据元素(如常量和变量)的声明和定义,常用的数据声明词有types,data,parameter和tables等

         <2>,模块化语句:用于定义ABAP程序运行时内的处理代码块,可分为事件关键字语句和过程关键字定义语句

         <3>,控制语句:通过某种条件控制程序处理快内部的程序流程例如if,while和case等

         <4>,调用语句:用于调用已定义好的处理块,常用语句有perform,call,submit和leave to等

         <5>,操作语句:用于程序内部数据操作或输出,例如write,move,add等关键字,操作语句的关键字和选项有时可以用数据运算符取代,如赋值运算符“=”,此时运算符本身就相当于语句关键词

         <6>,数据库语句:用于数据库操作,分为open SQL和native SQL

4,程序运行:

         <1>,程序调用:直接运行和内部调用(一个正在运行的程序中调用另一个程序),内部调用另一个可执行程序主要是通过submit语句进行,通过事务代码调用程序leave to transaction或者call transaction

         内部调用会出现两种情况:

                   1,控制权完全交给被调用程序,程序执行结束后,不再返回原来的程序

                   2,嵌入式调用,程序结束后返回原程序

         无返回调用:submit(报表调用),leave totransaction(事务调用)

返回并调用:submit andreturn(报表调用),call transaction(事务调用)

         <2>,结束程序:当系统运行时环境完成所有的处理过程之后,程序运行过程结束。可以使用leave语句在任意点强制结束当前运行的程序。

5,ABAP内存:

         可以通过export tomemory和import from memory在该内存程序堆栈之间进行数据传递,如果一个程序内部调用另一个程序,可以先使用export将数据存入内存,在被调用程序中通过import语句读取该程序,退出被调用的程序也可以使用同样的方式将数据传回主程序。

6,SAP内存:

         SAP内存是所有会话都可以访问的内存区域,数据可以通过SAP内存在各个会话之间共享。在ABAP中set parameter和get parameter 用于访问SAP内存中所存储的SPA/GPA参数。可以通过SAP内存进行屏幕默认参数设定。

猜你喜欢

转载自blog.csdn.net/LittleMangoYX/article/details/80052013