このトピックでは、Eclipse テクノロジーに基づく Rational® ClearQuest® Designer を使用して、Rational ClearQuest OSLCLinks パッケージ バージョン 1.0 または 1.1 をスキーマに適用する方法を説明します。
このタスクについて
ClearQuest v7.1.2 を実行する場合は、OSLCLinks パッケージ v1.0 を適用してください。ClearQuest v7.1.2.1 を実行する場合は、OSLCLinks パッケージ v1.1 を適用してください。
手順
- ClearQuest Designer で、パッケージを適用するスキーマのバージョンを右クリックし、 を選択します。パッケージ ウィザードが開きます。
- パッケージのリストで OSLCLinks ノードを展開し、バージョン 1.0 または 1.1 を選択します。
[次へ] をクリックします。
- パッケージを適用するレコード タイプを選択します。
- オプション: OSLCLinks パッケージ v1.1 を適用した場合で、かつ状態述語サポートを使用して ClearQuest の状態/ステータスを OSLC 状態にマップする場合、OSLC_CQ_State_Mapping というグローバル Perl スクリプトを追加して実装する必要があります。
- スキーマに関連付けられた にナビゲートし、右クリックして [追加] を選択します。
- [フック名] フィールドに次のテキストを入力し、[OK] をクリックします。 OSLC_CQ_State_Mapping
- OSLC_CQ_State_Mapping スクリプトにフック コードを追加します。
- [完了] をクリックします。
選択したスキーマに OSLCLinks パッケージが適用されます。当該スキーマ内で新規の OSLCLink 状態なしレコード タイプを探して、パッケージのインストールを確認します。
パッケージの適用について詳しくは、「パッケージの適用」のヘルプを参照してください。
例
このセクションでは、OSLCLinks パッケージ v1.1 を DefectTracking スキーマに適用し、パッケージを Defect レコード タイプに対して有効にする例を示します。
- ClearQuest Designer で、パッケージを適用するスキーマのバージョンを右クリックし、 を選択します。パッケージ ウィザードが開きます。
- パッケージのリストで OSLCLinks ノードを展開し、バージョン 1.1 を選択して [次へ] をクリックします。
- OSLCLinks パッケージを Defect レコード タイプに対して有効にします。
- OSLC_CQ_State_Mapping というグローバル Perl スクリプトを追加し、実装します。
- スキーマに関連付けられた にナビゲートし、右クリックして [追加] を選択します。
- [フック名] フィールドに次のテキストを入力し、[OK] をクリックします。 OSLC_CQ_State_Mapping
- OSLC_CQ_State_Mapping スクリプトにフック コードを追加します。以下に例を示します。
sub OSLC_CQ_State_Mapping {
my ($myentity, $hook_type) = @_;
my $state = $myentity->GetFieldStringValue("State");
if ($hook_type eq "Validation") {
if (($state eq "Assigned") || ($state eq "Opened")) {
$myentity->SetFieldValue("oslc_cm-inprogress", "1");
} else {
$myentity->SetFieldValue("oslc_cm-inprogress", "0");
}
if ($state eq "Closed") {
$myentity->SetFieldValue("oslc_cm-closed", "1");
} else {
$myentity->SetFieldValue("oslc_cm-closed", "0");
}
}
}
このスクリプトは、Defect レコードの OSLC_State_Predicates アクションの初期化フックと検証フックによって呼び出されます。このスクリプトには、現在のエンティティとフック タイプの 2 つのパラメータがあります。要求によっては、フックの種類パラメータの値に基づいて、異なるコードを追加することができます。このサンプル スクリプトは、検証フックを示しています。
- [完了] をクリックします。スキーマ リビジョンがチェックインされました。
- ユーザー データベースをアップグレードします。
- スキーマの変更を確認します。
- ClearQuest クライアントを使用してユーザー データベースにログインします。
- すべての障害クエリーを編集し、oslc_cm-inprogress と oslc_cm-closed の表示フィールドを追加します。
- すべての障害クエリーを実行します。
- 登録済み状態にあるクエリー結果から、任意の障害を選択します。
- 障害を閉じて、oslc_cm-closed が 1 であり、名前の接頭部が oslc_cm である他のフィールドが 0 であることを確認します。
- 障害を再度開き、oslc_cm-inprogress が 1 であり、名前の接頭部が oslc_cm である他のフィールドが 0 であることを確認します。