4D v17.4Choose | 
            ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
                 
                
    
    
                 | 
                
			
                    
                         
    4D v17.4
 
Choose 
                                
                                
        
 | 
                |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Choose ( criterion ; value {; value2 ; ... ; valueN} ) -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| criterion | ブール, 整数 | 
             
         | 
        テストする値 | |||||
| value | 式 | 
             
         | 
        可能な値 | |||||
| 戻り値 | 式 | 
             
         | 
        条件の値 | |||||
Choose コマンドは、引数criterion の値に応じて、引数value1、value2 などに渡された値の1つを返します。
ブールまたは数値タイプのいずれかを引数criterion に渡します。
コマンドは、引数value にすべてのデータタイプを受け入れます。しかしピクチャ、ポインタ、BLOBSおよび配列は除外です。それでも、渡されたすべての値が同じタイプであることを確かめる必要があります。この点において、4Dは照合を実行しません。
criterion に対応する値がない場合、Choose は引数value の型に対応する"null"値を返します (例えば数値タイプは0、文字列タイプは""など) 。
このコマンドを使用して簡単なコードを作成し、複数の行から成る"Case of"タイプのテストを置き換えることができます (例2を参照) 。これはフォーミュラが実行される場所でも非常に役に立ちます。クエリエディタ、フォーミュラのアプリケーション、クイックレポートエディタ、リストボックスで計算されるカラムなどです。
警告: Choose コマンドは実行前にvalue 引数のそれぞれの値を評価します。これはつまり次のようなことが起こることを意味します:
 $res:=Choose(True;"red1";"blue"+2) //errorブール型条件を用いた、このコマンドの典型的な使用例を以下に示します。
 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
        
        
        
	
	初出: 4D v11 SQL  
	
	
	
	
	
	
	
	
	
	
	ランゲージリファレンス ( 4D v17)
	
	
	
	
	
	ランゲージリファレンス ( 4D v17.1)
	
	
	ランゲージリファレンス ( 4D v17.2)
	
	
	ランゲージリファレンス ( 4D v17.3)
	
	ランゲージリファレンス ( 4D v17.4)
	
	
コメントを追加