| 4D v15.4GOTO SELECTED RECORD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v15.4
 GOTO SELECTED RECORD 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GOTO SELECTED RECORD ( {aTable ;} record ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| aTable | テーブル |   | 指定したレコードをカレントレコードとするテーブル, または 省略時、デフォルトテーブル | |||||
| record | 倍長整数 |   | セレクション中のレコード位置番号 | |||||
GOTO SELECTED RECORDは、aTableのカレントセレクション内の指定されたレコードに移動し、そのレコードをカレントレコードにします。カレントセレクションは変更されません。recordにはカレントセレクション内のレコードの位置を指定します。Record numberで求められるレコード番号ではありません。このレコード位置はセレクションの作成方法およびセレクションがソートされているかどうかによって変わります。
GOTO SELECTED RECORD は以下の場合なにも行いません:
recordに0を渡すと、aTableのカレントレコードが存在しなくなります。単一選択モードが選択されている場合、特に組み込みサブフォームで、これによりリスト中のレコードの選択を解除できます。
以下の例は、[People]Last Nameフィールドの内容をatNames配列に取り込みます。alRecNum倍長整数配列にレコード位置番号を設定します。両方の配列をソートし、その配列を使用してセレクション内のレコードを参照します:
  ` ここで[People] テーブルのセレクションを作成
  ` ...
  ` 名前を取得
 SELECTION TO ARRAY([People]Last Name;atNames)
  ` レコード位置番号の配列を作成
 $vlNbRecords:=Size of array(atNames)
 ARRAY LONGINT(alRecNum;$vlNbRecords)
 For($vlRecord;1;$vlNbRecords)
    alRecNum{$vlRecord}:=$vlRecord
 End for
  ` 配列を名前順でソート
 SORT ARRAY(atNames;alRecNum;>)atNames 配列がスクロールエリアに表示され、ユーザは項目の一つをクリックします。2つの配列は同期されているので、alRecNumは対応するatNamesの要素のレコード位置番号を保持しています。
以下のatNamesオブジェクトメソッドは[People]セレクション中の、スクロールエリアで選択されたレコードをカレントレコードにします:
 Case of
    :(Form event=On Clicked)
       If(atNames#0)
          GOTO SELECTED RECORD(alRecNum{atNames})
       End if
 End case
	プロダクト: 4D
	テーマ: セレクション
	番号: 
        245
        
        
        
	
	変更: 4D 2004
	
	
	
	
	
	ランゲージリファレンス ( 4D v15)
	
	
	
	
	
	ランゲージリファレンス ( 4D v15.4)
	
	ランゲージリファレンス ( 4D v15.3)
 コメントを追加
コメントを追加