メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

この資料は、Microsoft Dynamics nav (it) イタリア語の言語ロケールに当てはまります。

現象

イタリア語版の Microsoft Dynamics NAV 2009 年の 979022 の更新を適用することを想定しています。残高勘定を変更した後は、源泉徴収税を含む支払を転記できません。

この問題は、次の製品で発生します。

  • イタリア語版の Microsoft Dynamics NAV 2009 サービス パック 1

  • Microsoft Dynamics NAV 2009 の R2 のイタリア語版

詳細については、次の文書番号をクリックして、マイクロソフト サポート技術情報の資料をご参照ください。

979022は表示されませんは警告 Microsoft Dynamics NAV のイタリア語版での源泉徴収税を計算することがなく源泉徴収税の請求書に対する支払を転記すると、

解決策

修正プログラムの情報

サポートされている修正プログラムはマイクロソフトから現在入手可能です。ただし、この資料に記載されている問題を解決するためのものはのみ。この特定の問題が発生したシステムにのみ適用してください。この修正プログラムは、今後さらにテストを行うことがあります。この問題で深刻な影響を受けていない場合は、次の Microsoft Dynamics NAV 2009 サービス パックまたは修正プログラムを含む次の Microsoft Dynamics NAV バージョン待つことを勧めします。

注: かかる料金が免除されるテクニカル サポート担当者 Microsoft Dynamics および関連製品のことは、通常は特別な場合は、特定の更新プログラムは、問題を解決するにを決定します。追加の質問および問題の特定のアップデートの対象にはなりませんが、通常のサポート料金が適用されます。

インストール情報

マイクロソフトでは解説することのみを目的としてプログラミング例を提供しています。暗示あるいは明示していることに対しての保証はしておりません。ここで言う保証とは、特定の目的に対する商品性や適合性の暗示的保証を含んでいますが、それに限定されるわけではありません。この資料では、例示されているプログラミング言語およびプロシージャの作成やデバッグに使用するツールにお客様が精通していることを前提としています。マイクロソフトのサポート エンジニアは、特定のプロシージャの機能について説明することができます。ただし、お客様固有の要件を満たすために、追加機能の提供またはプロシージャの作成のために、これらの例に変更を加えたりはしません。

注: この修正プログラムをインストールする前に、Microsoft Dynamics NAV のすべてのクライアント ユーザーがシステムの電源を記録することを確認します。これには、Microsoft Dynamics NAV アプリケーション サーバー (NAS) のサービスが含まれます。この修正プログラムを実装すると、ログオンしている唯一のクライアント ユーザーが必要です。

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

ユーザー アカウントまたはデータベース ログイン ウィンドウに Windows のログイン ウィンドウにある「スーパー」ロール id を割り当てられていることをお勧めします。ユーザー アカウントには、「スーパー」ロール ID を割り当てることができません、する場合は、ユーザー アカウントが次のアクセス許可を持っているを確認する必要があります。

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

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

    オブジェクトです。

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

コードの変更

注: 常にテスト コードを修正、管理された環境で適用する前に、運用コンピューターに修正プログラムします。

この問題を解決するには、 CheckWithholdTax関数で、Gen. Jnl。 内のコードを変更する-次のように Post 行 Codeuint (12)。

既存のコード 1

...UNTIL OldCustLedgEntry.NEXT = 0;
END;

// Delete the following lines.
PROCEDURE CheckWithholdTax@1130007(DocType@1130000 : ' ,,Invoice,Credit Memo';DocNo@1130001 : Code[20];GenJnlLine@1130002 : Record 81;ApplyInGenJnlLine@1130003 : Boolean);
VAR
ComputedWithholdTax@1130004 : Record 12111;
TmpWithholdingContribution@11300005 : Record 12113;
WithholdCode@1130006 : Record 12104;
BEGIN
IF DocType IN [DocType::Invoice,DocType::"Credit Memo"] THEN BEGIN
ComputedWithholdTax.RESET;
ComputedWithholdTax.SETRANGE("Document No.",DocNo);
IF ComputedWithholdTax.FINDFIRST THEN BEGIN
// End of the deleted lines.

IF NOT ApplyInGenJnlLine THEN
ERROR(Text1130023)
ELSE BEGIN
...

置換用コード 1

...UNTIL OldCustLedgEntry.NEXT = 0;
END;

// Add the following lines.
PROCEDURE CheckWithholdTax@1170000000(DocType@1170000000 : ' ,,Invoice,Credit Memo';DocNo@1170000001 : Code[20];GenJnlLine@1170000002 : Record 81;ApplyInGenJnlLine@1170000003 : Boolean);
VAR
ComputedWithholdTax@1170000004 : Record 12111;
TmpWithholdingContribution@1170000005 : Record 12113;
BEGIN
IF (DocType IN [DocType::Invoice,DocType::"Credit Memo"]) AND
(GenJnlLine."Document Type" IN [GenJnlLine."Document Type"::Payment,GenJnlLine."Document Type"::Refund])
THEN BEGIN
ComputedWithholdTax.RESET;
ComputedWithholdTax.SETRANGE("Document No.",DocNo);
IF NOT ComputedWithholdTax.ISEMPTY THEN
// End of the added lines.

IF NOT ApplyInGenJnlLine THEN
ERROR(Text1130023)
ELSE BEGIN
...

既存のコード 2

...ELSE BEGIN
TmpWithholdingContribution.RESET;
TmpWithholdingContribution.SETRANGE("Invoice No.",DocNo);

// Delete the following lines.
IF NOT TmpWithholdingContribution.FINDFIRST THEN BEGIN
WithholdCode.GET(ComputedWithholdTax."Withholding Tax Code");
WithholdCode.TESTFIELD("Withholding Taxes Payable Acc.");
IF NOT((GenJnlLine."Bal. Account Type" = GenJnlLine."Bal. Account Type"::"G/L Account") AND
(GenJnlLine."Bal. Account No." = WithholdCode."Withholding Taxes Payable Acc.")) THEN
ERROR(Text1130023);
END;
END;
END;
// End of the deleted lines.

END;
END;
...

置換用コード 2

...ELSE BEGIN
TmpWithholdingContribution.RESET;
TmpWithholdingContribution.SETRANGE("Invoice No.",DocNo);

// Add the following lines.
IF TmpWithholdingContribution.ISEMPTY THEN
IF (GenJnlLine."Bal. Account Type" <> GenJnlLine."Bal. Account Type"::"G/L Account") THEN
ERROR(Text1130023);
END;
// End of the added lines.

END;
END;
...


必要条件

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

  • イタリア語版の Microsoft Dynamics NAV 2009 サービス パック 1

  • Microsoft Dynamics NAV 2009 の R2 のイタリア語版

アンインストール情報

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

状況

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

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

ヘルプを表示

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

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

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×