本文適用于下列國家/地區及語言的 Microsoft Dynamics NAV。

  • 德 (德文) (de-de)

  • 奧地利 (奧地利) (位於)

  • 法文 (瑞士) (fr-ch)

  • 瑞士 (德文) (de-ch)

  • 義大利 (瑞士) (it-ch)

徵兆

當您執行「已張貼的 Phys」時。 Invt. Order Diff.」 報表,報表不會顯示差異。 報表有預期行數欄、記錄線欄和追蹤線欄。 右邊的欄一直是空白的。 這個問題會發生在下列產品中:

  • 德文版的 Microsoft Dynamics NAV 2009 R2

  • 奧地利版的 Microsoft Dynamics NAV 2009 R2

  • 瑞士版的 Microsoft Dynamics NAV 2009 R2

  • 德文版的 Microsoft Dynamics NAV 2009 Service Pack 1

  • 奧地利版的 Microsoft Dynamics NAV 2009 Service Pack 1

  • 瑞士版的 Microsoft Dynamics Service Pack 1

原因

發生此問題的原因,是報表的 TempPhysInvtDiffListBuffer2 變數是一個本地變數,而且不會從報表的任何位置指派變數。 此外,變數不是暫時性的變數。 因此,變數會指向實際的 "Phys。 Invt. 差異。 永遠空白的清單緩衝」資料表。

解決方案

Hotfix 資訊

Microsoft 現已提供支援的 Hotfix。 不過,它僅適用于修正本文所述的問題。 請只將此功能適用于遇到此特定問題的系統。 此 Hotfix 可能會收到額外的測試。 因此,如果您並未受到此問題的嚴重影響,建議您等候下一個 Microsoft Dynamics NAV 2009 Service Pack 或下一個包含此 Hotfix 的 Microsoft Dynamics NAV 版本。

注意 在特殊情況下,如果 Microsoft Dynamics 及相關產品的技術支援專業人員決定特定更新能解決您的問題,則通常支援電話的費用可能會取消。 一般來說,如果有所描述之特定更新無法解決的其他支援問題,才會收取支援費用。


安裝資訊

Microsoft 僅提供圖例的程式設計範例,而不提供明示或暗示的擔保。 其中包括但不限於默示的擔保,以擔保商品的可操作性或適合特定用途。 本文假設您熟悉示範的程式設計語言,以及用來建立及進行程式錯錯的工具。 Microsoft 支援工程師可以協助說明特定程式的功能。 不過,他們將不會修改這些範例,以提供新增功能或建構符合您特定需求的程式。

注意 安裝此 Hotfix 之前,請確認所有 Microsoft Navision 用戶端使用者都登出系統。 這包括 Microsoft Navision Application Services (NAS) 用戶端使用者。 當您執行此 Hotfix 時,您應該是唯一登入的用戶端使用者。

若要執行此 Hotfix,您必須有開發人員授權。

建議您為 Windows 登入視窗或資料庫登入視窗中的使用者帳戶指派「SUPER」角色識別碼。 如果使用者帳戶無法指派「SUPER」角色識別碼,您必須確認使用者帳戶具有下列許可權:

  • 要變更之物件的修改許可權。

  • 系統物件識別碼 5210 物件和 System 物件識別碼 9015 物件的執行許可權。



注意:除非您必須執行資料修復,否則您不一樣擁有資料存放區的權利。

程式碼變更

注意將修正程式碼一併應用至生產電腦之前,務必先在受控環境中測試程式碼修正。
如果要解決這個問題,請依照下列步驟執行。

  1. 將 CreateDiffListBuffer 函數中的 TempPhysInvtDiffListBuffer2 變數從本地變數變更為 Posted Phys 的全域變數。 Invt. 訂單差異。 報表 (5005351) 如下所示:

    TempPhysInvtDiffListBuffer2@1140019 : TEMPORARY Record 5005363;

    tempphysinvtdifflistbuffer2@1140019mailto:tempphysinvtdifflistbuffer2@1140019

  2. 變更 Posted Phys 中 FindOrCreateDiffListBuffer 函數中的程式碼。 Invt. 訂單差異。 報表 (5005351) 如下所示:
    現有程式碼

      TempPhysInvtDiffListBuffer.INSERT;
    NoOfBufferLines := NoOfBufferLines +1;
    END ELSE BEGIN
    IF NextLineNo = 1 THEN
    ...

    取代代碼

    ...
    TempPhysInvtDiffListBuffer.INSERT;
    NoOfBufferLines := NoOfBufferLines +1;

    // Add the following lines.
    TempPhysInvtDiffListBuffer2 := TempPhysInvtDiffListBuffer;
    TempPhysInvtDiffListBuffer2.INSERT;
    // End of the lines.

    END ELSE BEGIN
    IF NextLineNo = 1 THEN
    ...

先決條件

您必須安裝下列其中一項產品,以適用此 Hotfix:

  • 德文版的 Microsoft Dynamics NAV 2009 R2

  • 奧地利版的 Microsoft Dynamics NAV 2009 R2

  • 瑞士版的 Microsoft Dynamics NAV 2009 R2

  • 德文版的 Microsoft Dynamics NAV 2009 Service Pack 1

  • 奧地利版的 Microsoft Dynamics NAV 2009 Service Pack 1

  • 瑞士版的 Microsoft Dynamics Service Pack 1

移除資訊

您無法移除此 Hotfix。

狀態

Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。

注意:這是直接從 Microsoft 支援組織內所建立「快速發佈」一文。 本文包含的資訊是因應新問題而提供的。 由於提供的速度加快,資料可能包含印刷錯誤,且可能隨時修訂,而無須另行通知。 請參閱 使用條款以 瞭解其他考慮。

需要更多協助?

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

這項資訊有幫助嗎?

您對翻譯品質的滿意度為何?

會影響您使用體驗的因素為何?

是否還有其他的意見反應? (選填)

感謝您的意見反應!

×