共用方式為


從 Project Online 匯出使用者資料

Microsoft Project Online 將於 2026 年 9 月淘汰。 如需詳細資訊,請參閱此公告: Microsoft Project Online 即將淘汰:您需要知道的內容

您的組織可以從 Project Online 環境匯出特定使用者的內容。 若要匯出此內容,SharePoint 系統管理員可以遵循下列步驟:

與您的專案管理員合作

視您的公司而定,您的 SharePoint 系統管理員可能瞭解如何管理 SharePoint 系統管理工作,但可能對 Project Online 系統管理知之甚少。 如果是這種情況,建議 SharePoint 系統管理員與其 PWA 網站系統管理員共同作業,以完成這些工作。 例如,SharePoint 系統管理員可能最適合執行 PowerShell 腳本來尋找所有 PWA 網站,但可能需要與 PWA 系統管理員共同作業,以完成其餘步驟,並取得每個 PWA 網站商務規則和設定的相關說明。

步驟 1 - 下載匯出指令碼檔案

您將需要使用數個 PowerShell 腳本檔來完成本文中的程式。 本文中參考的腳本檔包含在 Project Online 使用者內容匯出和刪除腳本套件中。 將檔案下載並解壓縮到您可以參考的位置。

此套件中包含的某些檔案可用來刪除 Project Online 中的使用者數據,而且本文不需要。

解除封鎖您的檔案

您必須「解除封鎖」您在 Project Online 使用者內容匯出和刪除腳本套件中下載的檔案,才能在 PowerShell 中使用它們。 這是因為根據預設,系統不允許執行從網際網路下載的指令碼。 請執行下列動作來解除封鎖檔案:

  1. 在檔案總管中,移至儲存 zip 檔案的位置。

  2. 右鍵單擊 zip 文件,然後單擊屬性。

  3. 在 [ 一般 ] 索引標籤上,選取 [ 解除封鎖]。

    解除封鎖檔案。

  4. 按一下 確定。

zip 檔案中包含的所有檔案現在都應該已解除封鎖。 您可以在個別檔案中驗證這一點,方法是檢查檔案的「屬性」頁面的「一般」標籤中是否不再出現「解除封鎖」核取方塊選項。

注意事項

如果您只能存取解壓縮的檔案,也可以個別解除封鎖每個檔案。

步驟 2 - 尋找 Office 365 環境中的所有 Project Web App 網站

SharePoint 系統管理員必須使用 SharePoint Online 管理命令介面連線到其 SharePoint Online 管理員中心,並執行 Get-SPOSite PowerShell Cmdlet,以取得其 Office 365 環境中每個 PWA 網站的 URL 清單。

注意事項

若要執行 Get-SPOSite PowerShell Cmdlet,您必須是 SharePoint 系統管理員。

  1. 在 SharePoint Online 管理命令介面模組中,使用 Connect-SPOService Cmdlet 連線到 SharePoint Online 管理員中心:

    Connect-SPOService -URL <AdminSiteURL> 
    

    例如:

    Connect-SPOService -URL https://contoso-admin.sharepoint.com 
    
  2. 連線到 SharePoint Online 管理員中心之後,請使用 Get-SPOSite PowerShell Cmdlet 來尋找 Office 365 環境中的所有 PWA 網站:

    Get-SPOSite | ?{$_.PWAEnabled -eq "Enabled"} | ft -a Url,Owner
    

    成功執行之後,將會顯示 Office 365 環境中所有 PWA 網站和網站擁有者的清單。

步驟 3 - 在每個 PWA 網站中尋找使用者的資源識別碼 (選擇性)

注意事項

如果您有使用者的登入帳戶,則此步驟是選用的。 您需要每個 PWA 站台的使用者 登入帳戶資源標識碼 ,才能執行匯出腳本。

如果您想要尋找使用者的資源識別碼,PWA 網站系統管理員可以在您在上一個步驟中找到的每個 PWA 網站上執行下列動作:

  1. 在 [Project Online Server 設定] 的 [企業數據] 區段中,按兩下 [資源中心]。

  2. [資源中心 ] 頁面的 [資源名稱] 資料行中,找出使用者的名稱,然後查看該資料列,看看您是否可以在 [唯一識別碼] 資料行中找到值。 此值是使用者的資源識別碼。 例如,在下圖中,您可以看到 Aaron Painter 的資源 ID 值列在 [唯一 ID] 欄中。

    使用者的資源 ID 在 [唯一識別碼] 欄中。

    在某些情況下,您的表格可能會自訂,因此無法使用「唯一 ID」欄。 如果是,請選取使用者名稱左側的複選框,然後按一下功能區中 [資源] 索引標籤中的 [編輯],然後移至下一個步驟。

  3. 在特定使用者的 [編輯資源 ] 頁面上,移至 [ 系統識別資料 ] 區段,並尋找針對 GUID 列出的值。 GUID 是此 PWA 網站的使用者資源識別碼。

    尋找使用者資源 ID。

注意事項

如果您有多個 PWA 月臺,則每個 PWA 月臺都會針對相同的使用者有不同的資源識別碼。 請務必將您為使用者找到的資源識別碼與特定的 PWA 網站 URL 配對。

步驟 4 - 從 PWA 網站匯出使用者的數據

接下來,您必須執行 ExportProjectUserContent PowerShell 腳本,才能從 Office 365 環境中的每個 PWA 網站匯出使用者的數據。 若要執行指令碼,您必須確定您和您的環境符合必要條件,然後才能執行指令碼。

ExportProjectUserContent PowerShell 腳本隨附於 Project Online 使用者內容匯出和刪除腳本套件

必要條件

  • Project Online 的授權:您必須獲指派 Project Online 進階版Project Online 專業版授權。

  • Project Online 桌面用戶端:您將需要 Project Online 桌面用戶端,並連線到 Project Online 實例。 Project Online 桌面用戶端隨附於 Project Online 進階版Project Online 專業版授權。

若要將 Project 用戶端連線到 Project Online 實例:

  1. 按一下 「檔案 」標籤以開啟「後台」檢視。 按一下 [資訊],然後按一下 [管理 帳戶]。

  2. [Project Web App 帳戶] 對話方塊中,按一下 [新增]。

  3. [帳戶屬性] 對話方塊中,在 [帳戶名稱 ] 方塊中輸入此帳戶的名稱。

  4. [Project Server URL ] 方塊中輸入您要連線的 PWA 網站 URL。

  5. 按一下確定

  6. [Project Web App 帳戶] 對話方塊中,選取 [設定為預設值],然後按一下 [確定]。

  7. 重新啟動 Project,然後登入 PWA 網站。

  • 權限:若要擁有執行指令碼所需的權限,您必須至少執行下列其中一項:

    • 將自己新增為網站集合系統管理員,以執行腳本的 PWA 網站。

    • 如果您處於 Project 權限模式,則會獲指派 [管理使用者和群組] 以及 Project Online 實例的 [存取 Project Server Reporting Service] 權限。 如果您處於 SharePoint 權限模式,請成為 SharePoint 系統管理員。

執行 ExportProjectUserContent 腳本

使用 ExportProjectUserContent.ps1 PowerShell 腳本匯出使用者的資料。

  1. SharePoint Online 管理命令介面中,執行 ExportProjectUserContent 腳本。 執行指令碼時,您需要設定下列參數:
   
參數
描述
-網址
PWA 網站的 URL
-資源ID
使用者的資源識別碼。
-LoginName
使用者的登入名稱。
-輸出目錄
儲存匯出檔案的位置。
-區
此選擇性參數會指定您正在使用的 Office 365 環境。 您可以用於此參數的值包括:
預設值 - Project 公有雲。
中國 - 加勒廷。
德國 - 黑森林。
ITAR - Office 365 美國政府。
如果未使用參數,則會使用預設 值 ( 預設 ) 。

您可以選擇透過指定使用者的資源 ID 或登入名稱來執行指令碼。

若要使用使用者資源識別碼執行 ExportProjectUser 指令碼

您可以在 PowerShell 中使用下列命令,搭配上面列出的參數:

.\ExportProjectUserContent.ps1 -Url <PwaSiteURL> -ResourceUid <UsersResourceID> -OutputDirectory <LocationToStoreOutput>

例如,如果您想要從資源 ID 為 cb5c91cf-fd6b-e711-80d0-00155da4a406 的使用者的 Costoso PWA1 網站 (網站 https://contoso/sites/pwa1) URL 匯出使用者資料,並將匯出檔案儲存至 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 網站 (的 https://contoso/sites/pwa1) 使用者匯出使用者資料,以取得 登入名稱 AdamB@contoso.onmicrosoft.com的使用者的網站 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 檔案。 包括下列各項:

-期權值 您收到的 Json 檔案
全部
所有功能相關 json 檔案、所有專案特定 json 檔案,以及所有專案清單檔案。
時程表
Timesheets_Reporting.json、Timesheets_page#.json
對於Timesheets_page#.json,您將獲得每頁的文件。
任務狀態
Rules.json、TaskStatus_AssignmentsHistory_page#.json、TaskStatus_AssignmentsSaved.json、TaskStatus_AssignmentsSubmitted.json
安全性
Security.json
作品集
BusinessDrivers.json、DriverPrioritizations.json、PortfolioAnalyses.json
狀態報告
StatusReports.json
Engagements
Engagements_page#.json
資源計劃
ResourcePlans_page#.json、ReportingResourcePlans.json
專案
DraftProjectList.xml , PublishedProjectList.xml. 報告專案清單
對於使用者所參與的每個專案,您也會收到下列其中一項:
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
UserView設定
UserViewSettings.json

如果您想要從 PWA 網站匯出特定功能的使用者資料,使用 -Options 參數會很有幫助。 例如,如果您只關心「投資組合分析」功能中的使用者資料,則可以使用「投資組合」的值執行 -Options 參數:

.\ExportProjectUserContent.ps1 -Url https://contoso/sites/pwa1 -ResourceUid cb5c91cf-fd6b-e711-80d0-00155da4a406 -OutputDirectory c:\pwa1siteOutput -Options Portfolio

這可讓您匯出三個json檔案,其中包含與投資組合分析功能相關的使用者資料 (BusinessDrivers.json、DriverPrioritizations.json PortfolioAnalyses.json) 。

步驟 5 - 檢閱匯出的內容

成功執行 ExportProjectUserContent PowerShell 腳本之後,您會在執行命令時指定的輸出目錄中產生下列輸出:

  • 專案清單檔案 - 您將收到三個 .xml 檔案,這些檔案提供使用者所屬專案草稿和已發佈結構描述中包含的專案清單。 這表示使用者至少以下列其中一項方式參與專案:

    • 是項目所有者。

    • 在專案中已指派給他或她的任務。

    • 是專案中任務的指派擁有者。

    • 是專案中任務的狀態管理員。

      這三個 .xml 檔案是:

         
      名稱
      描述
      DraftProjectList.xml
      草稿結構描述中符合上述條件的專案清單。
      PublishedProjectList.xml
      來自 已發佈結構描述 對應至上述條件的專案清單。
      ReportingProjectList.xml
      報告結構描述中符合上述條件的專案清單。

    三個 .xml 檔案中的每一個專案清單可能略有不同。 例如,使用者可以儲存專案,但無法發佈專案,這表示專案會出現在 DraftProjectList.xml 檔案中,但不會出現在 PublishedProjectList.xml 或 ReportingProjectList.xml 檔案中。

    專案管理員可以使用專案清單 .xml 檔案,為他們提供有關他們有興趣分析哪些專案特定匯出檔案的資訊,以決定應與使用者共用多少匯出內容。

    所有三個 ProjectList.xml 檔案都會針對列出的每個專案具有下列屬性:

       
    屬性
    描述
    SiteId
    專案所在之 PWA 網站的唯一識別碼。
    Proj_UID
    專案的唯一識別碼。
    Proj_Name
    專案名稱。
  • 功能相關檔案 - 針對使用者所屬的每個 PWA 網站,下列功能特定.json檔案將會匯出至指定的輸出目錄。 功能特定的檔案將包含使用者數據,因為它與整個 PWA 網站的功能使用相關。 例如,Drivers.json檔案將包含有關使用者建立或擁有的投資組合分析業務驅動程式的資料。 如果使用者沒有與特定 PWA 網站上的功能相關的數據,則檔案將不包含任何數據。

    特定功能的.json檔案包括:

    名稱 描述
    管理員稽核
    Project Web App 伺服器設定會變更資料。
    業務驅動因素
    投資組合分析業務驅動數據。
    行事曆
    企業行事曆資料。
    自訂欄位
    自訂欄位資料。
    代表團
    委派資料。
    驅動程式優先順序
    業務驅動因素優先級數據。
    投入
    資源參與資料。
    查詢表格
    查閱資料表資料。
    投資組合分析
    投資組合分析數據。
    佇列工作
    使用者工作的相關資料會透過佇列服務進行處理。
    提醒電子郵件
    提醒電子郵件資料。
    報告資源
    資源報告資料。
    資源
    資源資料。
    資源計劃
    資源計劃資料。
    規則
    規則資料。
    安全性
    安全性群組、類別和許可權的相關資料。
    狀態報告
    狀態報告資料。
    訂閱提醒
    訂閱提醒資料。
    TaskStatus_AssignmentsHistory
    狀態指派歷程記錄資料。
    TaskStatus_AssignmentsSaved
    狀態指派會儲存資料。
    TaskStatus_AssignmentsSubmitted
    狀態指派會提交資料。
    時程表
    有關時間表的資料。
    Timesheets_Reporting
    報告有關時程表的資料。
    取消訂閱警示
    取消訂閱的警示資料。
    UserView設定
    使用者檢視設定資料。
    工作流程
    專案工作流程資料。
    工作區項目
    專案網站中 SharePoint 專案的相關資料。

    某些特定功能的 json 檔案可能會很大,因此為了提高效能,下列 json 檔案會在多個檔案中產生:

  • 專案特定檔案 - 如果使用者是任何專案的一部分,則對於每個專案,都會將數個個別檔案匯出至輸出目錄。 如果使用者是特定專案的一部分,則會發生這種情況,如下所示:

    • 專案擁有者

    • 在專案中指派給他或她的任務

    • 是專案中任務的指派擁有者

    • 是專案中任務的狀態管理員

      專案特定資料與特徵相關資料的不同之處在於,資料特定於單一專案。 功能相關數據可以包含使用者所屬 PWA 網站中許多專案的使用者數據,但與單一功能相關。

      注意事項

      對於您收到的所有專案特定檔案,它們將以特定專案的 專案名稱為前置詞。 例如,如果專案的專案名稱為 Project1,則本節中描述的所有專案特定檔案都會以 Project1 為前置詞。

      對於使用者所屬的每個專案,您將收到以下三組檔案:

      - 草稿和已發佈資料庫中專案的 .xml 檔案:

         
      名稱
      描述
      <專案名稱>_draft.xml
      草稿結構描述中的專案檔案儲存為 .xml 格式。
      <專案名稱>_published.xml
      已發佈結構描述中的專案檔案儲存為 .xml 格式。

    注意事項

    請參閱 專案 XML 資料交換配置參考 ,以瞭解這些檔案中包含的專案 XML 資料。

    - 草稿和已發佈資料庫中專案的.mpp檔案:

       
    名稱
    描述
    <專案名稱>_draft.mpp
    草稿結構描述中的專案檔案儲存為專案.mpp檔案。
    <專案名稱>_published.mpp
    已發佈結構描述中的專案檔案儲存為專案.mpp檔案。

    注意事項

    您可以使用 Project 專業版 2019、Project 專業版 2016 或 Project Online Desktop 用戶端開啟.mpp檔案。 不支援將匯出的.mpp檔案儲存回 Project Online 或 Project Server。

    - 報告結構描述中專案的八個.json檔案:

    名稱 描述
    Reporting_AssignmentBaselineTimephased
    來自報告結構描述的專案的指派比較基準時間階段資料。
    Reporting_AssignmentTimephased
    來自報告結構描述的專案的指派時間階段資料。
    Reporting_ProjectBaseline
    來自報告結構描述之專案的專案比較基準資料。
    Reporting_Tasks
    來自報告結構描述的專案專案任務資料。
    Reporting_Assignments
    來自報告結構描述的專案指派資源資料。
    Reporting_Resources
    來自報告結構描述的專案資源資料。
    Reporting_TaskBaselineTimephased
    來自報告結構描述的專案的任務基準時間分段資料。
    Reporting_TaskTimephased
    來自報告結構描述的專案任務時段資料。

    注意事項

    若要深入瞭解每個.json檔案中包含的物件,請參閱匯出 json 物件定義Project Online報告資料中的專案特定使用者資料一節。

    - 三個.json檔案,其中包含草稿、已發佈和報告結構描述中的專案中繼資料:

       
    名稱
    描述
    <專案名稱>_draft.json
    草稿結構描述中的專案中繼資料檔案
    <專案名稱>_published.json
    專案中繼資料檔案
    <專案名稱>_reporting.json
    來自報告結構描述的專案中繼資料檔案

    注意事項

    若要深入瞭解每個.json檔案中包含的物件,請參閱匯出 json 物件定義Project Online專案特定中繼資料檔案一節。

步驟 6 - 尋找並儲存自訂檢視、自訂篩選、附件和巨集

收到匯出的使用者內容後,您可以使用資料來尋找使用者的自訂檢視、自訂篩選器、自訂表格、附件和巨集。 要找到這些,您需要擁有要搜尋的每個專案的 MPP 和 XML 檔案。 如需如何執行此動作的詳細資訊,請參閱 在 Project Online 和 Project Server 使用者匯出資料中尋找自定義使用者專案

主要專案和插入專案的考量

如先前所述,匯出指令碼只會匯出使用者作為擁有者所屬、具有指派任務、是任務的指派擁有者或任務狀態管理員的專案。 當使用者屬於已插入專案,但不是主要專案的一部分時,只會匯出已插入的專案。 同樣地,如果使用者只是主專案的一部分,而不是任何插入的專案,則只會匯出主專案。

儲存使用者所屬的主要專案時,如果出現提示,您不需要儲存任何相關聯的插入專案。

Project Home 最愛和最近檢視專案的考量

使用者在 Project 首頁中最愛和最近檢視的專案資料只能直接在應用程式內存取。 使用者必須使用其 Office 365 帳戶認證登入,才能存取其專案首頁並查看列出的專案。

  1. 登入 Office 365。

  2. 在瀏覽器中,流覽至 URL project.microsoft.com 以開啟專案首頁。

  3. 在 [專案首頁] 上,擷取 [我的最愛] 和 [最近] 區段中列出的專案的螢幕擷取畫面。

    項目首頁。

另請參閱

Project Online 匯出 json 物件定義

從 Project Online 刪除使用者資料