メインコンテンツまでスキップ
バージョン: 21 R4 BETA

Record number

Record number ( aTable : Table ) : Integer

引数型説明
aTableTable→カレントレコードの番号を返すテーブル 省略時、デフォルトテーブル
戻り値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
レコード番号について

プロパティ​

コマンド番号243
スレッドセーフであるyes