以下の
Record の状態が可能です。
- RecordState.original : ソース レコードセットが最後にロード、コミット、または復帰された時点から、このレコードには変更が加えられていません。
- RecordState.modified : ソース レコードセットが最後にロード、コミット、または復帰された後で、コミットされていない変更がこのレコードに加えられています。
- RecordState.appended : ソース レコードセットが最後にロード、コミット、または復帰された後で、このレコードはソース レコードセットに追加されています。
- RecordState.deleted : ソース レコードセットが最後にロード、コミット、または復帰された後で、このレコードはソース レコードセットから削除されています。このようなレコードはまだ完全にアクセス可能なレコードセットのメンバであり、後で行われる commit によってのみ削除される点に注意してください。
- RecordState.new : このレコードは RecordSet.new-record メソッドで作成されていますが、RecordSet.append メソッドによるレコードセットへの appended (追加) は行われていません。
- RecordSet.detached : このレコードはレコードセットとの関連がなく、アプリケーションからアクセスできません。この状態にあるレコードの例には、削除およびコミットされたレコード、さらに RecordSet.new-record メソッドで作成されていないレコードが含まれます。
RecordSet.select、
RecordSet.to-Iterator および
RecordView.get メソッドから返されるレコードは、必ず上記の最初の 4 つの状態のいずれかにあり、
RecordSet.new-record メソッドから返されるレコードは必ず
RecordState.new の状態にある点に注意してください。
また、状態変化は次のメソッド呼び出しの結果としてのみ起こることにも注意してください。