Choose

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 11


Choose (criterion; value{; value2; ...; valueN})

引数説明
criterionブール | 整数テストする値
value可能な値
戻り値条件の値

説明

Chooseコマンドは、引数criterionの値に応じて、引数value1value2などに渡された値の1つを返します。

ブールまたは数値タイプのいずれかを引数criterionに渡します。

criterionがブールの場合、ChooseはブールがTrueのときvalue1を、Falseのときvalue2を返します。この際コマンドは3つの引数、criterionvalue1value2を期待します。

・criterionが整数の場合、Choosecriterionに対応する位置にある値を返します。値の採番は0から始まりますので注意してください (従ってvalue1の位置は0です) 。この場合、コマンドは少なくとも2つの引数、criterionvalue1を期待します。

コマンドは、引数value にすべてのデータタイプを受け入れます。しかしピクチャ、ポインタ、BLOBSおよび配列は除外です。それでも、渡されたすべての値が同じタイプであることを確かめる必要があります。この点において、4Dは照合を実行しません。

criterionに対応する値がない場合、Chooseは引数valueのタイプに対応する空値を返します (例えば数値タイプは0、文字列タイプは""など) 。

このコマンドを使用して簡単なコードを作成し、複数の行から成るCase ofタイプのテストを置き換えることができます (例2を参照) 。これはフォーミュラが実行される場所でも非常に役に立ちます。クエリエディタ、フォーミュラのアプリケーション、クイックレポートエディタ、リストボックスで計算されるカラムなどです。

例題

1. ブール型条件を用いた、このコマンドの典型的な使用例を以下に示します。

   vTitle:=Choose([Person]Masculine;"Mr";"Ms")

このコードは以下のコードと完全に対等です。

   If([Person]Masculine)
      vTitle:="Mr"
   Else
      vTitle:="Ms"
   End if

2.数値型条件を用いた、このコマンドの典型的な使用例を以下に示します。

   vStatus:=Choose([Person]Status;"Single";"Married";"Widowed";"Divorced")

このコードは以下のコードと完全に対等です。

   Case of
      :([Person]Status=0)
         vStatus:="Single"
      :([Person]Status=1)
         vStatus:="Married"
      :([Person]Status=2)
         vStatus:="Widowed"
      :([Person]Status=3)
         vStatus:="Divorced"
   End case

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次