SAVE RECORD
SAVE RECORD {( aTable )}
引数 | 型 | 説明 | |
---|---|---|---|
aTable | Table | → | カレントレコードを保存するテーブル, または 省略時、デフォルトテーブル |
説明
SAVE RECORD は、カレントプロセスのaTableのカレントレコードを保存します。カレントレコードが存在しない場合、SAVE RECORD は何も行いません。
SAVE RECORD は、プログラムコードを使って新しく作成または修正したレコードを保存するために使用します。フォーム でユーザが修正し確定したレコードは、SAVE RECORD で保存する必要はありません。ユーザによってフォーム中で修正されたレコードがキャンセルされた場合でも、SAVE RECORD で保存することができます。
レコード中のフィールドデータが変更されていない状態で SAVE RECORD コマンドを呼び出しても、コマンドはなにも行いません (トリガは呼び出されません)。
SAVE RECORD が必要とされる場合を次に示します:
- CREATE RECORD や DUPLICATE RECORDで作成した新しいレコードを保存する場合
- RECEIVE RECORDで取得したレコードを保存する場合
- メソッドによって修正したレコードを保存する場合
- _o_ADD SUBRECORD、_o_CREATE SUBRECORD、_o_MODIFY SUBRECORD によって作成または修正したサブレコードを含むレコード保存する場合
- カレントレコードを変更するようなコマンドを実行する前に、データ入力途中で表示されているレコードを保存する場合
- データ入力途中でカレントレコードを保存する場合
受け入れられたフォームのOn ValidateイベントでSAVE RECORD を実行してはいけません。もし、これを実行すると、レコードが2回保存されてしまいます。
注: 編集されたオブジェクトフィールドを含むレコードを保存する場合、一般的にはSAVE RECORD を呼び出す前に4Dにそれを明示的に通知する必要があります。詳細な情報については、オブジェクトフィールドの保存 の章を参照して下さい。