適用先
Dynamics NAV 2009

ポルトガル語 (pt) の言語ロケールの Microsoft Dynacmics のナビゲーション バーにこの資料が適用されます。

現象

Microsoft Dynamics NAV 2009 年のポルトガル語版の請求書に適用される非控除購買の付加価値税を使用するいると仮定します。次に、請求書の VAT の金額は手動で変更します。このような場合は、値エントリと対応する総勘定元帳のエントリとの間の原価金額 (実績) フィールドに丸めの違いがあります。この問題は、次の製品で発生します。

  • Microsoft Dynamics NAV 2009 の R2 のポルトガル語版

  • ポルトガル語バージョンの Microsoft Dynamics NAV 2009 サービス パック 1 (SP1)

解決策

修正プログラムの情報

サポートされている修正プログラムはマイクロソフトから現在入手可能です。ただし、この資料に記載されている問題を解決するためのものはのみ。この特定の問題が発生したシステムにのみ適用してください。この修正プログラムは、今後さらにテストを行うことがあります。この問題で深刻な影響を受けていない場合は、次の Microsoft Dynamics NAV 2009 サービス パックまたは修正プログラムを含む次の Microsoft Dynamics NAV バージョン待つことを勧めします。注: かかる料金が免除されるテクニカル サポート担当者 Microsoft Dynamics および関連製品のことは、通常は特別な場合は、特定の更新プログラムは、問題を解決するにを決定します。追加の質問および問題の特定のアップデートの対象にはなりませんが、通常のサポート料金が適用されます。

インストール情報

マイクロソフトでは解説することのみを目的としてプログラミング例を提供しています。暗示あるいは明示していることに対しての保証はしておりません。ここで言う保証とは、特定の目的に対する商品性や適合性の暗示的保証を含んでいますが、それに限定されるわけではありません。この資料では、例示されているプログラミング言語およびプロシージャの作成やデバッグに使用するツールにお客様が精通していることを前提としています。マイクロソフトのサポート エンジニアは、特定のプロシージャの機能について説明することができます。ただし、お客様固有の要件を満たすために、追加機能の提供またはプロシージャの作成のために、これらの例に変更を加えたりはしません。注: この修正プログラムをインストールする前に、Microsoft Dynamics NAV のすべてのクライアント ユーザーがシステムの電源を記録することを確認します。これには、Microsoft Dynamics NAV アプリケーション サーバー (NAS) のサービスが含まれます。この修正プログラムを実装すると、ログオンしている唯一のクライアント ユーザーが必要です。この修正プログラムを実装するには、開発者用のライセンスが必要です。ユーザー アカウントまたはデータベース ログイン ウィンドウに Windows のログイン ウィンドウにある「スーパー」ロール id を割り当てられていることをお勧めします。ユーザー アカウントには、「スーパー」ロール ID を割り当てることができません、する場合は、ユーザー アカウントが次のアクセス許可を持っているを確認する必要があります。

  • 変更するオブジェクトの変更のアクセス許可。

  • 実行のアクセス許可、システム オブジェクトの ID 5210オブジェクトおよびシステム オブジェクトの ID 9015オブジェクトです。

注: データの修復を実行する必要があるない限り、データ ストアへの権限を持っている必要はありません。

コードの変更

注: 常にテスト コードを修正、管理された環境で適用する前に、運用コンピューターに修正プログラムします。 この問題を解決するには、次の手順を実行します。

  1. 購買のPostItemJnlLine関数内のコードを変更する-codeunit (90) を次のように投稿します。既存のコード

    ...ELSE  Factor := QtyToBeInvoiced / "Qty. to Invoice";IF (GLSetup."Payment Discount Type" = GLSetup."Payment Discount Type"::"Calc. Pmt. Disc. on Lines") AND   (PurchSetup."Post Payment Discount") THENItemJnlLine.Amount :=// Delete the following lines.  Amount * (100 + TempVATAmountLine."ND %") / 100 * Factor + RemAmt + PurchLine."Pmt. Disc. Rcd. Amount"ELSE  ItemJnlLine.Amount :=  Amount * (100 + TempVATAmountLine."ND %") / 100 * Factor + RemAmt;// End of the lines.IF PurchHeader."Prices Including VAT" THEN  ItemJnlLine."Discount Amount" :=  ("Line Discount Amount" + "Inv. Discount Amount") / (1 + "VAT %" / 100) * Factor + RemDiscAmt...

    置換用コード

    ...ELSE  Factor := QtyToBeInvoiced / "Qty. to Invoice";IF (GLSetup."Payment Discount Type" = GLSetup."Payment Discount Type"::"Calc. Pmt. Disc. on Lines") AND   (PurchSetup."Post Payment Discount") THENItemJnlLine.Amount :=// Add following lines  Amount * (100 + TempVATAmountLine."ND %") / 100 * Factor + RemAmt + PurchLine."Pmt. Disc. Rcd. Amount" +  PurchLine."ND Difference"ELSE   ItemJnlLine.Amount :=Amount * (100 + TempVATAmountLine."ND %") / 100 * Factor + RemAmt + PurchLine."ND Difference";// End of the lines.IF PurchHeader."Prices Including VAT" THEN   ItemJnlLine."Discount Amount" :=   ("Line Discount Amount" + "Inv. Discount Amount") / (1 + "VAT %" / 100) * Factor + RemDiscAmt...
  2. 購買のPostItemChargePerOrder関数内のコードを変更する-codeunit (90) を次のように投稿します。既存のコード

    ...IF ItemJnlLine2."Invoiced Quantity" = 0 THEN BEGIN    ItemJnlLine2."Invoiced Quantity" := ItemJnlLine2.Quantity;    ItemJnlLine2."Invoiced Qty. (Base)" := ItemJnlLine2."Quantity (Base)";END;ItemJnlLine2.Amount :=     ("Amount to Assign" * ItemJnlLine2."Invoiced Qty. (Base)" / QtyToInvoice) *// Delete the following line.(100 + TempVATAmountLine."ND %") / 100;                    IF "Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"] THEN     ItemJnlLine2.Amount := -ItemJnlLine2.Amount;     ItemJnlLine2."Unit Cost (ACY)" :=     ROUND(     ItemJnlLine2.Amount / ItemJnlLine2."Invoiced Qty. (Base)",...

    置換用コード

    ...IF ItemJnlLine2."Invoiced Quantity" = 0 THEN BEGIN    ItemJnlLine2."Invoiced Quantity" := ItemJnlLine2.Quantity;    ItemJnlLine2."Invoiced Qty. (Base)" := ItemJnlLine2."Quantity (Base)";END;    ItemJnlLine2.Amount :=   ("Amount to Assign" * ItemJnlLine2."Invoiced Qty. (Base)" / QtyToInvoice) *// Add the following line.   (100 + ItemChargePurchLine."ND %") / 100;        IF "Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"] THEN     ItemJnlLine2.Amount := -ItemJnlLine2.Amount;     ItemJnlLine2."Unit Cost (ACY)" :=     ROUND(     ItemJnlLine2.Amount / ItemJnlLine2."Invoiced Qty. (Base)",...

必要条件

インストールされている以下の製品と適用この修正プログラムを適用するのには次の修正プログラムのいずれかが必要です。

  • Microsoft Dynamics NAV 2009 の R2 のポルトガル語版

  • ポルトガル語バージョンの Microsoft Dynamics NAV 2009 サービス パック 1

さらに、2479082 と 2479102 がこの修正プログラムを適用するのにはインストール、修正プログラムが必要です。修正プログラム 2479082 と 2479102 の修正プログラムに関する詳細については、マイクロソフト サポート技術情報の記事を表示するのには次の資料番号をクリックします:

2479082 [原価金額 (実績)"フィールドの値が正しく計算されない値のエントリで、ポルトガル語版の Microsoft Dynamics NAV 2009 サービス パック 1 で購入クレジット メモを転記した後

2479102 [原価金額 (実績)"フィールドの値が正しく計算されない値のエントリにクレジット メモの転記済の発注内のアイテムは、Microsoft Dynamics NAV 2009 サービス パック 1 のポルトガル語版の平均原価計算の方法を使用している場合

アンインストール情報

この修正プログラムを削除することはできません。

状況

マイクロソフトは、この問題を「対象製品」セクションに記載されているマイクロソフト製品の問題として認識しています。

注: これは、マイクロソフト サポートの組織内から直接作成した「高速公開」の資料です。ここに含まれる情報は、新たに発生している問題に応じて現状のまま提供されています。速やかに利用できるようにした結果として、内容には誤植が含まれている可能性があり、事前告知なしで改訂する場合があります。その他の考慮事項については、使用条件を参照してください。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。