顧客請求書一覧レポート (12117) には、イタリア語バージョンの Microsoft Dynamics NAV で予想どおりに不正なトランザクションが表示されません

適用先
Dynamics NAV 2009 Microsoft Dynamics NAV 5.0

この記事は、イタリア語 (it) 言語ロケールの Microsoft Dynamics NAV に適用されます。

現象

Microsoft Dynamics NAV のイタリア語バージョンで修正プログラム 955348、修正プログラム 957356、修正プログラム 2664436、修正プログラム 2496071、修正プログラム 2479692を適用することを想定しています。 顧客請求書一覧レポート (12117) を実行すると、不正なトランザクションが正しく表示されません。 不正使用されたトランザクションは、対応する支払にリンクされていません。 また、レポートから不正使用されたトランザクションに適用される銀行受領書が理解できない場合があります。
この問題は、次の製品で発生します。

  • Microsoft Dynamics NAV 2009 R2 のイタリア語バージョン
  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1) のイタリア語バージョン
  • Microsoft Dynamics NAV 5.0 Service Pack 1 (SP1) のイタリア語バージョン

修正プログラム 955348の詳細については、Microsoft サポート技術情報の記事を表示するには、次の資料番号をクリックしてください。

955348 仕入先請求書一覧レポート (12116) と顧客請求書一覧レポート (12117) に、イタリア語版の Microsoft Dynamics NAV で適用されていない支払いが表示されない修正プログラムの957356の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を表示します。

仕入先 請求書一覧レポート (12116) レポートと顧客請求書一覧レポート (12117) 957356、Microsoft Dynamics NAV 5.0 のイタリア語バージョンの不適切な仕入先残高が表示される修正プログラムの2664436の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を表示します。

2664436 修正プログラム 2496071の詳細については、Microsoft Dynamics NAV のイタリア語版の決算処理を実行した後、仕入先勘定請求書一覧レポートと顧客請求書一覧レポートの残高が正しくありません。次の記事番号をクリックして、Microsoft サポート技術情報の記事を表示します。

2496071 顧客請求書一覧レポートと仕入先勘定請求書一覧レポートでは、Microsoft Dynamics NAV 2009 Service Pack 1 のイタリア語バージョンで予期せず 2 回請求書に適用されたクレジット メモが印刷されます修正プログラムの2479692の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を表示します。

2479692 顧客請求書一覧レポート (12117) には、イタリア版 Microsoft Dynamics NAV 2009 Service Pack 1 の請求書の分割払いごとの対応する銀行受領書は表示されません

解決策

修正プログラムの情報

サポートされている修正プログラムが Microsoft から入手できるようになりました。 ただし、この記事で説明されている問題を修正することのみを目的としています。 この特定の問題が発生しているシステムにのみ適用します。 この修正プログラムは、追加のテストを受け取る場合があります。 したがって、この問題の影響を大きく受けない場合は、次の Microsoft Dynamics NAV 2009 Service Pack またはこの修正プログラムを含む次の Microsoft Dynamics NAV バージョンを待つことをおすすめします。

注 特別なケースでは、Microsoft Dynamics および関連製品のテクニカル サポート プロフェッショナルが特定の更新プログラムによって問題が解決されると判断した場合、通常はサポート呼び出しに対して発生する料金が取り消されることがあります。 ただし、特定の更新プログラムの対象とならない追加の質問および問題については、通常のサポート料金が適用されます。

            
          

インストール情報

Microsoft は、明示または黙示の保証なしで、説明のみを目的としてプログラミング例を提供しています。 これには、商品性または特定の目的への適合性に関する暗黙の保証が含まれますが、これらに限定されません。 この記事では、デモンストレーションされているプログラミング言語と、プロシージャの作成とデバッグに使用されるツールについてよく理解していることを前提としています。 マイクロソフト サポート窓口では、特定のプロシージャの機能説明に関するご質問に対して支援いたしますが、本例を特定の目的を満たすために機能を追加したり、プロシージャを構築することは行いません。

注 この修正プログラムをインストールする前に、すべての Microsoft Navision クライアント ユーザーがシステムからログオフされていることを確認します。 これには、Microsoft Navision Application Services (NAS) クライアント ユーザーが含まれます。 この修正プログラムを実装するときにログオンする唯一のクライアント ユーザーである必要があります。

この修正プログラムを実装するには、開発者ライセンスが必要です。

[Windows ログイン] ウィンドウまたは [データベース ログイン] ウィンドウのユーザー アカウントに "SUPER" ロール ID を割り当てることをお勧めします。 ユーザー アカウントに "SUPER" ロール ID を割り当てることができない場合は、ユーザー アカウントに次のアクセス許可があることを確認する必要があります。

  • 変更するオブジェクトの [変更] アクセス許可。
  • システム オブジェクト ID 5210 オブジェクトとシステム オブジェクト ID 9015 オブジェクトの Execute アクセス許可。

                
メモ データ修復を実行する必要がない限り、データ ストアに対する権限は必要ありません。

コードの変更

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

  1. 顧客請求書一覧レポート (12117) のデータ項目番号 2 のコードを次のように変更します。
    既存のコード

    ...
    END;
    
    OnAfterGetRecord=BEGIN
    IF ("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ") THEN
    CurrReport.SKIP;
    ...
    

    置換コード

    ...
    END;
    
    OnAfterGetRecord=BEGIN
    
    // Add the following line.
    PrintCustLedgEntry2 := FALSE;
    
    IF ("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ") THEN
    CurrReport.SKIP;
    ...
    
  2. 顧客請求書一覧レポート (12117) のデータ項目番号 3 のコードを次のように変更します。
    既存のコード

    ...
    ClosedByAmountLCY := "Closed by Amount (LCY)";
    TotalForCustomer += "Amount (LCY)";
    TotalClosedByAmntLCY += "Amount (LCY)";
    END;
    
    DataItemLink=Document No. to Close=FIELD(Document No.);
    ...
    

    置換コード

    ...
    ClosedByAmountLCY := "Closed by Amount (LCY)";
    TotalForCustomer += "Amount (LCY)";
    TotalClosedByAmntLCY += "Amount (LCY)";
    
    // Add the following line.
    PrintCustLedgEntry2 := TRUE;
    
    END;
    
    DataItemLink=Document No. to Close=FIELD(Document No.);
    ...
    
  3. 顧客請求書一覧レポート (12117) のデータ項目番号 4 のコードを次のように変更します。
    既存のコード

    ...
    END;
    
    OnAfterGetRecord=BEGIN
    CustLedgEntry3.GET("Applied Cust. Ledger Entry No.");
    CustLedgEntry3.CALCFIELDS("Original Amt. (LCY)");
    ClosedByAmountLCY := "Amount (LCY)";
    ...
    

    置換コード

    ...
    END;
    
    OnAfterGetRecord=BEGIN
    
    // Add the following lines.
    IF PrintCustLedgEntry2 THEN
    CurrReport.SKIP;
    // End of the lines.
    
    CustLedgEntry3.GET("Applied Cust. Ledger Entry No.");
    CustLedgEntry3.CALCFIELDS("Original Amt. (LCY)");
    ClosedByAmountLCY := "Amount (LCY)";
    ...
    
  4. 顧客請求書一覧レポート (12117) のグローバル変数のコードを次のように変更します。
    既存のコード

    ...
    BalanceDue@1130012 : Decimal;
    NULL@1130013 : DateFormula;
    CustLedgEntry3@1130130 : Record 21;
    
    BEGIN
    ...
    

    置換コード

    ...
    BalanceDue@1130012 : Decimal;
    NULL@1130013 : DateFormula;
    CustLedgEntry3@1130130 : Record 21;
    
    // Add the following line.
    PrintCustLedgEntry2@1130014 : Boolean;
    
    BEGIN
    ...
    
  5. 決算銀行領収書レポート (12171) のデータ項目番号 2 のコードを次のように変更します。
    既存のコード

    ...
    COMMIT;
    
    CustEntryApplyPostedEntries.SetCheckDim(CheckDim);
    CustEntryApplyPostedEntries.RUN(CustLedgEntry);
    END;
    ...
    

    置換コード

    ...
    COMMIT;
    
    CustEntryApplyPostedEntries.SetCheckDim(CheckDim);
    
    // Add the following line.
    CustLedgEntry.GET(CustEntry1."Entry No.");
    
    CustEntryApplyPostedEntries.RUN(CustLedgEntry);
    END;
    ...
    
  6. Gen の ApplyCustLedgEntry 関数のコードを変更します。 Jnl.-Post Line" codeunit (12) を次に示します。
    既存のコード

    ...
    TempOldCustLedgEntry.SETCURRENTKEY("Customer No.","Applies-to ID",Open,Positive,"Due Date");
    OldCustLedgEntry.SETRANGE("Customer No.",NewCVLedgEntryBuf."CV No.");
    OldCustLedgEntry.SETRANGE(Open,TRUE);
    
    // Delete the following line.
    OldCustLedgEntry.SETRANGE("Bank Receipt Issued", FALSE);
    
    OldCustLedgEntry.SETFILTER("Entry No.",'<>%1',NewCVLedgEntryBuf."Entry No.");
    OldCustLedgEntry.SETRANGE("Applies-to ID",GenJnlLine."Applies-to ID");
    IF NOT(Cust."Application Method" = Cust."Application Method"::"Apply to Oldest") THEN
    ...
    

    置換コード

    ...
    TempOldCustLedgEntry.SETCURRENTKEY("Customer No.","Applies-to ID",Open,Positive,"Due Date");
    OldCustLedgEntry.SETRANGE("Customer No.",NewCVLedgEntryBuf."CV No.");
    OldCustLedgEntry.SETRANGE(Open,TRUE);
    
    // Add the following line.
    OldCustLedgEntry.SETRANGE("Bank Receipt Issued", TRUE);
    
    OldCustLedgEntry.SETFILTER("Entry No.",'<>%1',NewCVLedgEntryBuf."Entry No.");
    OldCustLedgEntry.SETRANGE("Applies-to ID",GenJnlLine."Applies-to ID");
    IF NOT(Cust."Application Method" = Cust."Application Method"::"Apply to Oldest") THEN
    ...
    

前提条件

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

  • Microsoft Dynamics NAV 2009 R2 のイタリア語バージョン
  • Microsoft Dynamics NAV 2009 Service Pack 1 のイタリア語バージョン
  • Microsoft Dynamics NAV 5.0 Service Pack 1 のイタリア語バージョン

アンインストール情報

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

状態

Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。

注: この資料は、"迅速な公開" を目的としてマイクロソフト サポート組織により直接作成されたものです。 ここに含まれる情報は、新しい問題に対応するため、そのままの状態で提供されます。 情報を迅速に公開するため、この資料には誤植などが含まれる可能性があり、また、予告なく改訂される場合があります。 その他の注意事項については、使用条件を参照してください。