SAPのERP開発において使用される
ABAP(Advanced Business Application Programming)では、
業務ロジックの中で数値演算を扱うことが非常に多くあります。
本記事では、数値計算の基本命令である ADD、SUBTRACT、MULTIPLYの
使い方を具体的なコード例とともに解説します。
ぜひ参考にしてみてください!
目次
【初心者向け】SAP ABAP言語の基本構文数値計算
早速SAP ABAP言語の基本構文数値計算について、
見出し別にご紹介していきます!
ADDについて
ADD は、指定した数値を他の変数に加える命令です。
🔹 基本構文
ADD 数値1 TO 数値2.
🔹 使用例
DATA: lv_total TYPE i VALUE 100,
lv_add TYPE i VALUE 50.
ADD lv_add TO lv_total. "→ lv_total は 150 になる
🔹 複数加算も可能
ADD lv_a lv_b lv_c TO lv_total.
SUBTRACTについて
SUBTRACT は、指定した数値を他の変数から引く命令です。
🔹 基本構文
abapCopyEditSUBTRACT 数値1 FROM 数値2.
🔹 使用例
DATA: lv_stock TYPE i VALUE 200,
lv_sold TYPE i VALUE 30.
SUBTRACT lv_sold FROM lv_stock. "→ lv_stock は 170 になる
MULTIPLY(乗算処理)について
MULTIPLY は、指定した数値を掛け算する命令です。
🔹 基本構文
MULTIPLY 数値1 BY 数値2.
🔹 使用例
DATA: lv_price TYPE i VALUE 500,
lv_qty TYPE i VALUE 3.
MULTIPLY lv_price BY lv_qty. "→ lv_price は 1500 になる
演算結果の格納先を指定したい場合
基本命令(ADD など)は、演算後の値を第一引数(もしくは最後の変数)に
上書きします。もし別の変数に結果を格納したい場合は、
COMPUTE文を使いましょう。
業務効率を改善できます。
🔹 COMPUTE を使った例
abapCopyEditDATA: lv_result TYPE i.
COMPUTE lv_result = lv_a + lv_b * lv_c.
数値計算の注意点(ABAP特有)
ABAP特有の数値計算の注意点について以下のとおり
まとめます!
| ポイント | 説明 |
|---|---|
| データ型 | i(整数)を使用。桁あふれや型違いに注意。 |
| 小数計算 | p(packed number)型を使い、スケール(小数点以下桁数)に注意。 |
| ゼロ除算 | 除算(DIVIDE)ではゼロ除算対策が必要。 |
まとめ
以下のとおりまとめます!
| 命令 | 意味 | 書き方 |
|---|---|---|
ADD | 加算 | ADD A TO B. |
SUBTRACT | 減算 | SUBTRACT A FROM B. |
MULTIPLY | 乗算 | MULTIPLY A BY B. |
COMPUTE | 任意の演算 | COMPUTE C = A + B * D. |


コメント