當您嘗試在 Microsoft Dynamics CRM laptop client for Outlook 離線時,出現錯誤訊息:「在動作 saInsert 期間移動實體 [EntityName] 的資料失敗,countRows=[CountNumber]。如需協助,請洽您的系統管理員」

文章翻譯 文章翻譯
文章編號: 916165 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

徵狀

當您嘗試在 Microsoft Dynamics CRM laptop client for Microsoft Office Outlook 離線時,可能會收到下列錯誤訊息:
在動作 saInsert 期間移動實體 EntityName 的資料失敗,countRows=CountNumber。如需協助,請洽您的系統管理員。
注意 在這個訊息中,EntityName 是實際實體名稱的預留位置,而 CountNumber 是資料列實際數目的預留位置。

事件記錄檔會記錄類似下列的錯誤訊息:
事件類型:錯誤
事件來源:MSCRMOfflineSync
事件類別:無
事件識別碼: 6000
描述:離線同步處理期間發生錯誤。請嘗試再次離線,或重新啟動 Microsoft Outlook。GetBCPFile() 在實體 <Case> 插入動作期間失敗,batchRows=0,出現例外狀況 System.Net.WebException:遠端伺服器傳回一個錯誤:(401) 未經授權。---> System.ComponentModel.Win32Exception:The logon attempt failed at System.Net.NTAuthentication.GetOutgoingBlob(Byte[] incomingBlob, Boolean& handshakeComplete) at System.Net.NTAuthentication.GetOutgoingBlob(String incomingBlob, Boolean& handshakeComplete) at System.Net.NegotiateClient.DoAuthenticate(String challenge, WebRequest webRequest, ICredentials credentials, Boolean preAuthenticate) at System.Net.NegotiateClient.DoAuthenticate(String challenge, WebRequest webRequest, ICredentials credentials, Boolean preAuthenticate) at System.Net.NegotiateClient.Authenticate(String challenge, WebRequest webRequest, ICredentials credentials) at System.Net.AuthenticationManager.Authenticate(String challenge, WebRequest request, ICredentials credentials) at System.Net.AuthenticationState.AttemptAuthenticate(HttpWebRequest httpWebRequest, ICredentials authInfo) --- End of inner exception stack trace --- at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at Microsoft.Crm.Application.Outlook.OfflineSync.BcpTransferDataProvider.GetBCPFile(String entityName, Action action, Int32 batchSize).
請在 http://support.microsoft.com 查看說明及支援中心,以取得更多資訊。
事件記錄檔會記錄如下的警告訊息:
事件類型:警告
事件來源:MSCRMOfflineSync
事件類別:無
事件識別碼: 6001
描述:離線同步處理期間傳回未預期的結果。#temp<EntityBase> 計數插入 54!=27 已要求計數插入。
請在 http://support.microsoft.com 查看說明及支援中心,以取得更多資訊。
注意 在這個訊息中,EntityBase 是實體實際資料表名稱的預留位置。

發生的原因

由於下列一或多個情況成立,因此發生這個問題:
  • Microsoft CRM laptop client for Outlook 沒有存取 BCP 資料夾的權限。
  • Microsoft CRM laptop client for Outlook 的 Microsoft XML (MSXML) 版本錯誤。
  • Microsoft CRM laptop client for Outlook 的離線資料篩選器錯誤。
  • Microsoft CRM 伺服器安裝已損毀。
  • Microsoft CRM 網站上執行應用程式集區的使用者帳戶無法存取 Microsoft CRM 伺服器上的離線資料資料夾。
  • Microsoft SQL Server 資料庫移到新的伺服器。Microsoft CRM 伺服器上的 Microsoft CRM 系統 DSN ODBC 資料來源,持續指向執行 SQL Server 的舊伺服器。
  • 執行 SQL Server 且包含 MSCRM 資料庫的電腦正在傳送比一般離線資料庫更多的記錄。
  • /3GB 參數已新增至 Microsoft CRM Server 上的 Boot.ini 檔案。這個問題使得伺服器在嘗試執行 BCP 程序時記憶體不足。
  • 未安裝 Microsoft Data Access Components (MDAC) 2.8 Service Pack 1 (SP1)。

解決方案

如果要解決這個問題,請使用下列一或多個方法。

方法 1

授予 Microsoft CRM laptop client for Outlook 使用者的 BCP 資料夾權限。如果要執行這項操作,請依照下列步驟執行:
  1. 登入 Microsoft CRM laptop client for Outlook 電腦,然後找出 BCP 資料夾。BCP 資料夾一般位在用戶端電腦的下列路徑:
    C:\Documents and Settings\UserName\Application Data\Microsoft\MSCRM\BCP
    注意
    • 在 Windows Vista 電腦上,BCP 資料夾位在下列路徑:
      C:\Users\UserName\AppData\Roaming\Microsoft\MSCRM\BCP
    • 在這個步驟中,UserName 是實際使用者名稱的預留位置。
  2. 找出該資料夾,並且用滑鼠右鍵按一下該資料夾。然後按一下 [內容]
  3. 按一下 [安全性] 索引標籤。
  4. [群組或使用者名稱] 清單中,選取 Microsoft CRM laptop client for Outlook 使用者。
  5. [UserName 的權限] 清單中,確定已選取 [完全控制] 列的 [允許] 核取方塊。然後,按一下 [確定]

    注意 在這個步驟中,UserName 是實際使用者名稱的預留位置。

方法 2

確定用戶端電腦上的 Msxml4.dll 檔案的版本至少是 4.20.9828。如果要執行這項操作,請依照下列步驟執行:
  1. 找出 system32 資料夾。這個資料夾通常位於下列路徑:

    C:\WINDOWS\system32\
  2. 找出 Msxml4.dll 檔案,並用滑鼠右鍵按一下該檔案,然後按一下 [內容]。按一下 [版本] 索引標籤。
  3. 確認 [檔案版本] 的值至少是 4.20.9828。如果該值比這個版本還要舊,請執行步驟 4。
  4. 如果 Msxml4.dll 檔案的版本比 4.20.9828 舊,則必須更新檔案。如需如何取得更新檔案的詳細資訊,請造訪下列 Microsoft 網站:
    http://support.microsoft.com/kb/887606/zh-tw
    注意
    • 您也可以從用戶端安裝光碟取得 Msxml4.dll 檔案。Msxml4sp2-kb887606-x86-enu.exe 檔案通常位於下列路徑:

      \Client\MSXML\KB887606\
    • 此修正程式不需要您重新啟動電腦。

方法 3

移除所有離線資料篩選器,然後在用戶端電腦上逐一新增和同步處理這些篩選器。如果要移除離線資料篩選器,請依照下列步驟執行:
  1. 在 Microsoft CRM laptop client for Outlook 中,按一下 [CRM] 功能表上的 [本機資料]
  2. [本機資料] 對話方塊中,反白顯示所有篩選器,按一下 [停用],然後按一下 [確定]
如果要新增和同步處理篩選器,請依照下列步驟執行:
  1. [CRM] 功能表上,按一下 [本機資料]
  2. 按一下 [非使用中資料群組] 索引標籤。
  3. 選取其中一個篩選器。然後按一下 [啟動]
  4. 按一下 [確定]
  5. 按一下 [離線] 以啟動同步處理程序。然後按一下 [離線] 以完成同步處理程序。
  6. 針對每個停用的篩選器重複步驟 3 到步驟 5。
  7. 如果您可以辨識造成問題的特定篩選器,請確定此篩選器未使用「Parent Downloaded = True」指示。不建議使用這個指示。

方法 4

在 Microsoft CRM 伺服器上執行修復程序。如果要執行這項操作,請依照下列步驟執行:
  1. 登入 Microsoft CRM 伺服器。按一下 [開始],按一下 [控制台],然後按一下 [新增或移除程式]
  2. 按一下 [Microsoft CRM Server]。然後按一下 [變更/移除]
  3. 按一下 [修復] 選項。然後按一下 [下一步],以啟動 Microsoft CRM 3.0 Server 安裝精靈。

方法 5

確保在 Microsoft CRM 網站上執行應用程式集區的使用者帳戶可以存取 OfflineData 資料夾。此資料夾會儲存用戶端從執行 SQL Server 的伺服器取得的 BCP (大量複製程序) 資料檔案。如果要確保可存取 OfflineData 資料夾,請依照下列步驟執行:
  1. 判斷哪個帳戶正在執行應用程式集區。如果要執行這項操作,請依照下列步驟執行:
    1. 登入 Microsoft CRM 伺服器。
    2. 按一下 [開始],然後按一下 [系統管理工具][Internet Information Services (IIS) 管理員]
    3. 展開本機電腦名稱,展開 [應用程式集區],用滑鼠右鍵按一下 [CRMAppPool],然後按一下 [內容]
    4. 按一下 [身分識別] 索引標籤。
    5. 根據下列方針確認權限:

      如果 [預先定義] 選項已選取,則 NetworkService 及 LocalSystem 兩個帳戶便以 [DomainName\ComputerName$] 帳戶表示。因此,當您必須確認 NetworkService 帳戶或 LocalSystem 帳戶的權限時,您也必須確認 [DomainName\ComputerName$] 的權限。

      如果 [可設定] 選項已選取,您必須確認指定使用者帳戶的權限。

      注意 如果 [預先定義] 選項已選取,請使用 DomainName\ComputerName$ 帳戶做為步驟 5 中的使用者。如果 [可設定] 選項已選取,則使用指定使用者帳戶做為步驟 5 中的使用者。
  2. 在 Microsoft CRM 伺服器上,找出下列資料夾:

    Drive:\Program Files\Microsoft CRM\Server\OfflineData\

    注意 在這個步驟中,Drive 是已安裝 Microsoft CRM 的實際磁碟機預留位置。
  3. 用滑鼠右鍵按一下該資料夾。然後按一下 [內容]
  4. 按一下 [安全性] 索引標籤。
  5. [群組或使用者名稱] 清單中,選取在'步驟 1 中辨識的使用者。
  6. [UserName 的權限] 清單中,確定已選取 [完全控制] 列的 [允許] 核取方塊。然後,按一下 [確定]

    注意 在這個步驟中,UserName 是實際使用者名稱的預留位置。

方法 6

注意 方法 6 僅適用於 Microsoft Dynamics CRM 3.0,不適用於 Microsoft Dynamics CRM 4.0。

修改 Microsoft CRM 伺服器上的 Microsoft CRM 系統 DSN ODBC 資料來源,以指向執行 SQL Server 的新伺服器。如果要執行這項操作,請依照下列步驟執行:
  1. 按一下 [開始],指向 [系統管理工具],然後按一下 [資料來源 (ODBC)]
  2. [ODBC 資料來源管理員] 對話方塊中,按一下 [系統 DSN] 索引標籤,按一下 [系統資料來源中的 Microsoft CRM] 清單,然後按一下 [設定]
  3. 在第一個 [Microsoft SQL Server DSN 設定] 視窗中,找出 [伺服器] 清單,該清單包含執行 SQL Server 的電腦名稱。按一下要連線到的伺服器。
  4. 按三次 [下一步],然後設定資料來源。
  5. 按一下 [完成]
  6. 在 [ODBC Microsoft SQL Server 設定] 視窗中,按一下 [測試資料來源] 以驗證伺服器的連線。
  7. 按兩次 [確定] 以完成設定。
  8. 按一下 [確定] 以關閉 [ODBC 資料來源管理員] 對話方塊。

方法 7

  1. 結束 Microsoft Dynamics CRM 3.0。
  2. 按一下 [開始],按一下 [執行],輸入 regedit,然後按一下 [確定]
  3. 找出並按一下下列登錄子機碼:
    HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient
  4. 用滑鼠右鍵按一下 [OfflineRowsBatchSize] DWORD 值,然後按一下 [修改]
  5. [數值資料] 方塊中,輸入小於目前值的一個值,例如 10 或 1。然後按一下 [確定]。

    注意 根據預設,OfflineRowsBatchSize DWORD 值是設定為 [100000]
  6. 結束「登錄編輯程式」。

方法 8

從 Microsoft CRM 伺服器上的 Boot.ini 檔案移除 /3GB 參數。移除參數後,您必須重新啟動電腦,變更才會生效。

方法 9

安裝 MDAC 2.8 Service Pack 1。如果要安裝 MDAC 2.8 SP1,請造訪下列 Microsoft 網站:
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=78cac895-efc2-4f8e-a9e0-3a1afbd5922e

方法 10

如果 Microsoft Dynamics CRM 伺服器或執行 SQL Server 的伺服器已套用 Windows 作業系統的最新更新,請重新啟動受影響的伺服器。

其他相關資訊

如果您仍然遇到<徵狀>一節所述的問題,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
918108 當您嘗試在執行 Microsoft Dynamics CRM 3.0 的膝上型電腦用戶端離線時,出現錯誤訊息:「無法移動實體的資料」

?考

如需有關如何將 Microsoft Dynamics CRM 3.0 SQL 資料庫從一部伺服器移到另一部伺服器的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
917948 如何將 Microsoft Dynamics CRM 3.0 SQL 資料從一個伺服器移到相同網域的另一部伺服器

屬性

文章編號: 916165 - 上次校閱: 2009年9月24日 - 版次: 8.1
這篇文章中的資訊適用於:
  • Microsoft CRM client for Microsoft Office Outlook?應用於:
    • Microsoft CRM 3.0
    • Microsoft Dynamics CRM 4.0
  • Microsoft Dynamics CRM 4.0
  • Microsoft CRM 3.0
關鍵字:?
kbmbscrm40no kbcrmv3c kberrmsg kbmbsmigrate kbprb kbtshoot KB916165
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com