次の方法で共有


エンタープライズ プロジェクトとチーム プロジェクトの間のマッピングの管理

Visual Studio Team Foundation Server 2010 と Microsoft Project Server 2007 または Project Server 2010 の間でデータを同期するには、エンタープライズ プロジェクト計画とチーム プロジェクトの関連付けを含め、いくつかのタスクを実行する必要があります。 これらの 2 製品を統合する方法の概要については、「Team Foundation Server と Project Server の統合の構成」を参照してください。

エンタープライズ プロジェクト計画と Team Foundation Server のチーム プロジェクトとの関連付けを管理するには、TFSAdmin ProjectServer コマンド ライン ツールで次のコマンドを使用します。

  • /MapPlanToTeamProject: エンタープライズ プロジェクト計画をチーム プロジェクトにマップします。 複数の計画を同じチーム プロジェクトにマップできますが、各計画をマップできるチーム プロジェクトは 1 つに限られます。

  • /GetMappedProjects: 指定したチーム プロジェクト コレクションにある任意のチーム プロジェクトにマップされるエンタープライズ プロジェクト計画の一覧を返します。

  • /UnmapPlanFromTeamProject: エンタープライズ プロジェクト計画とチーム プロジェクトとの間のマッピングを削除します。

注意

エンタープライズ プロジェクト計画をチーム プロジェクトにマップした後で、同期する作業項目の種類を変更できます。 詳細については、「同期対象に含める作業項目の種類の管理」を参照してください。

TFSAdmin コマンド ライン ツールを使用するには、チーム エクスプローラーおよび Visual Studio Team Foundation Server 2010 Service Pack 1 を実行しているコンピューターでコマンド プロンプト ウィンドウを開きます。Drive:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE ディレクトリからツールを実行します。 64 ビット コンピューターの場合、ツールは Drive:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE にあります。

必要なアクセス許可

これらのコマンドを使用するには、チーム プロジェクト コレクションの [Project Server の統合の管理] アクセス許可が [許可] に設定されている必要があります。 また、Team Foundation Server のサービス アカウントに、データ同期に参加する PWA のインスタンスと対話するために必要なアクセス許可が付与されている必要があります。 詳細については、「Team Foundation Server と Project Server を統合するために必要なアクセス許可の割り当て」を参照してください。

注意

管理者のアクセス許可を使ってログオンした場合であっても、Windows Server 2008 を実行中のサーバーでこの機能を実行するには、昇格した特権でコマンド プロンプト ウィンドウを開く必要があります。 昇格した特権でコマンド プロンプト ウィンドウを開くには、[スタート] ボタンをクリックし、[コマンド プロンプト] を右クリックして、[管理者として実行] をクリックします。 詳細については、Microsoft Web サイトの「ユーザー アカウント制御」を参照してください。

構文

TfsAdmin ProjectServer /GetMappedProjects /collection:tpcUrl

TfsAdmin ProjectServer /MapPlanToTeamProject /collection:tpcUrl /enterpriseproject:EnterpriseProjectName /teamproject:TeamProjectName [/workitemtypes:ListOfWorkItemTypes] [/nofixedwork] [/projectfieldforworkitemtype:ProjectFieldName] [/skipUIChanges]

TfsAdmin ProjectServer /UnmapPlanFromTeamProject /collection:tpcUrl /enterpriseproject:EnterpriseProjectName /teamproject:TeamProjectName [/force]

パラメーター

パラメーター

説明

/collection:tpcUrl

チーム プロジェクト コレクションの URL (Uniform Resource Locator) を指定します。 http://<サーバー名:ポート>/<仮想ディレクトリ名>/<コレクション名> という形式の URL を指定する必要があります。

仮想ディレクトリを指定しない場合は、次の形式の URL を指定する必要があります。

http://<サーバー名:ポート>/<コレクション名>

/enterpriseproject:EnterpriseProjectName

エンタープライズ プロジェクト計画の名前を指定します。 計画は Project Server に保存されて発行されている必要があり、PWA のインスタンスはプロジェクト コレクションが保存されている Team Foundation Server の配置に登録されている必要があります。

/teamproject:TeamProjectName

プロジェクト コレクションで定義されているチーム プロジェクトの名前を指定します。

/workitemtypes:ListofWorkItemTypes

1 種類以上の作業項目の参照名をコンマ区切りの一覧で指定します。 Project Professional で追跡するデータを含む作業項目の種類のみを指定してください。 たとえば、"User Story,Task" または "User Story",Task として、アジャイル プロセスをサポートするように、次の種類の作業項目を指定できます。コンマの後にスペースは挿入できません。

/nofixedwork

Team Foundation の作業項目にマップされているタスクについて、Project Professional のタスクの種類が "作業時間固定" に自動的に設定されないことを指定します。 既定では、2 つのサーバー製品統合の一環として、Team Foundation の作業項目にマップされるエンタープライズ プロジェクト計画のタスクは、タスクの種類が "作業時間固定" に設定されます。 このスイッチを使用すると、この動作をオーバーライドできます。 作業時間固定は、Project で使用できる 3 つあるタスクの種類の 1 つです。 詳細については、「Project がタスク期間の計算に使用するタスクの種類を変更する」を参照してください。

/projectfieldforworkitemtype: ProjectFieldName

Team Foundation で定義された作業項目の種類の値を表示する Microsoft Project のフィールドの名前を指定します。 pjTaskText1 から pjTaskText30 までの値を指定します。 既定では、値は pjTaskText30 です。

/force

チーム プロジェクトで定義され、現在プロジェクト計画にリンクされているすべての作業項目について、すべてのマッピングを削除します。 マッピングが解除されたチーム プロジェクトには、リンクされた作業項目を含めることができせん。 このオプションは、今後チーム プロジェクト内のすべての作業項目をデータ同期から除外してもよい場合にのみ指定してください。

/skipUIChanges

指定した種類について、作業項目フォームの [Project Server] タブが変更されないように指定します。 影響を受ける種類の [Project Server] タブをカスタマイズしている場合は、このフラグを指定する必要があります。

/? または help

コマンドに関する情報を表示します。

ページのトップへ

解説

コマンドを実行すると、実行中のアクションとその対象となっているオブジェクトを示すメッセージが表示されます。 たとえば、次のメッセージは、エンタープライズ プロジェクト計画のマップ中であることを示しています。

Mapping enterprise project EntProjA . . . Done.

コマンドが終了すると、別のメッセージが表示されます。 たとえば、次のメッセージは、エンタープライズ プロジェクト計画がチーム プロジェクトにマップされたことを示しています。

Mapping enterprise project EntProjA to team project MyTeamProj . . . Done.

/MapPlantoTeamProject を使用すると、エンタープライズ プロジェクト計画をチーム プロジェクトへ関連付けることに加えて、指定した作業項目の種類の作業項目フォームに [Project Server] タブが追加されます。

フィールドがマップされていないチーム プロジェクトに対してエンタープライズ プロジェクトのマップを試みると、マッピングが必要であり、これ以降の操作は実行されないことを示すメッセージが表示されます。 詳細については、「Project Server と Team Foundation Server の間のフィールド マッピングのカスタマイズ」を参照してください。

エンタープライズ プロジェクトとチーム プロジェクト間のマッピングを削除したときに、他にマップされているエンタープライズ プロジェクトがない場合、マップを解除したチーム プロジェクトのすべての作業項目の種類について、フォームから [Project Server] タブが削除されます。

チーム プロジェクトのマップを解除する前に、エンタープライズ プロジェクト計画のタスクと Team Foundation の作業項目の間の関連付けを削除する必要があります。 関連付けを削除するには、エンタープライズ プロジェクト計画からタスクを削除し、計画を発行して、同期が完了するのを待機します。 別の方法として、/force フラグを使用して、プロジェクトのタスクと作業項目との関連付けを削除することもできます。

ヒント

タスクを削除する場合は、必要に応じてこれを別の計画にコピーして、削除するタスクを記録しておくことができます。

ページのトップへ

特に指定されていない場合、それぞれの例に適用される値は次のとおりです。

  • PWA のインスタンスの URL: http://MyPWAServer/MyPWAInstance/

  • Team Foundation Server の URL: http://AdventureWorksServer:8080/tfs/

  • チーム プロジェクト コレクションの URL: http://AdventureWorksServer:8080/tfs/Collection0

マップされているエンタープライズ プロジェクトを一覧表示する

次の例では、AdventureWorksServer の Collection0 にあるチーム プロジェクトにマップされているエンタープライズ プロジェクトを一覧表示します。

TfsAdmin ProjectServer /GetMappedProjects /collection:http://AdventureWorksServer:8080/tfs/Collection0

エンタープライズ プロジェクトをチーム プロジェクトにマップする

次の例では、MyEnterpriseProjA を AdventureWorksServer の Collection0 にある MyTeamProjB にマップし、ユーザー ストーリーとタスクを同期に含めることを指定します。

TfsAdmin ProjectServer /MapPlanToTeamProject /collection:http://AdventureWorksServer:8080/tfs/Collection0/ enterpriseproject:MyEnterpriseProjA /teamproject:MyTeamProjB /workitemtypes:"User Story, Task"

エンタープライズ プロジェクトとチーム プロジェクトのマップを削除する

次の例では、MyEnterpriseProjA と AdventureWorksServer の Collection0 にある MyTeamProjB との関連付けを削除します。

TfsAdmin ProjectServer /UnmapPlanFromTeamProject /collection:http://AdventureWorksServer:8080/tfs/Collection0/ enterpriseproject:MyEnterpriseProjA /teamproject:MyTeamProjB

ページのトップへ

参照

その他の技術情報

Team Foundation Server と Project Server の統合の構成

TFSAdmin ProjectServer コマンドを使用することによる Project Server 統合の管理