Processing Data

Objective

After completing this lesson, you will be able to 将值分配到数据对象

将值分配到数据对象

可以使用等号为变量赋值或算术表达式。

使用赋值来更改变量的值。

在 ABAP 中,值分配的运算符是简单的等号 ( =)。左侧的变量使用右侧的表达式值填充。

最简单的表达式是单个数据对象,例如文字或其他变量。但是,ABAP 支持更复杂的表达式,如上述示例中的算术表达式。

重置变量

可使用 CLEAR 关键字将变量设置为其初始状态

CLEAR 语句将数据对象的内容重置为类型相关的初始值。有关特定类型的初始值的详细信息,请参阅 CLEAR 语句的关键字文档。通常,如果数据类型是数字,则其初始值将为零,而数据类型为字符时,其初始值为空格。

算术计算

ABAP 支持算术运算符和内置数字函数

算术表达式是具有值、运算符组合的 ABAP 表达式,其函数由运行时系统处理以计算结果。对于算术表达式,结果类型取决于用作表达式输入的操作数类型。

可以在任何读取操作数位置使用算术表达式,例如,值分配的右侧。

第一个示例是简单的添加。金额 1 和金额 2 的内容相加,结果以可变总计排列。

第二个示例有点复杂。添加之前,金额 t1 和金额 t2 的内容使用因子 2 和 3 进行加权。然后,将此添加的结果除以 5,以计算加权平均值。

基本算术 ABAP 提供运算符 + 表示加法、- 表示减法、* 表示乘法、/ 表示除法。此外,可以使用运算符 DIV 表示整数除法,将 MOD 用于除数的整数余数。因此,6 DIV 4 为 1,6 MOD 4 为 2。

ABAP 具有一系列用于各种任务的内置函数。其中许多用于字符串处理,但您可以在此处看到一些数值函数的示例。使用 sqrt( ) 函数可拉取平方根,使用 ipow() 函数将数字提高到全数幂。

使用算术运算符的不同示例

在涉及多个运算符的复杂表达式中,乘法和除法优先于加法和减法。优先级相同的表达式从左到右处理。

ABAP 语法在运算符和操作数之间至少需要一个空格。1 + 1 是正确的。1+1 导致语法错误。

左括号后和右括号前也需要空格。

在程序中使用系统信息

CL_ABAP_CONTEXT_INFO 提供用于确定当前应用程序的环境数据的各种方法。下面列出了一些方法。

系统信息

方法描述
CL_ABAP_CONTEXT_INFO->GET_SYSTEM_DATE( ).当前日期
CL_ABAP_CONTEXT_INFO->GET_SYSTEM_TIME( ).当前时间
CL_ABAP_CONTEXT_INFO->GET_USER_TECHNICAL_NAME( ).当前用户的用户标识
CL_ABAP_CONTEXT_INFO->GET_USER_LANGUAGE_ABAP_FORMAT( ).用户登录语言

到目前为止,您已声明在 ABAP 应用程序中使用的所有变量。但是,系统包含可在源代码中使用的特殊系统信息。ABAP 运行时系统管理此系统信息,可用于任何想要使用它的 ABAP 应用程序。

系统信息提供有关实际系统状态的信息。如有必要,ABAP 运行时系统会填充和更改值。