4D v16.3

Choose

ホーム

 
4D v16.3
Choose

Choose 


 

Choose ( criterion ; value {; value2 ; ... ; valueN} ) -> 戻り値 
引数   説明
criterion  ブール, 整数 in テストする値
value  in 可能な値
戻り値  in 条件の値

説明   

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を参照) 。これはフォーミュラが実行される場所でも非常に役に立ちます。クエリエディタ、フォーミュラのアプリケーション、クイックレポートエディタ、リストボックスで計算されるカラムなどです。

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

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

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

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

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

 vStatus:=([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
テーマ: ツール
番号: 955

This command can be run in preemptive processes

 
履歴 

初出: 4D v11 SQL

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)