在資料庫中確定變更之前,或當要求是來自 ClearQuest Web 或 RCP 用戶端時,Rational ClearQuest 軟體會以下列順序來執行連結鉤,以便驗證記錄:
您可以修改動作的存取控制,包括可透過套用套件而新增到綱目的動作。不過,對基本動作所加諸的任何存取控制限制適用於所有其他動作。對於巢狀動作,不會執行存取控制連結鉤。
如果「欄位值已經變更」連結鉤呼叫 Entity 物件的 SetFieldValue 方法,該欄位的 VALUE_CHANGED 連結鉤會在 SetFieldValue 呼叫時執行。
當巢狀動作正在進行時,某些連結鉤不會執行,包括存取控制連結鉤和所有通知連結鉤的執行。如需相關資訊,請參閱《IBM Rational ClearQuest API 參考手冊》中的動作和存取控制及巢狀動作中的連結鉤。
如果已經設定限制至清單選項,且使用者輸入不允許的值,則會將該欄位標示為無效。唯有當使用者輸入有效值時,才會執行下一個連結鉤。
如果「欄位值已經變更」連結鉤呼叫 SetFieldValue 方法來變更另一個欄位的值,則另一個欄位的「欄位值已經變更」連結鉤會立即執行。
如果您使用相依欄位並選取重新計算選項清單,則會先執行「欄位驗證」連結鉤,然後對每一個欄位執行「欄位選項清單」連結鉤,直到所有變更的欄位都已經設定及驗證為止。
除非欄位已標示為具有相依欄位,否則,只有在使用者開始「提交」動作時,欄位連結鉤才會執行。請參閱使用連結鉤來偵測 Web 階段作業。
在以現行記錄的變更更新資料庫之後,但是在資料庫中確定更新交易之前,會執行「確定」連結鉤。您無法使用「確定」連結鉤來修改現行記錄(例如,您無法從「確定」連結鉤變更欄位)。
「確定」連結鉤中的工作是在資料庫中含有鎖定時完成的,而那些鎖定可能會防止其他使用者執行查詢、建立新記錄或修改現有的記錄。基於效能的原因,最好將「確定」連結鉤所執行的工作減至最少。
只針對其他記錄的動作執行「確定」連結鉤,您希望這些記錄成為與主要動作相同的資料庫交易的一部分(例如,在解決母項問題報告時解決重複的問題報告)。您必須確定自己在正確的環境定義中放置適當的呼叫。例如,您不要從「確定」連結鉤呼叫回復,也不要從「確定」連結鉤以外的任何動作呼叫確定。
在驗證記錄之後,會透過依下列順序執行的連結鉤,在資料庫中進行確定:
如需相關資訊,請參閱《IBM Rational ClearQuest API 參考手冊》中的編輯現有的記錄。