技术开发 频道

SAP学习笔记

    7.如何将事务代码分配给程序?

    可以将事务代码分配给类型为Executable program(1)的单独程序,以后就将程序作为事务代码处理。通过T—CODE(SE38)或者菜单(Tools->ABAP Workbench->Development->other Tools->Transactions就可以了。

    8.如何进行注释?

    可以在程序的任意处插入注释行。在程序中有两种方法表明注释:如果要将整行变为注释,则在行开始处输入星号(*)。如果要将某行一部分注释,则在注释之前输入双引号(")。系统将由双引号标明的注释解释为空格。

    9.预定义的数据类型有哪几种?

    C(文本和字符):文本文字最长可达254个字符。如果需要非整型数值或较长的数字(如:'12345678901234567890'、 '+0.58498'、'-8473.67'),则必须使用文本文字,该文本文字自动转换到正确的类型。同样,请使用文本文字表示浮点数值。 D:(日期): F(浮点数):对于正数和负数,类型F数值范围是1x10**-307到1x10**308,包括0(零)。精确范围近似为15位十进制数,这取决于硬件平台的浮点算法;由于是在内部将类型F数据转换为二进制系统,因此可能出现舍入误差。尽管ABAP/4处理器试图将这些影响减至最小,但是如果要求高精度,则不应该使用类型F数据。而应代之以类型P数据;如果需要大的数值范围,而且舍入误差不重要,则可以使用类型F数据。 I(整型):数值范围是-2**31到2**31-1并且仅包括整数;对算术运算的非整型结果(如分数)进行四舍五入,而不是截断;可用于计数器、项目号、索引和时间期段等。 N(数字文本):虽然由数字组成,但不包含数值,,但这些数字不用于计算。科目号和邮编是典型的类型。 P(压缩号):允许在小数点后有数字;类型P数据的数值范围取决于大小和小数点后的位数,有效大小可以是从1到16字节的任何值,将两个十进制数字压缩到一个字节,而最后一个字节包含一个数字和符号,在小数点后最多允许14个数字;使用类型P数据时,最好将程序属性设置为“定点算法”,否则,将类型P数字作为整型对待;类型P数据可用于如距离、重量和钱数等数值。 T(时间): X(十六进制):

    10.下面是系统字段示例:

    SY-SUBRC返回代码值(0,如果操作成功) SY-UNAME用户的登录名 SY-DATUM当前日期 SY-UZEIT当前时间 SY-TCODE当前事务

    11.如何定义内部变量?

    DATA [()] [] []. 注:对于C和N型,如果length不输入,则默认长度为1;对于N型变量,如果值中包括字符,则字符不起作用,只输出数字。如果length大于实际内容的长度,则对于C型来讲,以空字符来填充,对于N型来说,对0来填充。如果指定长度,但未指定类型,则创建给定长度的字符字段。例子:Str=’ab123’,NStr = ‘1245ab3’,Int = 100 write 'This is star''s computer.'. 输出:This is star’s computer. DATA Str type C. 输出:a DATA Str(5) type C. 输出:ab123 DATA NStr type N. 输出:3 DATA NStr(7) type N. 输出:12453 DATA NStr1 like NStr value ’1234567’. 输出:1234567 DATA Int type I. 输出:100 DATA Pdat(10) type p value '9.876543210' decimals 9. 输出:9.876543210 CONSTANTS PI TYPE P DECIMALS 10 VALUE '3.1415926536'. 输出:3.1415926536 DATA MYNAME LIKE SY-UNAME. 与系统定义的对象SY-UNAME有一样的数据类型 DATA SUM1 TYPE I. DATA SUM2 TYPE I. DATA SUM3 TYPE I. 和 DATA: SUM1 TYPE I, SUM2 TYPE I, SUM3 TYPE I, 是一样的,这就是链语句。

    12.如何设置字段串和使用字段串?

    DATA: BEGIN OF ADDRESS, NAME(20) TYPE C, STREET(20) TYPE C, NUMBER TYPE P, POSTCODE(5) TYPE N, CITY(20) TYPE C, END OF ADDRESS. 该示例定义了一个长度为73的字段串ADDRESS。可以通过ADDRESS-NAME、ADDRESS-STREET等定址组件。可以将长字段串的声明收集在包括程序中。但是,如果频繁使用该数据结构,则最好将它们保存在ABAP/4词典中。

    13.LIKE参数,语法如下:DATA LIKE .

    利用LIKE参数,可以将已定义数据对象的数据类型分配给变量。 LIKE参数常用于附属字段以临时保存数据库字段的内容。如果更改数据库字段的属性,则系统自动改写备份字段的属性。可将任何数据对象用于。利用LIKE参数,可以引用在ABAP/4词典中声明的数据对象的数据类型。如: DATA NUMBER_1 TYPE P. DATA NUMBER_2 LIKE NUMBER_1. DATA MYNAME LIKE SY-UNAME.

    14.STATICS 语句:

    如果要在过程的运行时间之外仍保留某变量的数值,可以在该过程中利用STATICS语句定义该变量。STATICS语句是DATA语句的变异。语法如下: STATICS [] [] []. 要在过程中将字段串定义为静态有效,请写: STATICS: BEGIN OF , , .............. END OF .

    15.TABLES语句:TABLES

    利用TABLES语句,可以创建称为表工作区的数据对象。表工作区是参考ABAP/4词典对象的字段串。是ABAP/4词典对象的名称,同时也是创建的表工作区的名称。表工作区组件的顺序和名称与在ABAP/4词典中声明的对象相同。要在ABAP/4词典中创建对象,步骤:Tools->ABAP Workbench->Development->ABAP Dictionary。表工作区提供一个接口,通过该接口可以将数据从数据库表加载到程序,或利用开放式SQL语句修改数据库表的内容。要显示表的组件及其数据类型的列表,请在ABAP/4编辑器的命令行中(选择“编辑->其它功能->命令输入”)键入“SHOW”。要定址表工作区的组件,可以将表名作为前缀,然后用连字符添加组件:dbtab>- 例子:TABLES: SPFLI. Select * FROM SPFLI. WRITE: SPFLI-MANDT, SPFLI-CARRID, SPFLI-CONNID, ...... ENDSelect. 示例中,TABLES语句创建表工作区SPFLI。SPFLI与ABAP/4词典中声明的数据库表SPFLI结构相同。在Select循环中,用属于数据库表SPFLI的行填充表工作区SPFLI。 TYPES语句:使用TYPES语句创建用户定义的基本数据类型和结构化数据类型。 TYPES: SURNAME(20) TYPE C, BEGIN OF ADDRESS, NAME TYPE SURNAME, .... END OF ADDRESS. 通过TYPES定义的类型不能直接使用,需要通过DATA进行定义其对应的变量后,使用其变量。 DATA: ADDRESS_1 TYPE ADDRESS, ADDRESS_2 TYPE ADDRESS.

0
相关文章