アクション フックを使用すると、 どのユーザーにレコード値の変更を許可するかを管理し、ユーザーの入力値をデータベースに コミットする前に入力内容を確認できます。アクション フックはまた、レコード全体の確認とアクション完了時の電子メールによる通知の送信も実行できます。
アクション フックの適用範囲は、現在のレコードです。次の表に、 サポートされるアクション フックのタイプを実行される順序で示します。
アクション フック | 用途 |
---|---|
Access Control アクションが開始される直前に実行されます。 |
指定したユーザーが、レコードに対して指定のアクションを開始できるかどうかを示す ブール型の値を返します。このフックは、ユーザーがアクションを実行する前に呼び出されます。 ネストされたアクションに対して、Access Control フックは実行されません。Access Control フックは、VBScript 形式または Perl 形式のサブルーチンとして記述できます。 プライマリ アクション (Modify、Submit、Delete、Import) を実行するには、 プライマリ アクションのアクセス制御リストとすべての Base アクションのアクセス制御リストに現在のユーザーが登録されている必要があります。 「アクションへのユーザー アクセス制限」を参照してください。 |
Initialization アクションが開始される時点で実行されます。 |
初期フィールド値を設定します (または管理者が指定する任意のタスクを実行します)。 レコードに対し、複雑な初期設定を行うことが可能です。 このフックを使用すると、アクションが開始する前に フィールド値を設定できます。このフックは、アクションが初期化された後で、レコードの内容がフォーム内に表示される前に呼び出されます。 Initialization フックは、スクリプト サブルーチンとして記述する必要があります。 |
Validation ユーザーがアクションをコミットする時点で実行されます。 |
管理者が指定するフィールド値を確認します。 ユーザーが無効なデータを入力した場合は、 有効なデータの入力を求めるプロンプトが出されます。このフックを使用すると、個別フィールドの Validation フックの内部では検証が困難な条件をチェックできます。 例えば、このフックを使用すると、フィールドのグループ全体の情報を確認できます。このフックは、変更がデータベースに コミットされる前に実行されます。Validation フックは、スクリプトを使用する必要があります。 「動的リストの編集」を参照してください。 |
Commit トランザクションがデータベースにコミットされる直前に 実行されます。 |
複数のレコードに対する 1 つのアクションを、1 つのトランザクションにリンクします (例えば、元の変更依頼が解決した場合には、その依頼に対するすべての複製も解決します)。
データベースの内容と整合するように外部データ ソースのセットを
更新します。このフックは、現行レコードに対する更新がデータベースに記録された後で、
その更新トランザクションがコミットされる前に呼び出されます。Commit フックにより、
トランザクションが拡張され、追加レコードに対する更新が組み込まれます。(例えば、元の変更依頼が
解決されると、その変更依頼に対するすべての複製も解決されます)。
注: 現行レコードに対するすべての更新は、このフックが実行される前に記録されるため、
現行レコードで SetFieldValue メソッドを呼び出しても、このフックには影響しません。
トランザクションで現行レコードを変更するには、Validation アクション フックを使用してください。ただし、
単一トランザクションの一部として、現行レコードに関連したレコードを更新する場合は、
Commit フックを使用することができます。
|
Notification トランザクションがコミットされた後で実行されます。 |
アクションが実行されたことをユーザーに通知するアクションを開始します。「Rational ClearQuest 電子メール」を参照してください。通知フックは、スクリプトを使用する必要があります。 |