[レコード後]には、次のような処理を定義します。
バッチタスクおよび非インタラクティブなリッチクライアントの場合 …… データビューの各レコードに関する処理
オンライン、インタラクティブなリッチクライアント、およびブラウザタスクの場合
…… 参照と変更が行われたレコードに関する処理
オンラインやインタラクティブなリッチクライアント、ブラウザタスクでは、レコードがユーザの入力などで変更されていない時には、通常は[レコード後]が実行されません。
レコード終了処理
オンラインタスクやインタラクティブなリッチクライアントでは、ユーザが参照している各レコードについて、以下に説明する「レコード終了」処理が実行されます。また、バッチタスクや非インタラクティブなリッチクライアントでは、処理対象となる全レコードについて、[タスク特性]の[インデックス]で指定されたインデックスの順番あるいは[ソート]テーブルに指定された順番で、最初のレコードから最後のレコードまで、1レコードずつ処理が実行されます。
[レコード後]の処理が実行されます。
タスクがバッチタスクまたは非インタラクティブなリッチクライアントの場合 …… [レコード後]は常に実行されます。レコードが変更されていない場合でも常にデータベースへの書き込みを行います。
タスクがオンラインまたは非インタラクティブなリッチクライアントの場合 …… 現在の論理レコードが変更されている時に限って、[レコード後]が実行されます。現在のレコードは、次のような操作が行われた場合、変更されたと解釈されます。
[レコード後]が完了すると、このレコードサイクル中に変更されたメインソースおよびリンクテーブルのレコードが全てディスクに保存されます。
関連トピック: