コンテンツフレーム起動

複数の論理式の組合わせ 文書を SAP ライブラリストラクチャに組み込む

論理結合演算子 AND OR NOT を使うことで、いくつかの論理式を1つの論理式にまとめることができます。

NOT AND より優先され、 AND OR より優先されます。ただし、カッコを組み合わせることで処理順序を指定できます。 ABAP では、それぞれのカッコはワードとして取り扱われます。したがって、それぞれのカッコの前後にスペースを少なくとも1つ残さなければなりません。

ABAP では論理式の評価は左から右に向かって行われます。コンポーネントである式のいずれかの真偽が判定できる場合、そのコンポーネント内の残りの比較またはチェックは行われません。つまり、偽となることの多い比較式を AND チェーンの先頭におき、文字列の検索などの CPU 負荷の高い比較をチェーンの最後に置くように論理式を組み立てれば、それだけパフォーマンスが向上します。

例

DATA: F TYPE F VALUE '100.00',
N(3) TYPE N VALUE '123',
C(3) TYPE C VALUE '456'.

WRITE 'The following logical expression is true:'.

IF ( C LT N ) AND ( N GT F ).
   WRITE: / '(',C,'lt',N,') AND (',N,'gt',F,')'.
ELSE.
   WRITE: / '(',C,'ge',N,') OR (',N,'le',F,')'.
ENDIF.

出力は次のように表示されます。

The following logical expression is true:

この例では、 IF 命令の中で論理式が使われています。論理式が真であれば、その式が画面に書き込まれます。偽であれば、逆の式が画面に書き込まれます。

 

 

 

コンテンツフレーム終了