%OPR_IIF%
IIF関数を使用して、式マクロ内の式を拡張し、IIF文のセットを評価します。
構文
%OPR_IIF[ condition, macro_input_field [,value ]]%
以下の表に、この関数の引数を示します。
引数 | 必須/ オプション | 説明 |
---|
condition | 必須 | 値を求める条件。TRUEまたはFALSEになる有効な式を必要に応じて入力できます。マクロ入力フィールド、または少なくとも1つのマクロ入力フィールドを含む式を入力できます。 |
macro_input _field | 必須 | 条件がTRUEのときに返したい値。バイナリ以外の任意のデータ型。戻り値はこの引数で指定したデータ型になります。マクロ入力フィールド、または少なくとも1つのマクロ入力フィールドを含む式を入力できます。 |
value | オプション | 条件がFALSEのときに返したい値。バイナリ以外の任意のデータ型。水平マクロまたは垂直マクロには、有効な式を必要に応じて入力できます。ハイブリッドマクロには、出力マクロフィールドを定義するために使用する入力マクロフィールドを入力します。 |
一部のシステムで使用される条件関数と異なり、%OPR_IIF%関数ではFALSE(value)条件は必須ではありません。valueを省略すると、関数は条件がFALSEのときに以下の値を返します。
- •macro_input_fieldがNumericデータ型の場合はゼロ。
- •macro_input_fieldがStringデータ型の場合は空の文字列。
- •macro_input_fieldがDate/Timeデータ型の場合はNULL。
戻り値
条件がTRUEの場合は、macro_input_fieldになります。
条件がFALSEの場合はvalue。
データにマルチバイト文字が含まれ、条件引数で文字列データを比較する場合、タスクを実行するSecure Agentのコードページに応じた戻り値が返されます。
%OPR_IIF%およびデータ型
%OPR_IIF%を使用した場合、戻り値のデータ型は最大の精度を持つ結果のデータ型と同じものとなります。
1つ以上の結果がDoubleである場合、戻り値のデータ型はDoubleとなります。
例
次に示すマクロ入力フィールド%tmin%および%tmax%では、次に示すマクロ入力フィールド%type%に対応する範囲を作成します。
%tmin% | %tmax% | %type% |
---|
0 | 30 | very cold |
31 | 60 | cold |
61 | 90 | warm |
91 | 100 | hot |
101 | 150 | very hot |
次の式では、温度データに基づいてタイプを割り当てます。
%OPR_IIF [ (TEMP >= %tmin%) AND (TEMP <= %tmax%), '%type%', 'out of range' ]%
%OPR_IIF%は次の温度を評価して、タイプを返します。
TEMP | RETURN VALUE |
---|
79 | warm |
21 | very cold |
170 | out of range |
99 | hot |
90 | warm |