Record number
Record number {( aTable )} : Integer
引数 | 型 | 説明 | |
---|---|---|---|
aTable | Table | → | カレントレコードの番号を返すテーブル 省略時、デフォルトテーブル |
戻り値 | Integer | ← | カレントレコード番号 |
説明
Record numberは、aTableのカレントレコードの物理レコード番号を返します。レコードポインタがカレントセレクションの前後にある場合等、カレントレコードがない場合、Record numberは-1を返します。カレントレコードが保存されていない新しいレコードの場合、Record numberは-3を返します。
レコード番号は変わることがあります。削除されたレコードのレコード番号は再利用されます。
4D Server: このコマンドは、On Validateフォームイベントにおいては、4Dローカルモードと4Dリモートモードで異なる値を返します。ローカルモードではレコード番号 (レコードは既に作成されていると扱われるため) を返します。リモートモードでは-3を返します。なぜならば、レコードは4D Server上に作成されていますが、クライアントにこの情報はまだ通知されていないためです。
注: レコードが作成中であるかをテストする目的では、Is new recordコマンドの利用をお勧めします。
例題
以下の例は、カレントレコードのレコード番号を変数に格納し、他に同じデータを持つレコードがないかを検索します:
$RecNum:=Record number([People]) // レコード番号を取得
QUERY([People];[People]Last =[People]Last) // 同じLast名を持つレコードを検索
// 検索件数を表示
ALERT("There are "+String(Records in selection([People])+" with that name.")
GOTO RECORD([People];$RecNum) // 元のレコードに戻る
参照
GOTO RECORD
Is new record
Selected record number
Sequence number
レコード番号について