Project Online からユーザー データをエクスポートする
組織は、Project Online環境から特定のユーザーのコンテンツをエクスポートできます。 このコンテンツをエクスポートするには、グローバル管理者Office 365次の手順に従います。
Project Admins と連携する
会社によっては、Office 365グローバル管理者は、Office 365管理タスクの管理に関する知識はありますが、Project Online管理についてはほとんど知らない場合があります。 このような場合は、Office 365グローバル管理者が PWA サイト管理者と協力してこれらのタスクを実行することをお勧めします。 たとえば、Office 365グローバル管理者は、PowerShell スクリプトを実行してすべての PWA サイトを検索するのに最適ですが、PWA 管理者と協力して残りの手順を実行し、各 PWA サイトのビジネス ルールと構成に関するヘルプを行う必要があります。
手順 1 - エクスポート スクリプト ファイルをダウンロードする
この記事の手順では、いくつかの PowerShell スクリプト ファイルを使用する必要があります。 この記事で参照されているスクリプト ファイルは、Project Online User Content Export および Delete スクリプト パッケージに含まれています。 参照できる場所にファイルをダウンロードして解凍します。
このパッケージに含まれる一部のファイルは、Project Online内のユーザー データを削除するために使用され、この記事では必要ありません。
ファイルのブロックを解除する
PowerShell でユーザーを作成するには、Project Online ユーザー コンテンツエクスポートおよび削除スクリプト パッケージでダウンロードしたファイルのブロックを解除する必要があります。 インターネットからダウンロードしたスクリプトの実行は既定では許可されていないためです。 ファイルのブロックを解除するには、次の操作を行います。
エクスプローラーで、zip ファイルを保存した場所に移動します。
zip ファイルを右クリックし、[ プロパティ] をクリックします。
[ 全般 ] タブで、[ ブロック解除] を選択します。
[OK] をクリックします。
zip ファイルに含まれるすべてのファイルのブロックを解除する必要があります。 ファイルの [プロパティ] ページの [全般] タブに [ブロック解除] チェック ボックスが表示されなくなったかどうかを確認することで、個々のファイルでこれを確認できます。
注:
解凍されたファイルにのみアクセスできる場合は、各ファイルのブロックを個別に解除することもできます。
手順 2 - Office 365環境内のすべてのProject Web App サイトを見つける
グローバル管理者は、SharePoint Online 管理シェルを使用して SharePoint Online 管理 センターに接続し、Get-SPOSite PowerShell コマンドレットを実行して、Office 365環境内の各 PWA サイトの URL の一覧を取得する必要があります。
注:
Get-SPOSite PowerShell コマンドレットを実行するには、グローバル管理者または SharePoint 管理者ロールである必要があります。
- SharePoint Online Management Shell モジュールで、Connect-SPOService コマンドレットを使用して SharePoint Online 管理 Center に接続します。
Connect-SPOService -URL <AdminSiteURL>
例:
Connect-SPOService -URL https://contoso-admin.sharepoint.com
- SharePoint Online 管理 センターに接続したら、Get-SPOSite PowerShell コマンドレットを使用して、Office 365環境内のすべての PWA サイトを検索します。
Get-SPOSite | ?{$_.PWAEnabled -eq "Enabled"} | ft -a Url,Owner
正常に実行されると、Office 365環境内のすべての PWA サイトとサイト所有者の一覧が表示されます。
手順 3 - 各 PWA サイトでユーザーのリソース ID を検索する (省略可能)
注:
ユーザーのログイン アカウントがある場合、この手順は省略可能です。 エクスポート スクリプトを実行するには、ユーザーの ログイン アカウント または各 PWA サイトの リソース ID が 必要です。
ユーザーのリソース ID を検索する場合、PWA サイト管理者は、前の手順で見つけた各 PWA サイトで次の操作を実行できます。
[Project Online サーバーの設定] の [エンタープライズ データ] セクションで、[リソース センター] をクリックします。
[ リソース センター ] ページの [ リソース名] 列で、ユーザーの名前を見つけて、その行を見て、[ 一意の ID ] 列に値が見つかるかどうかを確認します。 この値は、ユーザーのリソース ID です。 たとえば、次の図では、Aaron Painter の [リソース ID] の値が [一意の ID] 列に一覧表示されています。
場合によっては、一意の ID 列を使用できないようにテーブルがカスタマイズされる場合があります。 その場合は、ユーザー名の左側にあるチェック ボックスをオンにし、リボンの [リソース] タブにある [編集] をクリックし、次の手順に進みます。
特定のユーザーの [ リソースの編集] ページで、[ システム識別データ ] セクションに移動し、 GUID の一覧の値を見つけます。 GUID は、この PWA サイトのユーザー リソース ID です。
注:
複数の PWA サイトがある場合、各 PWA サイトは同じユーザーに対して異なるリソース ID を持ちます。 ユーザーのリソース ID と特定の PWA サイト URL をペアリングしてください。
手順 4 - PWA サイトからユーザーのデータをエクスポートする
次に、Office 365環境の各 PWA サイトからユーザーのデータをエクスポートするには、ExportProjectUserContent PowerShell スクリプトを実行する必要があります。 スクリプトを実行するには、自分と環境が前提条件を満たしていることを確認してから、スクリプトを実行する必要があります。
ExportProjectUserContent PowerShell スクリプトは、Project Online ユーザー コンテンツのエクスポートおよび削除スクリプト パッケージに含まれています。
前提条件
Project Onlineのライセンス: Project Online PremiumまたはProject Online Professional ライセンスを割り当てる必要があります。
Project Online デスクトップ クライアント: Project Online デスクトップ クライアントが必要で、Project Online インスタンスに接続されます。 Project Online デスクトップ クライアントは、Project Online PremiumまたはProject Online Professional ライセンスに含まれています。
Project クライアントを Project Online インスタンスに接続するには:
[ ファイル ] タブをクリックして Backstage ビューを開きます。 [ 情報] をクリックし、[アカウントの 管理 ] をクリックします。
[アカウントのProject Web App] ダイアログ ボックスで、[追加] をクリックします。
[ アカウントのプロパティ ] ダイアログ ボックスの [アカウント名] ボックスに、このアカウントの 名前 を入力します。
[Project Server URL]\(プロジェクト サーバー URL\) ボックスに、接続先の PWA サイトの URL を 入力します。
[OK] をクリックします。
[アカウントのProject Web App] ダイアログ ボックスで、[既定に設定] を選択し、[OK] をクリックします。
Project を再起動し、PWA サイトにログオンします。
アクセス許可: スクリプトを実行するために必要なアクセス許可を持つためには、少なくとも次のいずれかの操作を行う必要があります。
スクリプトを実行している PWA サイトにサイト コレクション管理者として自分を追加します。
プロジェクトのアクセス許可モードの場合は、Project Online インスタンスに対する [ユーザーとグループの管理] と [Access Project Server Reporting Service] アクセス許可を割り当てます。 SharePoint アクセス許可モードの場合は、グローバル管理者または SharePoint 管理者ロールにいます。
ExportProjectUserContent スクリプトを実行する
ExportProjectUserContent.ps1 PowerShell スクリプトを使用して、ユーザーのデータをエクスポートします。
- SharePoint Online 管理シェルで、ExportProjectUserContent スクリプトを実行します。 スクリプトを実行するときは、次のパラメーターを構成する必要があります。
パラメーター |
説明 |
-Url |
PWA サイトの URL |
-ResourceID |
ユーザーのリソース ID。 |
- loginName |
ユーザーのログイン名。 |
-OutputDirectory |
エクスポート ファイルを格納する場所。 |
-地域 |
この省略可能なパラメーターは、使用しているOffice 365環境を指定します。 このパラメーターに使用できる値は次のとおりです。 既定値 - Project Public Cloud。 中国 - ガラティン。 ドイツ - BlackForest。 ITAR - Office 365 米国 Government。 パラメーターを使用しない場合は、既定値 (既定値) が使用 されます 。 |
スクリプトを実行するには、ユーザーのリソース ID またはログイン名を指定します。
ユーザー リソース ID を使用して ExportProjectUser スクリプトを実行するには
PowerShell では、上記のパラメーターで次のコマンドを使用します。
.\ExportProjectUserContent.ps1 -Url <PwaSiteURL> -ResourceUid <UsersResourceID> -OutputDirectory <LocationToStoreOutput>
たとえば、Costoso PWA1 サイト (リソース ID が cb5c91cf-fd6b-e711-80d0-00155da4a406 のユーザーのサイト URL https://contoso/sites/pwa1) ) からユーザー データをエクスポートし、エクスポート ファイルを c:\pwa1siteOutput に保存する場合は、次のように入力します。
.\ExportProjectUserContent.ps1 -Url https://contoso/sites/pwa1 -ResourceUid cb5c91cf-fd6b-e711-80d0-00155da4a406 -OutputDirectory c:\pwa1siteOutput
ユーザーログイン名を使用して ExportProjectUser スクリプトを実行するには
Powershell では、上記のパラメーターを使用して次のコマンドを使用します。
.\ExportProjectUserContent.ps1 -Url <PwaSiteURL> -LoginName <UsersLoginName> -OutputDirectory <LocationToStoreOutput>
たとえば、Costoso PWA1 サイト (ログイン名 AdamB@contoso.onmicrosoft.comが のユーザーのhttps://contoso/sites/pwa1)サイト URL) からユーザー データをエクスポートし、エクスポート ファイルを c:\pwa1siteOutput に保存する場合は、次のように入力します。
.\ExportProjectUserContent.ps1 -Url https://contoso/sites/pwa1 -LoginName AdamB@contoso.onmicrosoft.com -OutputDirectory c:\pwa1siteOutput
スクリプトが正常に実行されると、エクスポートされたすべてのデータが指定した -OutputDirectory に格納されます。
エクスポートする特定の機能関連ユーザー データ ファイルを選択する
受信するエクスポートされたユーザー コンテンツの一部には、機能固有のユーザー情報を含む多数の json 形式のファイルが含まれます。 たとえば、Security.json ファイルには、ユーザーのセキュリティ グループ、カテゴリ、アクセス許可の設定に関するデータが含まれています。 これらの機能関連の json ファイルについては、次のセクションで詳しく説明します。 既定では、ExportProjectUserContent スクリプトを実行すると、27 個の機能関連の json ファイルがすべて受信されます。 ただし、 -Options パラメーターを使用して、ダウンロードする特定の json ファイルを選択できます。 これらには次のコマンドレットがあります。
-Options 値 | 受信した Json ファイル |
---|---|
すべて |
すべての機能関連の json ファイル、すべてのプロジェクト固有の json ファイル、およびすべてのプロジェクトリスト ファイル。 |
タイムシート |
Timesheets_Reporting.json、Timesheets_page#.json Timesheets_page#.json の場合、ページごとにファイルが取得されます。 |
TaskStatus |
Rules.json、TaskStatus_AssignmentsHistory_page#.json、TaskStatus_AssignmentsSaved.json、TaskStatus_AssignmentsSubmitted.json |
セキュリティ |
Security.json |
ポートフォリオ |
BusinessDrivers.json、DriverPrioritizations.json、PortfolioAnalyses.json |
StatusReports |
StatusReports.json |
Engagements |
Engagements_page#.json |
ResourcePlans |
ResourcePlans_page#.json、ReportingResourcePlans.json |
Projects |
DraftProjectList.xml、PublishedProjectList.xml。 ReportingProjectList また、ユーザーが参加していたプロジェクトごとに、次のいずれか 1 つを受け取ります。 Project_projName_draft.json、Project_projName_draft.mpp、Project_projName_draft.xml、 Project_projName_published.json、Project_projName_ published.mpp、Project_projName_ published.xml、 Project_projName_reporting.json、Project_projName_reporting_Tasks、Project_projName_reporting_Assignments、Project_projName_reporting_Resources、Project_projName_reporting_Baselines、Project_projName_reporting_TaskTimephased、Project_projName_reporting_AssignmentTimephased、Project_projName_reporting_TaskBaselineTimephased、Project_projName_reporting_ AssignmentBaselineTimephased |
UserViewSettings |
UserViewSettings.json |
-Options パラメーターを使用すると、特定の機能について PWA サイトからユーザー データをエクスポートする場合に役立ちます。 たとえば、ポートフォリオ分析機能でユーザーのデータのみに関心がある場合は、ポートフォリオの値を使用して -Options パラメーターを実行できます。
.\ExportProjectUserContent.ps1 -Url https://contoso/sites/pwa1 -ResourceUid cb5c91cf-fd6b-e711-80d0-00155da4a406 -OutputDirectory c:\pwa1siteOutput -Options Portfolio
これにより、ポートフォリオ分析機能 (BusinessDrivers.json、DriverPrioritizations.json、PortfolioAnalyses.json) に関連するユーザーのデータを含む 3 つの json ファイルをエクスポートできます。
手順 5 - エクスポートしたコンテンツを確認する
ExportProjectUserContent PowerShell スクリプトを正常に実行すると、コマンドの実行時に指定した出力ディレクトリに次の出力が表示されます。
プロジェクト リスト ファイル - ユーザーが参加していた Project Draft スキーマと Published スキーマに含まれるプロジェクトの一覧を提供する 3 つの.xml ファイルを受け取ります。 これは、ユーザーが少なくとも次のいずれかとしてプロジェクトに関与したことを意味します。
プロジェクトの所有者でした。
プロジェクトでタスクが割り当てられている。
プロジェクト内のタスクの割り当て所有者です。
プロジェクト内のタスクのステータス マネージャーです。
次の 3 つの.xml ファイルは次のとおりです。
名前 |
説明 |
DraftProjectList.xml |
上の条件に対応する下書きスキーマのプロジェクトの一覧。 |
PublishedProjectList.xml |
上記の条件に対応する発行済みスキーマのプロジェクトの一覧。 |
ReportingProjectList.xml |
上記の条件に対応するレポート スキーマからのプロジェクトの一覧。 |
プロジェクトの一覧は、3 つの.xml ファイルごとに若干異なる場合があります。 たとえば、ユーザーはプロジェクトを保存できますが、発行することはできません。つまり、DraftProjectList.xml ファイルには表示されますが、PublishedProjectList.xmlファイルやReportingProjectList.xml ファイルには表示されません。
プロジェクト管理者は、プロジェクトリスト.xmlファイルを使用して、分析対象のプロジェクト固有のエクスポート ファイルに関する情報を提供して、エクスポートされたコンテンツをユーザーと共有する必要がある量を決定できます。
ProjectList.xml ファイルの 3 つすべてに、各プロジェクトの次のプロパティが表示されます。
プロパティ |
説明 |
SiteId |
プロジェクトが存在する PWA サイトの一意識別子。 |
Proj_UID |
プロジェクトの一意識別子。 |
Proj_Name |
プロジェクトの名前 |
機能関連ファイル - ユーザーが参加している PWA サイトごとに、次の機能固有の .json ファイルが指定された出力ディレクトリにエクスポートされます。 機能固有のファイルには、PWA サイト全体での機能の使用に関連するユーザー データが含まれます。 たとえば、Drivers.json ファイルには、ユーザーが作成または所有しているポートフォリオ分析ビジネス ドライバーに関するデータが含まれます。 ユーザーが特定の PWA サイトの機能に関連するデータを持っていない場合、ファイルにはデータが含まれます。
機能固有の .json ファイルには、次のものが含まれます。
名前 | 説明 |
---|---|
AdminAudit |
Project Web Appサーバー設定によってデータが変更されます。 |
BusinessDrivers |
ポートフォリオ分析のビジネス ドライバー データ。 |
予定表 |
エンタープライズ 予定表データ。 |
CustomFields |
ユーザー設定フィールド データ。 |
代表 団 |
委任データ。 |
DriverPrioritizations |
ビジネス ドライバーの優先順位付けデータ。 |
Engagements |
リソース エンゲージメント データ。 |
LookupTables |
ルックアップ テーブル データ。 |
PortfolioAnalysis |
ポートフォリオはデータを分析します。 |
QueueJobs |
ユーザー ジョブに関するデータは、キュー サービスを介して処理されます。 |
ReminderEmails |
リマインダーメールデータ。 |
ReportingResource |
リソース レポート データ。 |
Resource |
リソース データ。 |
ResourcePlans |
リソース 計画データ。 |
ルール |
ルール データ。 |
セキュリティ |
セキュリティ グループ、カテゴリ、アクセス許可に関するデータ。 |
StatusReports |
状態レポート データ。 |
SubscribedReminders |
サブスクライブされたアラーム データ。 |
TaskStatus_AssignmentsHistory |
割り当ての履歴データの状態設定。 |
TaskStatus_AssignmentsSaved |
ステータス割り当てによってデータが保存されます。 |
TaskStatus_AssignmentsSubmitted |
ステータス割り当てによってデータが送信されます。 |
タイムシート |
タイムシートに関するデータ。 |
Timesheets_Reporting |
タイムシートに関するレポート データ。 |
UnsubscribedAlerts |
サブスクライブ解除されたアラート データ。 |
UserViewSettings |
ユーザー ビュー設定データ。 |
ワークフロー |
プロジェクト ワークフロー データ。 |
WorkspaceItems |
プロジェクト サイトからの SharePoint アイテムに関するデータ。 |
特定の機能固有の json ファイルは大きくなる可能性があるため、パフォーマンスを向上させるために、次の json ファイルが複数のファイル間で生成されます。
Engagements.json
ResourcePlans.json
Timesheets.json
TaskStatus_AssignmentHistory.json
注:
各機能固有の .json ファイルに含まれるオブジェクトの詳細については、「json オブジェクト定義のエクスポート」の「機能固有のデータ」セクションProject Online参照してください。
プロジェクト固有のファイル - ユーザーがプロジェクトの一部である場合、それらのプロジェクトごとに、複数の個別のファイルが出力ディレクトリにエクスポートされます。 これは、ユーザーが次のいずれかの特定のプロジェクトの一部である場合に発生します。
プロジェクト所有者
プロジェクトでタスクが割り当てられている
プロジェクト内のタスクの割り当て所有者です
プロジェクト内のタスクのステータス マネージャーです
プロジェクト固有のデータは、データが 1 つのプロジェクトに固有であるという点で、機能関連データとは異なります。 機能関連データには、ユーザーが参加していたが 1 つの機能に関連する PWA サイト内の多くのプロジェクトのユーザー データを含めることができます。
注:
受け取るプロジェクト固有のファイルすべてに、特定のプロジェクトの プロジェクト名のプレフィックスが付きます。 たとえば、プロジェクトに Project1 のプロジェクト名がある場合、このセクションで説明するすべてのプロジェクト固有のファイルの先頭に Project1 が付きます。
ユーザーが参加しているプロジェクトごとに、次の 3 つのファイル セットが受信されます。
- 下書きデータベースと発行済みデータベースからのプロジェクトの.xml ファイル。
名前 |
説明 |
<projectName>_draft.xml |
.xml形式で保存された下書きスキーマのプロジェクト ファイル。 |
<projectName>_published.xml |
.xml形式で保存された発行済みスキーマのプロジェクト ファイル。 |
注:
これらのファイルに含まれる Project XML データについては、「Project XML データ交換スキーム リファレンス」を参照 してください。
- 下書きデータベースと発行済みデータベースからのプロジェクトの .mpp ファイル:
名前 |
説明 |
<projectName>_draft.mpp |
Project .mpp ファイルとして保存された下書きスキーマのプロジェクト ファイル。 |
<projectName>_published.mpp |
Project .mpp ファイルとして保存された発行済みスキーマのプロジェクト ファイル。 |
注:
.mpp ファイルは、Project Professional 2019、Project Professional 2016、または Project Online Desktop クライアントで開くことができます。 エクスポートした .mpp ファイルを Project Online または Project Server に保存することはサポートされていません。
- レポート スキーマからプロジェクトの .json ファイルを 8 つ作成します。
名前 | 説明 |
---|---|
Reporting_AssignmentBaselineTimephased |
レポート スキーマからのプロジェクトの割り当て基準のタイムフェーズ データ。 |
Reporting_AssignmentTimephased |
レポート スキーマからのプロジェクトの割り当てタイムフェーズ データ。 |
Reporting_ProjectBaseline |
レポート スキーマからのプロジェクトのプロジェクト ベースライン データ。 |
Reporting_Tasks |
レポート スキーマからプロジェクトのデータをタスクします。 |
Reporting_Assignments |
レポート スキーマからのプロジェクトの割り当てリソース データ。 |
Reporting_Resources |
レポート スキーマからプロジェクトのデータをリソースします。 |
Reporting_TaskBaselineTimephased |
レポート スキーマからのプロジェクトのタスク ベースラインのタイムスケール データ。 |
Reporting_TaskTimephased |
レポート スキーマからのプロジェクトのタスクタイムスケール データ。 |
注:
各 .json ファイルに含まれるオブジェクトの詳細については、「エクスポート json オブジェクト定義」の「レポート データ」セクションのプロジェクト固有のユーザー データProject Online参照してください。
- 下書きスキーマ、発行済みスキーマ、およびレポート スキーマからのプロジェクトのメタデータを含む 3 つの .json ファイル:
名前 |
説明 |
<projectName>_draft.json |
下書きスキーマのプロジェクト メタデータ ファイル |
<projectName>_published.json |
発行済みスキーマのプロジェクト メタデータ ファイル |
<projectName>_reporting.json |
レポート スキーマからのプロジェクト メタデータ ファイル |
注:
各 .json ファイルに含まれるオブジェクトの詳細については、「json オブジェクト定義をエクスポートする」の「プロジェクト固有のメタデータ ファイル」セクションProject Online参照してください。
手順 6 - カスタム ビュー、カスタム フィルター、添付ファイル、マクロを検索して保存する
エクスポートされたユーザー コンテンツを受信した後、データを使用して、ユーザーのカスタム ビュー、カスタム フィルター、カスタム テーブル、添付ファイル、マクロを検索できます。 これらを見つけるには、検索するプロジェクトごとに MPP ファイルと XML ファイルが必要です。 これを行う方法の詳細については、「Project Onlineでカスタマイズされたユーザー項目を検索する」および「Project Server ユーザー エクスポート データ」を参照してください。
マスター プロジェクトと挿入プロジェクトに関する考慮事項
前述のように、エクスポート スクリプトは、ユーザーが所有者として参加していたプロジェクト、割り当てられたタスク、タスクの割り当て所有者、またはタスクの状態マネージャーであるプロジェクトのみをエクスポートします。 ユーザーが挿入されたプロジェクトの一部であり、マスター プロジェクトではない場合は、挿入されたプロジェクトのみがエクスポートされます。 同様に、ユーザーがマスター プロジェクトの一部であり、挿入されたプロジェクトの一部ではない場合は、マスター プロジェクトのみがエクスポートされます。
ユーザーが参加していたマスター プロジェクトを保存する場合、メッセージが表示されたら、関連付けられている挿入されたプロジェクトを保存する必要はありません。
Project Home のお気に入りプロジェクトと最近表示されたプロジェクトに関する考慮事項
Project Home でユーザーのお気に入りと最近表示されたプロジェクトのデータには、アプリ内でのみ直接アクセスできます。 ユーザーは、Office 365 アカウントの資格情報を使用してログインし、Project Home ページにアクセスし、一覧に表示されているプロジェクトを表示する必要があります。
Office 365にログインします。
ブラウザーで、URL project.microsoft.com に移動して Project Home ページを開きます。
[Project Home]\(プロジェクトのホーム\) ページで、[お気に入り] セクションと [最近使ったプロジェクト] セクションに一覧表示されているプロジェクトのスクリーンショットを撮ります。