在 [Microsoft 動態 AX 2012 的 Microsoft 管理 Reporter 2012 的 「 物件參考未設定至物件的執行個體 」 錯誤

狀況

您會收到下列的錯誤中在 Microsoft 管理 Reporter 2012 中的 [管理報告者設定] 主控台的整合日誌 Microsoft 動態 AX 2012:

[帳戶 AX 2012 帳戶] 發生錯誤。將會中止處理。錯誤文字︰ 物件參考未設定至物件的執行個體。

此外,下列的錯誤可能也會出現在 「 事件檢視器︰

已攔截的例外狀況: [System.NullReferenceException] 物件參考未設定物件的執行個體。堆疊追蹤︰ 在 Microsoft.Dynamics.Integration.Adapters.AX2012GL.DataAccessHelper.GetEnumLabelId (EnumMetadata enumList,Null '1 值) 在 Microsoft.Dynamics.Integration.Adapters.AX2012GL.DataAccessHelper.GetEnumLabelId (EnumMetadata enumList,Null' 1 值) 在 Microsoft.Dynamics.Integration.Adapters.AX2012GL.AccountObjectProvider.PopulateAccountAttributes (SqlDataReader accountReader),在 Microsoft.Dynamics.Integration.Adapters.AX2012GL.AccountObjectProvider.CreateAccount (SqlDataReader 讀取器、 維度 mainAccountDimension、 Int64 mainAccountRecId) 在 Microsoft.Dynamics.Integration.Adapters.AX2012GL.AccountObjectProvider.QueryAccountValues() 的 Microsoft.Dynamics.Integration.Adapters.AX2012GL.AX2012GLAdapter.GetEnumValueLabelString ([Null ' 1 值中的 [字串 enumName)在 Microsoft.Dynamics.Integration.Service.Tasks.MapWork.ReadObjectKeyList 的 Microsoft.Dynamics.Integration.Adapters.AX2012GL.AccountObjectProvider.ReadObjectKeys (日期時間 modifiedDate) (DbMap 對應,日期時間 queryDate Int32 & 計數) 在 Microsoft.Dynamics.Integration.Service.Tasks.MapWork.ProcessRecordsImplementation (OperationType operationType)


原因

MainAccount 存在於柱子類型 AX 資料庫中的資料表,但不是存在於應用程式物件樹狀結構 (AOT),就會發生這個問題。

解決方案

若要解決這個問題,請依照下列步驟執行︰

  1. 若要檢查之帳戶的張貼類型 AX 資料庫上執行下列的 SQL 陳述式︰

    select distinct (postingtype) from MainAccount
  2. 登入 AX,並檢查 AOT。若要瀏覽至 AOT,按一下資料字典,按一下基底列舉,,然後按一下 [ LedgerPostingType。請檢查每個項目的內容,並注意 [EnumValues 資料表。

  3. 如果發現不同 MainAccount 資料表之間的 EnumValues 資料表中 AOT,則包含無效的張貼類型的帳戶必須具有有效的公佈類型設定。

    例如,使用下列的陳述式,來更新在其中一個無效的張貼的型別 255 不存在於 AOT 的 MainAccount 資料表。此陳述式將張貼類型設為有效的一種 0。

    update MainAccount set postingtype = 0 where postingtype = 255
  4. 當您更新 MainAccount 表格時,您必須重建管理 Reporter 資料超市。要執行這項操作,請依照下列步驟執行。

    1. 按一下 [開始],請開啟伺服器上的 [設定] 主控台。

    2. 在左邊的瀏覽] 窗格中,按一下 [ ERP 整合]。

    3. 選取正在使用的整合,然後按一下 [停用的整合,以停用的整合。

    4. 按一下 [移除] 以移除 ERP 整合。

    5. 按一下 [在左方的導覽中的 [管理 Reporter 服務,這兩個管理 Reporter 服務停止。

    6. 備份及刪除在 Microsoft SQL Management Studio DDB 資料庫。

    7. 啟動管理 Reporter 服務。

    8. 按一下 [檔案,然後按一下 [設定],以設定 ERP 整合一次。

    9. 設定整合之後,請從左邊的 [設定] 主控台中,選取 [整合,,然後按一下 [啟用整合

需要更多協助?

擴展您的技能
探索訓練
優先取得新功能
加入 Microsoft 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與我們的其中一個 Office 支援專員連絡以深入了解您的意見。

×