version 3
CREATE RECORD {(table)}
| 引数 | 型 | 説明 | |
| table | テーブル | 新規レコードを作成するテーブル, または | |
| 省略時、デフォルトテーブル |
説明
CREATE RECORDは、tableに対して新しい空のレコードを作成しますが、このレコードは表示されません。データ入力のために新しいレコードを作成して表示するにはADD RECORDを使用します。
CREATE RECORDは、レコードデータの割り当てをプログラミング言語で実行する場合に、ADD RECORDの代わりに使用します。新しく作成されたレコードはカレントレコードとなりますが、カレントセレクションは変わりません。
新しいレコードは、テーブルに対するSAVE RECORDコマンドを実行するまではメモリ上にのみ存在します。新しいカレントレコードが保存される前に (検索等によって) 変更されると、そのレコードは失われます。
例題
以下の例は、30日以上経過したデータをアーカイブします。これはアーカイブ用のテーブルに新しいレコードを作成することで行っています。アーカイブが終了すると、対象のレコードを[Accounts]テーブルから削除します:
` 30日経過したレコードを検索 QUERY ([Accounts]; [Accounts]Entered < (Current date - 30)) For ($vlRecord;1; Records in selection([Accounts])) ` レコードごとにループ CREATE RECORD ([Archive]) ` 新しいアーカイブレコードを作成 [Archive]Number:=[Account]Number ` アーカイブレコードにフィールドをコピー [Archive]Entered:=[Account]Entered [Archive]Amount:=[Account]Amount SAVE RECORD([Archive]) ` アーカイブレコードを保存 NEXT RECORD([Accounts]) ` 次のaccountレコードをカレントレコードにする End for DELETE SELECTION([Accounts]) ` accountレコードを削除
参照
ADD RECORD, MODIFY RECORD, SAVE RECORD.