チュートリアル : 作業項目の種類のフィールドの管理
更新 : 2007 年 11 月
このチュートリアルでは、Team Foundation Server の作業項目の種類で使用されるフィールドの表示、名前の変更、および削除を行います。フィールドは、チーム プロジェクト全体のさまざまな作業項目の種類で使用されます。
ここでは、次の手順について説明します。
フィールドの表示 この手順では、作業項目の種類のフィールドを出力し、表示します。
フィールド名の変更 この手順では、フィールド名を変更し、フォーム上で変更が表示される場所を確認します。
フィールドの削除 この手順では、前の手順で作業項目フォームに追加したフィールドを削除します。
前提条件
「チュートリアル : 作業項目の種類の基本的なカスタマイズ」と「チュートリアル : 作業項目の種類の高度なカスタマイズ」の手順を完了していること。
Team Foundation Server への接続を確立でき、適切なアクセス許可がある場合は、コマンド プロンプト、バッチ ファイル、またはスクリプト ファイルで作業項目の種類のフィールドを管理できます。これを行うには、Visual Studio 2008 コマンド プロンプト ユーティリティを使用するか、次の例で説明する vsvars32 を使用して、現在のコマンド プロンプトで複数の環境変数を設定する必要があります。チーム プロジェクトに参加する方法の詳細については、「チュートリアル : チーム プロジェクトへの参加」を参照してください。
コマンド プロンプトで Team Foundation のコマンドを有効にするには
- [スタート] ボタンをクリックし、[すべてのプログラム] をクリックします。次に [Microsoft Visual Studio 2008] をポイントし、[Visual Studio Tools] をポイントして、[Visual Studio 2008 コマンド プロンプト] をクリックします。
また、Visual Studio のインストール パス (通常は、DriveLetter:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools) にある vsvars32 を実行することもできます。
必要なアクセス許可
この手順を実行するには、Team Foundation 管理者グループのメンバであるか、またはプロジェクトのプロジェクト管理者グループのメンバである必要があります。詳細については、「Team Foundation Server のアクセス許可」を参照してください。
フィールドの表示
フィールドを表示するには
Visual Studio のコマンド プロンプトを開きます。
コマンド プロンプトで次のように入力し、Enter キーを押して、Team Foundation Server で定義されているすべてのフィールドをテキスト ファイルに出力します。
witfields view /s:"Team Foundation Server name"
これにより、フィールドの一覧が表示されます。この一覧に含まれる情報は次のとおりです。
Field:
フィールドの参照名
Name:
フィールドの表示名
Type:
フィールドのデータ型
Reportable As:
フィールドのレポート設定
Use:
このフィールドを使用するチーム プロジェクトと、フィールドが表示される作業項目の種類
フィールド名の変更
フィールド名を変更するには
Visual Studio コマンド プロンプトで次のように入力し、Enter キーを押します。
witfields rename /s:"Team Foundation Server name" Microsoft.VSTS.Common.Rank Importance
このコマンドにより、Rank フィールドの名前が Importance に変更されます。
確認プロンプトで「y」と入力し、Enter キーを押します。次のメッセージが表示されるまで待ちます。
Field renamed.
Visual Studio のチーム エクスプローラ ウィンドウで、[最新の情報に更新] をクリックしてサーバーから最新の更新をダウンロードします。
すべてのノードが読み込まれるまで数秒待ちます。読み込み中のノードには、"処理中" と表示されます。
[作業項目] ノードを右クリックし、[クエリの追加] をクリックして新しいクエリを作成します。
[句を追加するにはここをクリックします] のラベルが付いた領域をクリックして、新しい行を追加します。次に、空白の [フィールド] セルをクリックします。このセルに「Rank」と入力します。結果リストの上に次のメッセージが表示されます。このメッセージは、Rank が見つからないことを示しています。
結果を表示するには、クエリを実行します。TF51005: クエリは、存在しないフィールドを参照しています。エラーの原因は、<<Rank>> であると考えられます。
[フィールド] セルから値 Rank を削除し、このセルに「Importance」と入力します。
[演算子] セルの [<>] をクリックし、[値] セルに「1」と入力します。
[チーム] メニューの [クエリの実行] をクリックします。
結果の任意の行を右クリックし、[列オプション] をクリックします。[使用可能な列] 一覧で下へスクロールします。[Rank] フィールドはなくなっていますが、[Importance] フィールドは存在しています。
[使用可能な列] ボックスの [重要度] をクリックし、[選択された列を追加します] の [>] をクリックします。[OK] をクリックします。
クエリ ビルダと結果リスト全体にわたって、Microsoft.VSTS.Common.Rank の表示名が、Rank から Importance に変更されています。
[閉じる] をクリックして、クエリを閉じます。クエリを保存するかどうかを確認するメッセージが表示されたら、[いいえ] をクリックします。
新しい Special Task 作業項目を作成します。これを行うには、[作業項目] ノードを右クリックし、[作業項目の追加] をポイントして、[SpecialTask] をクリックします。
この作業項目は、変更してインポートした作業項目の種類から作成されます。
[状態] ボックスでは、名前を変更した Rank フィールドのラベルが変更されていないことに注意してください。これは、作業項目フォームのフィールド ラベルは、親チーム プロジェクトにスコープが設定されており、先ほど指定したサーバー全体のフィールド名から独立しているためです。
メモ : 作業項目フォームのフィールド ラベルの変更方法の詳細については、「チュートリアル : 作業項目の種類の高度なカスタマイズ」の「フィールド ラベルのカスタマイズ」の手順を参照してください。
[閉じる] をクリックして、新しい Special Task を閉じます。作業項目を保存するかどうかを確認するメッセージが表示されたら、[いいえ] をクリックします。
フィールドの削除
必要条件 : 「チュートリアル : 作業項目の種類の基本的なカスタマイズ」の「フィールドの追加」の手順を完了していること。
フィールドを削除するには
「フィールドの追加」の手順で追加した Category フィールドを削除します。これを行うには、Visual Studio コマンド プロンプトで次のように入力し、Enter キーを押します。
witfields delete /s:"Team Foundation Server name" MyCompany.MyProcess.Category
返されるエラー メッセージには、このフィールドはあるチーム プロジェクトで使用されているため、削除できないことが示されています。
次のコマンドを入力し、Enter キーを押します。
witexport /f "File Path\specialtask.xml" /t "Team Foundation Server name" /p WITLab /n "Special Task"
これにより、Special Task 作業項目の種類の定義が Team Foundation Server から XML ファイルに再度エクスポートされます。この定義には、「フィールド名の変更」の手順で名前を変更した後の新しい表示名が使用された Microsoft.VSTS.Common.Rank フィールドの新しい定義が含まれています。
メモ : Windows Vista を実行している場合、アクセス権を持たないフォルダが存在する可能性があります。アクセス権のない場所に作業項目の種類をエクスポートしようとすると、レジストリ仮想化テクノロジが、自動的にエクスポートされたファイルをリダイレクトし、仮想ストアに保存します。詳細については、https://go.microsoft.com/fwlink/?LinkId=92325 および https://go.microsoft.com/fwlink/?LinkId=92323 を参照してください。このリダイレクトが行われないようにするには、アクセス権のある場所にファイルをエクスポートします。
エクスポート処理が終了すると、次のメッセージが表示されます。
Work item type export complete.
Visual Studio で、[ファイル] メニューをクリックし、[開く] をポイントして、[ファイル] をクリックします。
[ファイルを開く] ダイアログ ボックスが表示されます。
メモ : SpecialTask.xml を開くと、ファイルを Visual Studio に再読み込みするかどうかたずねるメッセージが表示される場合があります。[はい] をクリックして再読み込みします。
[探す場所] で、ファイルをエクスポートした場所に移動します。
specialtask.xml ファイルをクリックし、[開く] をクリックします。
改行コードに関するメッセージが表示されたら、[いいえ] をクリックします。
次の XML で示された Category フィールドの定義を探し、この定義を削除します。
<FIELD name="Category" refname="MyCompany.MyProcess.Category" type="String" reportable="dimension"><HELPTEXT>Describes the category to which this special task belongs.</HELPTEXT> <WHEN field="Microsoft.VSTS.Common.Discipline" value="Business Analyst"> <ALLOWEDVALUES> <LISTITEM value="Planning" /> <LISTITEM value="Review" /> </ALLOWEDVALUES> </WHEN> <WHENNOT field="Microsoft.VSTS.Common.Discipline" value="Business Analyst"> <ALLOWEDVALUES> <LISTITEM value="Process Management" /> <LISTITEM value="Planning" /> <LISTITEM value="Execution" /> <LISTITEM value="Review" /> </ALLOWEDVALUES> </WHENNOT></FIELD>
<Layout> セクションで次の XML を探し、強調表示されたセクションを削除してフィールドを削除します。
<Group Label="Classification"> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> </Column> </Group> </Column> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group> </Column> </Group>
[上書き保存] をクリックして、XML ファイルへの変更を保存します。
変更した Special Task 作業項目の種類を Team Foundation Server にインポートします。これを行うには、Visual Studio コマンド プロンプトで次のように入力し、Enter キーを押します。
witimport /f "File Path\specialtask.xml" /t "Team Foundation Server name" /p WITLab
これにより、specialtask 作業項目の種類が Team Foundation Server にインポートされます。インポート処理が終了すると、次のメッセージが表示されます。
Work item type import complete.
コマンド プロンプトで次のように入力し、Enter キーを押して、Category フィールドがどの作業項目の種類からも使用されなくなっていることを検証します。
witfields view /s:"Team Foundation Server name" MyCompany.MyProcess.Category
witfields ツールによって、Category が "Not In Use" になっていることが示されます。
Field: MyCompany.MyProcess.Category
Name: Category
Type: String
Reportable As: dimension
Use: Not In Use
Category フィールドはどの作業項目の種類からも使用されなくなったので、コマンド プロンプトで次のように入力し、Enter キーを押して、Team Foundation Server からこのフィールドを完全に削除します。確認プロンプトで「y」と入力して、この手順を完了します。
witfields delete /s:"Team Foundation Server name" MyCompany.MyProcess.Category