| 4D v18DIFFERENCE | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v18
 DIFFERENCE 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DIFFERENCE ( set ; subtractSet ; resultSet ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| set | 文字 |   | セット | |||||
| subtractSet | 文字 |   | 取り除くセット | |||||
| resultSet | 文字 |   | 結果のセット | |||||
DIFFERENCEコマンドは、setとsubtractSetを比較し、subtractSetに格納されている全てのレコードをsetから取り除きます。つまり、setにだけ存在し、subtractSetには存在しないレコードのみをresultSetに格納します。以下の表に、DIFFERENCEコマンドで考えられるすべての組み合わせを示します。
| Set1 | Set2 | 結果セット | 
| ○ | × | ○ | 
| ○ | ○ | × | 
| × | ○ | × | 
| × | × | × | 
以下の図に、集合差異演算の処理結果を図で示します。塗りつぶした部分が結果のセットです。

resultSetは、DIFFERENCEコマンドで作成されます。resultSetと同じ名前のセット (set, subtractSetも含めて) が既に存在していた場合、resultSetに置き換えられます。setとsubtractSetは同じテーブルに属していなければなりません。resultSetもsetとsubtractSetと同じテーブルに属します。
4D Server: クライアント/サーバモードにおいて、セットはタイプ (インタープロセス、プロセスおよびローカル) およびそれらがどこで作成されたか (サーバまたはクライアント) によって、アクセス可能かどうかが決定されます。DIFFERENCEでは3つのセットが同じマシン上でアクセスできる必要があります。詳細は4D Server Referenceマニュアルの4D Server: セットと命名セレクションに関する説明を参照してください。
以下の例は、表示したセレクションからユーザが選択したレコードを排除します。このレコードリストは、以下のステートメントで画面に表示されます。
 DISPLAY SELECTION([Customers]) `customers をリスト表示レコードリストの下部には、オブジェクトメソッド付きのボタンがあります。このオブジェクトメソッドはユーザが選択したレコード (UserSet) を排除し、新しいセットを表示します。
 CREATE SET([Customers];"$Current") `カレントセレクションのセットを作る
 DIFFERENCE("$Current";"UserSet";"$Current") `選択したレコードを除外する
 USE SET("$Current") `新しいセットを使用する
 CLEAR SET("$Current") `セットを消去する
	プロダクト: 4D
	テーマ: セット
	番号: 
        122
        
        
        
	
	初出: < 4D v6
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	ランゲージリファレンス ( 4D v18)
	
	
	
	
	
 コメントを追加
コメントを追加