Applies ToDynamics NAV 2009

Dit artikel is van toepassing op Microsoft Dynamics NAV voor de taalinstelling Russisch (ru).

Symptomen

In de Russische versie van Microsoft Dynamics NAV 2009 R2 met Feature Pack 1, als in de tabel BTW-post (254) de btw-toewijzing wijzigingen bewerkingen die u probeert heeft te in het formulier Leveranciersposten vereffenen registreren, wordt het volgende foutbericht weergegeven:

Artikelnr.Item_No. bestaat niet.

Oplossing

Informatie over de hotfix

Een ondersteunde hotfix is nu beschikbaar bij Microsoft. Het is echter alleen bedoeld om het probleem dat wordt beschreven in dit artikel. Pas deze alleen toe op systemen waarop dit specifieke probleem zich voordoet. Deze hotfix moet wellicht extra worden getest. Als u geen ernstige problemen ondervindt, is het daarom raadzaam te wachten op het volgende servicepack voor Microsoft Dynamics NAV 2009 of de volgende Microsoft Dynamics NAV versie waarin deze hotfix is opgenomen.Opmerking In speciale gevallen kunnen kosten die verbonden zijn aan ondersteuningsoproepen ondersteuning worden geannuleerd als een medewerker van Technical Support voor Microsoft Dynamics en verwante producten bepaalt dat een specifieke update de oplossing van uw probleem. De normale ondersteuningskosten blijven gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.

Informatie over de installatie

Microsoft verstrekt programmeervoorbeelden uitsluitend ter illustratie, zonder expliciete of impliciete garantie. Dit omvat, maar is niet beperkt tot, de impliciete garanties van verkoopbaarheid of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend met de programmeertaal die wordt aangetoond en met de hulpprogramma's die worden gebruikt bent voor het maken van en naar procedures voor foutopsporing. Ondersteuningstechnici van Microsoft kunnen voor uitleg over de functionaliteit van een bepaalde procedure, maar zij zullen deze voorbeelden bieden extra functionaliteit of desgewenst uw specifieke vereisten niet wijzigen.Opmerking Voordat u deze hotfix hebt geïnstalleerd, controleert u of dat alle gebruikers van Microsoft Navision-clients zijn afgemeld bij het systeem. Dit geldt ook voor gebruikers van Microsoft Navision Application Services (NAS)-clients. U moet de alleen clientgebruiker die is aangemeld wanneer u deze hotfix gaat implementeren.Als u deze hotfix gaat implementeren, hebt u een ontwikkelaarslicentie voor.Is raadzaam dat de gebruikersaccount in het venster Windows-aanmeldingen of Databaseaanmeldingen de rol-id 'SUPER'. Als de gebruikersaccount kan worden toegewezen als de ID 'SUPER' rol, moet u controleren of de gebruikersaccount de volgende machtigingen heeft:

  • De machtiging wijzigen voor het object dat u wijzigt.

  • De machtiging uitvoeren voor het object System Object ID 5210 en voor het object System Object ID 9015 .

Opmerking Er geen rechten voor de opgeslagen gegevens hebben, tenzij u gegevens herstellen.

Codewijzigingen

Opmerking Altijd test code worden opgelost in een testomgeving voordat u de correcties in de productieomgeving.U kunt dit probleem oplossen door de volgende stappen uit te voeren:Opmerking  Gebruik de volgende .fob-bestand maken van het veld (12490).

Bestandsnaam

Bestandsversie

Bestandsgrootte

Datum

Tijd

Platform

Vstf260227.fob

Niet van toepassing

169,340

03-Jun-2011

10:08

Niet van toepassing

Het volgende bestand is gedownload van de Microsoft Dynamics File Exchange Server:

https://mbs2.microsoft.com/fileexchange/?fileID=5f52394d-7020-4d24-98b4-909002c45cfeReleasedatum: 2 April 2014Microsoft heeft dit bestand op virussen gecontroleerd. Microsoft gebruikt de meest actuele software voor virusdetectie die beschikbaar was op de datum waarop het bestand werd gepost. Het bestand is opgeslagen op beveiligde servers die onbevoegde wijzigingen aan het bestand verhinderen.

  1. De code in de tabel Omkering (179) als volgt wijzigen:

    1. Voeg het volgende veld: {12490; BTW-toewijzing; Boolean}

    2. Wijzig als volgt de code in de functie InsertReversalEntry :Bestaande code

      ...                  ReversalEntry."Bal. Account Type" := GLEntry."Bal. Account Type";                ReversalEntry."Bal. Account No." := GLEntry."Bal. Account No.";                ReversalEntry."Line No." := NextLineNo;                NextLineNo := NextLineNo + 1;                ReversalEntry.INSERT;                IF GLEntry.Amount > 0 THEN BEGIN                  GLItemLedgRelation.RESET;                  GLItemLedgRelation.SETRANGE("G/L Entry No.",GLEntry."Entry No.");...

      Nieuwe code

      ...                 ReversalEntry."Bal. Account Type" := GLEntry."Bal. Account Type";                ReversalEntry."Bal. Account No." := GLEntry."Bal. Account No.";                ReversalEntry."Line No." := NextLineNo;// Add the following line.                ReversalEntry."VAT Allocation" := VATAllocOnCost; // End of the added line.                NextLineNo := NextLineNo + 1;                ReversalEntry.INSERT;                IF GLEntry.Amount >0 THEN BEGIN                  GLItemLedgRelation.RESET;                 GLItemLedgRelation.SETRANGE("G/L Entry No.",GLEntry."Entry No."); ...
    3. Wijzig als volgt de code in de functie CheckEntries :Bestaande code 1

      ...    PROCEDURE CheckEntries@14();   ...

      Nieuwe code 1

      ...   PROCEDURE CheckEntries@14(IsVATAllocOnCost@1000000000 : Boolean);        ...

      Bestaande code 2

      ...      MaxPostingDate := 0D;      IF NOT GLEntry.FIND('-') THEN        ERROR(Text009,GLEntry.TABLECAPTION,GLAcc.TABLECAPTION);// Delete the following line.      VATAllocOnCost := VATAllocationExist(VATEntry); // End of the deleted line.      IF GLEntry.FIND('-') THEN BEGIN// Delete the following line.        IF (GLEntry."Journal Batch Name" = '') AND NOT VATAllocOnCost THEN // End of the deleted line.          TestFieldError;        REPEAT          CheckGLAcc(GLEntry,BalanceCheckAmount,BalanceCheckAddCurrAmount);        UNTIL GLEntry.NEXT = 0;      END;    ...

      Vervangende code 2

      ...         MaxPostingDate := 0D;      IF NOT GLEntry.FIND('-') THEN        ERROR(Text009,GLEntry.TABLECAPTION,GLAcc.TABLECAPTION);      IF GLEntry.FIND('-') THEN BEGIN// Add the following line.        IF (GLEntry."Journal Batch Name" = '') AND NOT IsVATAllocOnCost THEN// End of the added line.          TestFieldError;        REPEAT          CheckGLAcc(GLEntry,BalanceCheckAmount,BalanceCheckAddCurrAmount);        UNTIL GLEntry.NEXT = 0;      END;...

      Bestaande code 3

      ...       IF VATEntry.FIND('-') THEN        REPEAT          CheckVAT(VATEntry);        UNTIL VATEntry.NEXT = 0;// Delete the following line.      IF VATAllocOnCost THEN // End of the deleted line.        IF ValueEntry.FIND('-') THEN          REPEAT            CheckItem(ValueEntry);          UNTIL ValueEntry.NEXT = 0;   ...

      Vervangende code 3

      ...       IF VATEntry.FIND('-') THEN        REPEAT          CheckVAT(VATEntry);        UNTIL VATEntry.NEXT = 0;// Add the following line.      IF IsVATAllocOnCost THEN // End of the added line.        IF ValueEntry.FIND('-') THEN          REPEAT            CheckItem(ValueEntry);          UNTIL ValueEntry.NEXT = 0;  ...
    4. Wijzig als volgt de code in de functie SetReverseFilter :Bestaande code 1

      ...           TaxDiffEntry.SETRANGE("Transaction No.",Number);      END ELSE BEGIN        GLReg.GET(Number); ...

      Nieuwe code 1

      ...         TaxDiffEntry.SETRANGE("Transaction No.",Number);// Add the following line.       ValueEntry.SETRANGE("Entry No.",0); // End of the added line.      END ELSE BEGIN        GLReg.GET(Number);...

      Bestaande code 2

      ...           VATEntry.SETRANGE("Entry No.",GLReg."From VAT Entry No.",GLReg."To VAT Entry No.");        GLItemLedgRelation.SETCURRENTKEY(GLItemLedgRelation."G/L Register No.");        GLItemLedgRelation.SETRANGE("G/L Register No.",GLReg."No.");        IF GLItemLedgRelation.FINDFIRST THEN          FromValueEntryNo := GLItemLedgRelation."Value Entry No.";        IF GLItemLedgRelation.FINDLAST THEN          ToValueEntryNo := GLItemLedgRelation."Value Entry No.";        ValueEntry.SETRANGE("Entry No.",FromValueEntryNo,ToValueEntryNo); ...

      Vervangende code 2

      ...        VATEntry.SETRANGE("Entry No.",GLReg."From VAT Entry No.",GLReg."To VAT Entry No.");// Add the following lines.        FromValueEntryNo := 0;         ToValueEntryNo := 0;         IF VATAllocOnCost THEN BEGIN // End of the added lines.          GLItemLedgRelation.SETCURRENTKEY(GLItemLedgRelation."G/L Register No.");          GLItemLedgRelation.SETRANGE("G/L Register No.",GLReg."No.");          IF GLItemLedgRelation.FINDFIRST THEN            FromValueEntryNo := GLItemLedgRelation."Value Entry No.";          IF GLItemLedgRelation.FINDLAST THEN            ToValueEntryNo := GLItemLedgRelation."Value Entry No.";// Add the following line.        END;// End of the added line.        ValueEntry.SETRANGE("Entry No.",FromValueEntryNo,ToValueEntryNo);  ...
    5. Wijzig als volgt de code in de functie VATAllocationExist :Bestaande code

      ...// Delete the following line.       VATEntry2.COPYFILTERS(VATEntry2); // End of the deleted line.      VATEntry2.SETRANGE("VAT Allocation Type",VATEntry2."VAT Allocation Type"::Charge);      EXIT(NOT VATEntry2.ISEMPTY);   ...

      Nieuwe code

      ...// Add the following line.       VATEntry2.COPYFILTERS(VATEntry); // End of the added line.      VATEntry2.SETRANGE("VAT Allocation Type",VATEntry2."VAT Allocation Type"::Charge);      EXIT(NOT VATEntry2.ISEMPTY);  ...
  2. De code in de functie boeken in het formulier Posten tegenboeken (179) als volgt wijzigen:Voeg de volgende lokale variabele toe:

    • Naam: VATAllocOnCost

    • Gegevenstype: Boolean

    Bestaande code 1

    ...            IF TempGLReg.FINDSET THEN            REPEAT              ReversalEntry2.SetReverseFilter(TempGLReg."No.","Reversal Type");// Delete the following line.              ReversalEntry2.CheckEntries;  // End of the deleted line.              GET(1);              IF "Reversal Type" = "Reversal Type"::Register THEN                Number := TempGLReg."No."              ELSE                Number := "Transaction No."; ...

    Nieuwe code 1

    ...             IF TempGLReg.FINDSET THEN            REPEAT// Add the following lines.              SETRANGE("G/L Register No.",TempGLReg."No.");               SETRANGE("VAT Allocation",TRUE);               VATAllocOnCost := NOT ISEMPTY; // End of the added lines.              ReversalEntry2.SetReverseFilter(TempGLReg."No.","Reversal Type");// Add the following line.              ReversalEntry2.CheckEntries(VATAllocOnCost); // End of the added line.              GET(1);              IF "Reversal Type" = "Reversal Type"::Register THEN                Number := TempGLReg."No."              ELSE                Number := "Transaction No.";...

    Bestaande code 2

    ...          UNTIL TempGLReg.NEXT = 0;        END ELSE BEGIN          ReversalEntry2.SetReverseFilter("Transaction No.","Reversal Type");// Delete the following line.          ReversalEntry2.CheckEntries; // End of the deleted line.          GET(1);          IF "Reversal Type" = "Reversal Type"::Register THEN            Number := "G/L Register No."    ...

    Vervangende code 2

    ...             UNTIL TempGLReg.NEXT = 0;        END ELSE BEGIN// Add the following lines.          SETRANGE("G/L Register No.",TempGLReg."No.");           SETRANGE("VAT Allocation",TRUE);           VATAllocOnCost := NOT ISEMPTY; // End of the added lines.          ReversalEntry2.SetReverseFilter("Transaction No.","Reversal Type");// Add the following line.          ReversalEntry2.CheckEntries(VATAllocOnCost); // End of the added line.          GET(1);          IF "Reversal Type" = "Reversal Type"::Register THEN            Number := "G/L Register No." ...

Vereisten

U moet de Russische versie van Microsoft Dynamics NAV 2009 R2 met Feature Pack 1 zijn geïnstalleerd om deze hotfix te kunnen hebben.

Informatie over verwijderen

U kunt deze hotfix niet verwijderen.

Status

Microsoft heeft bevestigd dat dit probleem kan optreden in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.

Referenties

VSTF DynamicsNAV SE: 260227

Opmerking Dit is een 'Snel publiceren' artikel dat rechtstreeks door het ondersteuningsteam van Microsoft is gemaakt. De informatie wordt geleverd zoals het is in reactie op de opkomende problemen. Omdat het artikel snel beschikbaar moest zijn, kunnen de materialen typografische fouten bevatten en op elk gewenst moment zonder voorafgaande kennisgeving worden gewijzigd. Zie de Gebruiksvoorwaarden voor andere overwegingen.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.