abap case 的用法例子
时间: 2024-09-08 09:01:16 浏览: 117
在ABAP (Advanced Business Application Programming) 中,CASE语句是一种结构化控制流程工具,它可以根据给定的条件执行一系列特定的操作。以下是CASE语句的一个基本用法例子:
```abap
DATA: lv_employee_type TYPE empl-type, " 假设empl-type是一个员工类型的数据类型
lv_salary TYPE real.
CASE lv_employee_type.
WHEN 'SALARIED' THEN
lv_salary = cl_sal_calculation=>get_salary( employee_id ). " 按照工资计算规则计算薪水
WHEN ' Hourly' THEN
lv_salary = cl_sal_calculation=>get_hourly_wage( employee_id ) * hours_worked.
ELSE.
WRITE: / 'Invalid employee type'.
ENDCASE.
```
在这个例子中,`lv_employee_type`变量存储了员工的类型,CASE结构检查这个值。如果类型是'SALARIED',则计算并赋值给`lv_salary`;如果是'HOURLY',则根据工时计算薪水;对于其他未知类型,则输出错误信息。
相关问题
abap case的用法
ABAP中的CASE语句用于根据某个变量的不同取值来执行不同的操作。以下是CASE语句的用法:
```
CASE <variable>
WHEN <value1>.
<statement1>.
WHEN <value2>.
<statement2>.
...
WHEN OTHERS.
<statementN>.
ENDCASE.
```
在上述代码中,`<variable>` 是要进行比较的变量,`<value1>`, `<value2>`, ... 是可能的取值,`<statement1>`, `<statement2>`, ... 是与每个取值对应的操作。`WHEN OTHERS` 是可选的,用于指定当变量的取值与前面的所有条件都不匹配时要执行的操作。
下面是一个示例:
```
DATA: lv_variable TYPE i.
lv_variable = 3.
CASE lv_variable.
WHEN 1.
WRITE 'One'.
WHEN 2.
WRITE 'Two'.
WHEN 3.
WRITE 'Three'.
WHEN OTHERS.
WRITE 'Other'.
ENDCASE.
```
在这个示例中,变量 `lv_variable` 的值为3,因此输出结果为 "Three"。
希望这个例子能够帮助你理解ABAP中CASE语句的用法。如有其他问题,请随时提问。
ABAP case when的用法
ABAP中的CASE WHEN语句用于在条件满足时执行一系列操作。它的语法如下所示:
```abap
CASE WHEN <condition1> THEN
<statement1>.
WHEN <condition2> THEN
<statement2>.
...
WHEN <conditionN> THEN
<statementN>.
ELSE.
<statementDefault>.
ENDCASE.
```
其中,`<condition1>`, `<condition2>`, ..., `<conditionN>`是条件表达式,用于判断是否满足相应的条件。`<statement1>`, `<statement2>`, ..., `<statementN>`是在条件满足时要执行的语句。`<statementDefault>`是可选的,默认语句,当所有条件都不满足时执行。
以下是一个简单的例子,演示了CASE WHEN的用法:
```abap
DATA lv_value TYPE i.
lv_value = 3.
CASE WHEN lv_value = 1 THEN
WRITE 'Value is 1'.
WHEN lv_value = 2 THEN
WRITE 'Value is 2'.
WHEN lv_value = 3 THEN
WRITE 'Value is 3'.
ELSE.
WRITE 'Value is not 1, 2, or 3'.
ENDCASE.
```
在此例中,根据`lv_value`的值,将输出相应的消息。因为`lv_value`的值为3,所以将输出"Value is 3"。
希望这个例子对你有帮助!如果你还有其他问题,请随时提问。
阅读全文