Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

IF (従来のバージョン)

式を評価し、式の真理値を基にして、実行するコード行を選択します。

Synopsis

IF expression command1
ELSE command2

I expression command1
E command2

引数

expression オプション — ブーリアン値として評価される 1 つの式 (またはコンマ区切りの式のリスト)。
command1 expression が True と評価される場合、または expression が省略される場合は、1 つ以上の Caché コマンドが実行されます。
ELSE command2 expression が False と評価される場合、1 つ以上の Caché コマンドが実行されます。ELSE キーワードはオプションです。

説明

Note:

このページでは、IF コマンドの従来のバージョンについて説明します。このバージョンは Caché 4.0 時点で従来のバージョンとして見なされるもので、新規のプログラミングでは使用すべきではありません。ここでは、従来のアプリケーションとの互換性について説明します。

従来の IF コマンドは行型です。実行するコマンドは、同じプログラム行で IF の後に記述する必要があります。{ } 括弧は使用されず、行フォーマット化の使用は制限されます。新規の IF コマンドはブロック型です。実行するブロックは、IF コマンドの後に続く中括弧で囲まれたコマンドで構成されます。行フォーマット (空白や改行) は制限されていません。新規のバージョンの IF は、$TEST 特殊変数を使用しません。

IF と ELSE の従来のフォームと新規のフォームは構文的には異なり、結合することができません。したがって、あるタイプの IF は別のタイプの ELSE と組み合わせることはできません。

IF コマンドには、以下の 2 つの基本形式があります。

引数なし

引数付き

引数なしの IF

expression 引数なしの IF は、$TEST の現在の値が True (ゼロ以外) である場合に、IF と同じ行でそれに続くコマンドを実行します。$TEST が False (0) の場合、Caché はその行の残りのコマンドを無視して、次の行で実行を続けます (通常 ELSE コマンド) 。したがって、ELSE キーワードは IF '$TEST ($TEST が FALSE の場合) と同じになります。

引数付きの IF

expression 引数付きの IF は、expression が True (ゼロ以外) と評価される場合に、IF と同じ行でそれに続くコマンドを実行します(また、Caché は $TEST を True に設定します)。expression が False (0) である場合、Caché は $TEST に False (0) を設定し、残りのコマンドを無視し、次の行から実行を続けます。

次の行は通常 ELSE キーワードで始まり、同じ行で 1 つまたは複数のコマンドが続きます。IF コマンドで ELSE キーワードは必須ではありませんが、IF が False の場合にのみ実行されるオプションを指定する場合には ELSE が必要となります。プログラミングでは、常に ELSE を指定することをお勧めします。

この行型の ELSE キーワードは、E と省略することができます(より新しいブロック型の ELSE キーワードは、省略することができません)。IFELSE の従来のフォームと新規のフォームは構文的には異なり、結合することができません。したがって、あるタイプの IF は別のタイプの ELSE と組み合わせることはできません。

expression 引数は単一の式、またはコンマ区切りの式のリストの形式を取ります。式リストでは、Caché は左から右の順で、個別の式を評価します。False である式に遭遇すると評価を終了します。すべての式が True と評価されると、Caché は同じ行の expression 引数に続くコマンドを実行します。式が 1 つでも False と評価されると、Caché は残りのすべての式を無視し、同じ行にあるコマンドは実行せず、次のコード行から実行を継続します。

関連項目

FeedbackOpens in a new tab