Systemet beräknas inte "Belopp för att betala" värde och källskattebelopp som förväntat i den italienska versionen av Microsoft Dynamics NAV 2009

Arbeta överallt från alla enheter med Microsoft 365

Uppgradera till Microsoft 365 om du vill arbeta var som helst med de senaste funktionerna och uppdateringarna.

Uppgradera nu

Mall: CPR - Navision koden Fix mall

PROGRAMFEL #: 192975 (Innehållsunderhåll)

Den här artikeln gäller för Microsoft Dynamics NAV för språk italienska (it).

Symptom

I den italienska versionen av Microsoft Dynamics NAV 2009 beräknas systemet inte värdet "Belopp för att betala" och källskattebelopp som förväntat. Det här problemet uppstår i följande produkter:

  • Den italienska versionen av Microsoft Dynamics NAV 2009 R2

  • Den italienska versionen av Microsoft Dynamics NAV 2009 Service Pack 1

Lösning

Information om snabbkorrigeringen

En snabbkorrigering är nu tillgänglig från Microsoft. Den är endast avsedd att åtgärda det problem som beskrivs i denna artikel. Använd den bara på datorer där detta problem uppstår. Snabbkorrigeringen kan komma att testas igen. Om inte störs alltför mycket av detta problem rekommenderar vi att du väntar på Nästa service pack-versionen för Microsoft Dynamics NAV 2009 eller nästa Microsoft Dynamics NAV-version som innehåller den här snabbkorrigeringen.

Obs! I särskilda fall, de avgifter som är normalt för support vara avgiftsfri om en supporttekniker för Microsoft Dynamics och relaterade produkter som bestämmer att en särskild uppdatering kan lösa ditt problem. De vanliga supportkostnaderna gäller för övriga supportfrågor och problem som inte berör den särskilda uppdateringen.

Om den här snabbkorrigeringen inte har bokförts för offentlig hämtning (vilket innebär att en offentlig URL för den här snabbkorrigeringen inte är tillgänglig i den här artikeln), distribution kräver tekniskt ansvarig, eskalering gruppmedlem eller godkännande av projektledaren och följande information gäller:

  • För att erhålla snabbkorrigeringen måste kunden ha drabbats programfel som beskrivs i avsnittet "Symptom".

  • Du måste följa de kunder du skickar korrigeringen till och förse dem med nästa service Pack-versionen när den blir tillgänglig (om ett service pack släpps).

Den här snabbkorrigeringen kommer att ingå i den italienska versionen av Microsoft Dynamics NAV 2013.


Installationsinformation

Microsoft tillhandahåller programmeringsexempel endast utan garanti varken uttryckliga eller underförstådda. Detta inkluderar men är inte begränsat till, underförstådda garantier om säljbarhet eller lämplighet för ett särskilt ändamål. Den här artikeln förutsätter att du är bekant med det programmeringsspråk som demonstreras och de verktyg som används för att skapa och felsöka procedurer. Microsofts supporttekniker kan hjälpa till att förklara funktionen hos en viss procedur. De kommer inte ändra dessa exempel för att ge ytterligare funktioner eller skapa procedurer som motsvarar dina speciella behov.

Obs! Innan du installerar den här snabbkorrigeringen måste du kontrollera att alla användare av Microsoft Navision-klient har loggat ut. Detta inkluderar Microsoft Navision Application Services (NAS) klientanvändare. Du ska endast klientanvändare som är inloggad när du implementerar den här snabbkorrigeringen.

Om du vill genomföra den här snabbkorrigeringen måste du ha en utvecklarlicens.

Vi rekommenderar att tilldelas användarkontot i fönstret Windows-inloggningar eller i fönstret databasinloggningar "SUPER" roll-ID. Om användarkontot inte kan tilldelas "SUPER" roll-ID måste du kontrollera att användarkontot har följande behörigheter:

  • Ändra behörighet för objektet ändras.

  • Körbehörighet för systemet objektet ID 5210 objektet och objektet System objektet ID 9015 .



Obs! Du har inte behörighet för datalager inte data reparation.

Kod ändras

Obs! Alltid åtgärdas testa koden i en kontrollerad miljö innan du installerar korrigeringar för produktionsdatorer.
Lös problemet så här:

  1. Ändra koden i funktionen CreateVendBillWithhTax i tabellen Leverantör Bill rad (12182) enligt följande:
    Befintlig kod

    ...              VendBillWithhTax."Currency Code" := VendorBillHeader."Currency Code";
    VendBillWithhTax."External Document No." := "External Document No.";
    VendBillWithhTax."Related Date" := VendorBillHeader."Posting Date";
    VendBillWithhTax."Withholding Tax Code" := WithholdCode;
    VendBillWithhTax."Social Security Code" := SocialSecurityCode;

    // Delete the following line.
    VendBillWithhTax.VALIDATE("Total Amount","Remaining Amount");

    VendBillWithhTax."Old Withholding Amount" := VendBillWithhTax."Withholding Tax Amount";
    VendBillWithhTax."Old Free-Lance Amount" := VendBillWithhTax."Free-Lance Amount";
    END;
    // IT0007.begin
    IF VendBillWithhTax."Withholding Tax Code" <> '' THEN
    ...

    Ersättningskod

    ...              VendBillWithhTax."Currency Code" := VendorBillHeader."Currency Code";
    VendBillWithhTax."External Document No." := "External Document No.";
    VendBillWithhTax."Related Date" := VendorBillHeader."Posting Date";
    VendBillWithhTax."Withholding Tax Code" := WithholdCode;
    VendBillWithhTax."Social Security Code" := SocialSecurityCode;

    // Add the following line.
    VendBillWithhTax.VALIDATE("Total Amount","Amount to Pay");

    VendBillWithhTax."Old Withholding Amount" := VendBillWithhTax."Withholding Tax Amount";
    VendBillWithhTax."Old Free-Lance Amount" := VendBillWithhTax."Free-Lance Amount";
    END;
    // IT0007.begin
    IF VendBillWithhTax."Withholding Tax Code" <> '' THEN
    ...

  2. Ändra koden i kontrollerna i den manuella leverantören betalningsraden formulär (12188) enligt följande:
    Befintlig kod 1

    ...                                                   InPage=0;
    CaptionML=ENU=Withholding Tax Code;
    SourceExpr=WithholdingTaxCode;
    TableRelation="Withhold Code" }
    { 1130006;Label ;440 ;2090 ;3300 ;440 ;ParentControl=1130005 }

    // Delete the following line.
    { 1130007;TextBox ;13090;3190 ;1700 ;440 ;ParentControl=1130000;

    InPage=0;
    CaptionML=ENU=Vendor Bank Account;
    SourceExpr=VendorBankAccount;
    TableRelation="Vendor Bank Account";
    OnLookup=VAR
    ...

    Ersättningskod 1

    ...                                                   InPage=0;
    CaptionML=ENU=Withholding Tax Code;
    SourceExpr=WithholdingTaxCode;
    TableRelation="Withhold Code" }
    { 1130006;Label ;440 ;2090 ;3300 ;440 ;ParentControl=1130005 }

    // Add the following line.
    { 1130007;TextBox ;13090;3740 ;1700 ;440 ;ParentControl=1130000;

    InPage=0;
    CaptionML=ENU=Vendor Bank Account;
    SourceExpr=VendorBankAccount;
    TableRelation="Vendor Bank Account";
    OnLookup=VAR
    ...

    Befintlig kod 2

    ...                                                              IF FORM.RUNMODAL(FORM::"Vendor Bank Account List",VendBankAcc,VendBankAcc.Code) = ACTION::LookupOK THEN
    VendorBankAccount := VendBankAcc.Code;
    // IT0001.end
    END;
    }

    // Delete the following line.
    { 1130008;Label ;9680 ;3190 ;3300 ;440 ;ParentControl=1130007 }

    { 1130009;TextBox ;3850 ;3190 ;5500 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Description;
    SourceExpr=Desc }
    { 1130010;Label ;440 ;3190 ;3300 ;440 ;ParentControl=1130009 }
    ...

    Ersättningskod 2

    ...                                                              IF FORM.RUNMODAL(FORM::"Vendor Bank Account List",VendBankAcc,VendBankAcc.Code) = ACTION::LookupOK THEN
    VendorBankAccount := VendBankAcc.Code;
    // IT0001.end
    END;
    }

    // Add the following line.
    { 1130008;Label ;9680 ;3740 ;3300 ;440 ;ParentControl=1130007 }

    { 1130009;TextBox ;3850 ;3190 ;5500 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Description;
    SourceExpr=Desc }
    { 1130010;Label ;440 ;3190 ;3300 ;440 ;ParentControl=1130009 }
    ...

    Befintlig kod 3

    ...      { 1130013;TextBox   ;13090;990  ;1700 ;440  ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Total Amount;
    SourceExpr=TotalAmount }
    { 1130014;Label ;9680 ;990 ;3300 ;440 ;ParentControl=1130013 }

    // Delete the following line.
    { 1130015;TextBox ;13090;1540 ;2200 ;440 ;ParentControl=1130000;

    InPage=0;
    CaptionML=ENU=Document Type;
    OptionCaptionML=ENU=" ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund";
    OptionString=[ ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund];
    SourceExpr=DocumentType }
    ...

    Ersättningskod 3

    ...      { 1130013;TextBox   ;13090;990  ;1700 ;440  ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Total Amount;
    SourceExpr=TotalAmount }
    { 1130014;Label ;9680 ;990 ;3300 ;440 ;ParentControl=1130013 }

    // Add the following line.
    { 1130015;TextBox ;13090;2090 ;2200 ;440 ;ParentControl=1130000;

    InPage=0;
    CaptionML=ENU=Document Type;
    OptionCaptionML=ENU=" ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund";
    OptionString=[ ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund];
    SourceExpr=DocumentType }
    ...

    Befintlig kod 4

    ...                                                   InPage=0;
    CaptionML=ENU=Document Type;
    OptionCaptionML=ENU=" ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund";
    OptionString=[ ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund];
    SourceExpr=DocumentType }

    // Delete the following lines.
    { 1130016;Label ;9680 ;1540 ;3300 ;440 ;ParentControl=1130015 }
    { 1130017;TextBox ;13090;2090 ;1700 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Document No.;
    SourceExpr=DocumentNo }
    { 1130018;Label ;9680 ;2090 ;3300 ;440 ;ParentControl=1130017 }
    { 1130019;TextBox ;13090;2640 ;1700 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Document Date;
    SourceExpr=DocumentDate }
    { 1130020;Label ;9680 ;2640 ;3300 ;440 ;ParentControl=1130019 }
    // End of the lines.

    { 1130024;TextBox ;3850 ;2640 ;2750 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Social Security Code;
    SourceExpr=SocialSecurityCode;
    TableRelation="Contribution Code" }
    ...

    Ersättningskod 4

    ...                                                   InPage=0;
    CaptionML=ENU=Document Type;
    OptionCaptionML=ENU=" ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund";
    OptionString=[ ,Payment,Invoice,Credit Memo,Finance Charge Memo,Reminder,Refund];
    SourceExpr=DocumentType }

    // Add the following lines.
    { 1130016;Label ;9680 ;2090 ;3300 ;440 ;ParentControl=1130015 }
    { 1130017;TextBox ;13090;2640 ;1700 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Document No.;
    SourceExpr=DocumentNo }
    { 1130018;Label ;9680 ;2640 ;3300 ;440 ;ParentControl=1130017 }
    { 1130019;TextBox ;13090;3190 ;1700 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Document Date;
    SourceExpr=DocumentDate }
    { 1130020;Label ;9680 ;3190 ;3300 ;440 ;ParentControl=1130019 }
    // End of the lines.

    { 1130024;TextBox ;3850 ;2640 ;2750 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Social Security Code;
    SourceExpr=SocialSecurityCode;
    TableRelation="Contribution Code" }
    ...

    Befintlig kod 5

    ...                                                   InPage=0;
    CaptionML=ENU=Social Security Code;
    SourceExpr=SocialSecurityCode;
    TableRelation="Contribution Code" }
    { 1130025;Label ;440 ;2640 ;3300 ;440 ;ParentControl=1130024 }
    { 1130021;CommandButton;14410;5720;2200;550 ;HorzGlue=Right;
    VertGlue=Bottom;
    PushAction=FormHelp }
    { 1130022;CommandButton;11990;5720;2200;550 ;HorzGlue=Right;
    VertGlue=Bottom;
    ...

    Ersättningskod 5

    ...                                                   InPage=0;
    CaptionML=ENU=Social Security Code;
    SourceExpr=SocialSecurityCode;
    TableRelation="Contribution Code" }
    { 1130025;Label ;440 ;2640 ;3300 ;440 ;ParentControl=1130024 }

    // Add the following lines.
    { 1130026;TextBox ;13090;1540 ;1700 ;440 ;ParentControl=1130000;
    InPage=0;
    CaptionML=ENU=Tax Base Amount;
    SourceExpr=TaxBaseAmount }
    { 1130027;Label ;9680 ;1540 ;3300 ;440 ;ParentControl=1130026 }
    // End of the lines.

    { 1130021;CommandButton;14410;5720;2200;550 ;HorzGlue=Right;
    VertGlue=Bottom;
    PushAction=FormHelp }
    { 1130022;CommandButton;11990;5720;2200;550 ;HorzGlue=Right;
    VertGlue=Bottom;
    ...

    Befintlig kod 6

    ...                                                              "Due Date" := PostingDate;
    "External Document No." := ExternalDocNo;
    "Instalment Amount" := TotalAmount;
    "Remaining Amount" := TotalAmount;
    "Gross Amount to Pay" := TotalAmount;

    // Delete the following line.
    "Amount to Pay" := TotalAmount;

    "Manual Line" := TRUE;
    "Cumulative Transfers" := TRUE;
    SetWithholdCode(WithholdingTaxCode);
    SetSocialSecurityCode(SocialSecurityCode);
    INSERT(TRUE)
    ...

    Ersättningskod 6

    ...                                                              "Due Date" := PostingDate;
    "External Document No." := ExternalDocNo;
    "Instalment Amount" := TotalAmount;
    "Remaining Amount" := TotalAmount;
    "Gross Amount to Pay" := TotalAmount;

    // Add the following line.
    "Amount to Pay" := TaxBaseAmount;

    "Manual Line" := TRUE;
    "Cumulative Transfers" := TRUE;
    SetWithholdCode(WithholdingTaxCode);
    SetSocialSecurityCode(SocialSecurityCode);
    INSERT(TRUE)
    ...

  3. Lägg till den globala variabeln i den manuella leverantören betalningsraden formulär (12188):

    TaxBaseAmount@1130000 : Decimal;
  4. Ändra koden i funktionen CalculateWithholdingTax i innehållen - bidrag kodmodul (12101) enligt följande:
    Befintlig kod 1

    ...      PROCEDURE CalculateWithholdingTax@1130001(VAR PurchHeader@1130000 : Record 38;Recalculate@1130001 : Boolean);
    VAR
    PurchWithSoc@1130002 : Record 12137;
    PurchLine@1130003 : Record 39;

    // Delete the following line.
    TotalAmount@1130004 : Decimal;

    BEGIN
    PurchLine.RESET;
    PurchLine.SETRANGE("Document Type",PurchHeader."Document Type");
    PurchLine.SETRANGE("Document No.",PurchHeader."No.");
    PurchLine.SETRANGE(Type,PurchLine.Type::"G/L Account");
    ...

    Ersättningskod 1

    ...      PROCEDURE CalculateWithholdingTax@1130001(VAR PurchHeader@1130000 : Record 38;Recalculate@1130001 : Boolean);
    VAR
    PurchWithSoc@1130002 : Record 12137;
    PurchLine@1130003 : Record 39;

    // Add the following lines.
    TempPurchLine@1130005 : TEMPORARY Record 39;
    TotalAmount@1130004 : Decimal;
    VATAmount@1130006 : Decimal;
    // End of the lines.

    BEGIN
    PurchLine.RESET;
    PurchLine.SETRANGE("Document Type",PurchHeader."Document Type");
    PurchLine.SETRANGE("Document No.",PurchHeader."No.");
    PurchLine.SETRANGE(Type,PurchLine.Type::"G/L Account");
    ...

    Befintlig kod 2

    ...        PurchLine.SETRANGE(Type,PurchLine.Type::"G/L Account");

    TotalAmount := 0;
    IF PurchLine.FIND('-') THEN
    REPEAT

    // Delete the following lines.
    TotalAmount := TotalAmount + PurchLine."Line Amount";
    UNTIL PurchLine.NEXT = 0;

    // End of the lines.

    IF PurchWithSoc.GET(PurchHeader."Document Type", PurchHeader."No.") THEN
    IF (PurchWithSoc."Total Amount" = 0) OR
    Recalculate
    THEN BEGIN
    PurchWithSoc."Currency Code" := PurchHeader."Currency Code";
    ...

    Ersättningskod 2

    ...        PurchLine.SETRANGE(Type,PurchLine.Type::"G/L Account");

    TotalAmount := 0;
    IF PurchLine.FIND('-') THEN
    REPEAT

    // Add the following lines.
    IF PurchHeader."Prices Including VAT" THEN BEGIN
    TempPurchLine := PurchLine;
    TempPurchLine.VALIDATE("Amount Including VAT",PurchLine."Line Amount");
    TotalAmount += TempPurchLine."VAT Base Amount"
    END ELSE
    TotalAmount += PurchLine."Line Amount";
    UNTIL PurchLine.NEXT = 0;
    // End of the lines.

    IF PurchWithSoc.GET(PurchHeader."Document Type", PurchHeader."No.") THEN
    IF (PurchWithSoc."Total Amount" = 0) OR
    Recalculate
    THEN BEGIN
    PurchWithSoc."Currency Code" := PurchHeader."Currency Code";
    ...

Förutsättningar

Du måste ha någon av följande produkter som har installerat den här snabbkorrigeringen:

  • Den italienska versionen av Microsoft Dynamics NAV 2009 R2

  • Den italienska versionen av Microsoft Dynamics NAV 2009 Service Pack 1

Information om borttagning

Du kan inte ta bort den här snabbkorrigeringen.

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet "Gäller".

Referenser

VSFT-DynamicsNAVSE: 348285

Obs! Detta är en "SNABBPUBLICERING"-artikel skapad direkt från Microsoft support-organisationen. Informationen häri tillhandahålls i befintligt skick som svar på nya problem. Till följd av hastigheten för att göra det tillgängligt kan materialet innehålla typografiska fel och kan ändras när som helst utan föregående meddelande. Se Villkoren för användning för andra överväganden.

Författare: avannini
Skribent: v-brialu
Teknisk granskare: avannini
Redigerare:

Behöver du mer hjälp?

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Microsoft Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×