@ENUMVALUE
テキスト・リスト内のテキスト値の内部数値を返します。
構文
@ENUMVALUE ([mbrName,]enum_string)
パラメータ
- mbrName
-
オプション。 任意の有効な単一メンバー名、または単一メンバーを戻す関数。 最初の引数として指定した場合、@ENUMVALUEはそのメンバーに関連付けられているテキスト・リストをチェックし、2番目の引数で指定されている文字列の数値を戻します。
- enum_string
-
mbrNameが最初の引数として指定されている場合、これはテキスト・リストに表示されるテキスト文字列のいずれかのchar_string_literalです。
最初の引数としてmbrNameが指定されていない場合、これは
text_list_name.char_string_literal
という形式の文字列になります:-
text_list_nameは、テキスト・リスト、またはテキスト・リストに関連付けられているメンバーの名前です。
-
char_string_literalは、テキスト・リストに表示されるテキスト値のいずれかです。
-
例
例1、メンバー名なし
次の例はASOSamp.Sampleのバリエーションに基づいています。 次のようにテキスト値が数値IDにマップされる、CustSatRatingsという名前のテキスト・リストがあるとします: Good=1、Average=2、Poor=3。
@ENUMVALUE(CustSatRatings, "Good");
前述の例では、1
が返されます。
例2(メンバー名あり)
次の計算例では、条件付きテストを実行し、テスト結果に応じてProfitに値を割り当てます。 計算スクリプトは、SmartTextという名前のメンバーをテキスト文字列REDで設定するために使用されます:
SET CREATENONMISSINGBLK ON;
FIX ("100-10", California, Actual, Oct)
SmartText = "RED";
ENDFIX;
Profitのメンバー式により、Profitの値は次の条件テストに依存: メンバーSmartTextの内部数値がテキスト文字列REDに関連付けられている場合、Profitの値は99に設定されます。
Profit (IF(@EnumValue(SmartText, "RED") == SmartText )
Profit=99;
条件テストはtrueを返し、Profitの値は99に設定されます。