Symptomen
"No van registers" telt die bedrag van nul als geldig facturen en deze facturen met inbegrip van de Spaanse versie van Microsoft Dynamics NAV 2009 nummer van de totale uitvoer. De facturen die waarde is nul in 340 modelbestand niet moet worden weergegeven en niet worden opgenomen in de totale "niet van registers" ofwel. Volg de stappen in de sectie codewijzigingen oplossen van dit probleem. Dit probleem treedt op in de volgende producten:
-
De Spaanse versie van Microsoft Dynamics NAV 2009 R2
-
De Spaanse versie van Microsoft Dynamics NAV 2009 SP1
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. Zij zal deze voorbeelden bieden extra functionaliteit of desgewenst uw specifieke vereisten echter niet wijzigen.
Opmerking Voordat u deze hotfix hebt geïnstalleerd, controleert u of dat alle gebruikers van Microsoft Dynamics NAV-clients zijn afgemeld bij het systeem. Dit omvat services voor Microsoft Dynamics NAV Application Server (NAS). 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 de System Object ID 9015
-object.
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:-
De code in de functie CalcTotals in de lijst aanbrengt 340-aangifte (10743) als volgt wijzigen:
Bestaande code 1...VAR
VATEntry6@1100000 : Record 254; VATEntry7@1100002 : Record 254; BEGIN VATEntryTemporary.DELETEALL; VATEntry6.RESET; ...Nieuwe code 1
...VAR
VATEntry6@1100000 : Record 254; VATEntry7@1100002 : Record 254; // Add the following line. TempUnrealVATBuffer@1100001 : TEMPORARY Record 10704; // End of the added line. BEGIN VATEntryTemporary.DELETEALL; VATEntry6.RESET; ...Bestaande code 2
...VATEntry7.SETRANGE(VATEntry7.Type,VATEntryTemporary.Type);
IF VATEntry7.FINDFIRST THEN VATBuffer.DELETEALL; REPEAT VATBuffer."VAT %" := VATEntry7."VAT %"; VATBuffer."EC %" := VATEntry7."EC %"; ...Vervangende code 2
...VATEntry7.SETRANGE(VATEntry7.Type,VATEntryTemporary.Type);
IF VATEntry7.FINDFIRST THEN VATBuffer.DELETEALL; // Add the following line. TempUnrealVATBuffer.DELETEALL; // End of the added line. REPEAT VATBuffer."VAT %" := VATEntry7."VAT %"; VATBuffer."EC %" := VATEntry7."EC %"; ...Bestaande code 3
... IF VATEntry7.Type = VATEntry7.Type::Sale THEN BEGIN
VATEntry7.Base := -VATEntry7.Base; VATEntry7.Amount := -VATEntry7.Amount; // Delete the following lines. END; IF VATBuffer.FIND THEN BEGIN VATBuffer.Base := VATBuffer.Base + VATEntry7.Base; VATBuffer.Amount := VATBuffer.Amount + VATEntry7.Amount; IF (VATEntry7.Type = VATEntry7.Type::Sale) AND (VATEntry7."EC %" <> 0) THEN VATBuffer."EC Amount" := VATBuffer."EC Amount" + ROUND(VATEntry7.Base * VATEntry7."EC %" / 100); VATBuffer.MODIFY; END ELSE BEGIN VATBuffer.Base := VATEntry7.Base; VATBuffer.Amount := VATEntry7.Amount; VATBuffer."EC Amount" := 0; IF (VATEntry7.Type = VATEntry7.Type::Sale) AND (VATEntry7."EC %" <> 0) THEN VATBuffer."EC Amount" := ROUND(VATEntry7.Base * VATEntry7."EC %" / 100); VATBuffer.INSERT; END; // End of the deleted lines. UNTIL VATEntry7.NEXT = 0; IF VATBuffer.FINDFIRST THEN NoofRecords := NoofRecords + VATBuffer.COUNT; ...Vervangende code 3
...IF VATEntry7.Type = VATEntry7.Type::Sale THEN BEGIN
VATEntry7.Base := -VATEntry7.Base; VATEntry7.Amount := -VATEntry7.Amount; // Add the following lines. VATEntry7."Unrealized Base" := -VATEntry7."Unrealized Base"; VATEntry7."Unrealized Amount" := -VATEntry7."Unrealized Amount"; END; IF VATBuffer.FIND THEN BEGIN UpdateVATBuffer(VATBuffer,VATEntry7); VATBuffer.MODIFY; END ELSE BEGIN VATBuffer.INIT; UpdateVATBuffer(VATBuffer,VATEntry7); VATBuffer.INSERT; END; TempUnrealVATBuffer := VATBuffer; IF TempUnrealVATBuffer.FIND THEN BEGIN UpdateUnrealVATBuffer(TempUnrealVATBuffer,VATEntry7); TempUnrealVATBuffer.MODIFY; END ELSE BEGIN TempUnrealVATBuffer.INIT; UpdateUnrealVATBuffer(TempUnrealVATBuffer,VATEntry7); TempUnrealVATBuffer.INSERT; END; IF IsEmptyVATBuffer(VATBuffer) AND IsEmptyVATBuffer(TempUnrealVATBuffer) THEN BEGIN VATBuffer.DELETE; TempUnrealVATBuffer.DELETE; END; // End of the added lines. UNTIL VATEntry7.NEXT = 0; IF VATBuffer.FINDFIRST THEN NoofRecords := NoofRecords + VATBuffer.COUNT; ... -
De code in de functie IsEmptyVATBuffer in de lijst aanbrengt 340-aangifte (10743) als volgt wijzigen:
Bestaande code...UNTIL VATEntryTemporary.NEXT = 0;
END; PROCEDURE GetSalesShipmentDate@1100022(DocumentNo@1100000 : Code[20]) : Date; VAR SalesShipmentHeader@1100001 : Record 110; ...Nieuwe code
...UNTIL VATEntryTemporary.NEXT = 0;
END; // Add the following lines. LOCAL PROCEDURE IsEmptyVATBuffer@1100065(TempVATBuffer@1100000 : Record 10704) : Boolean; BEGIN WITH TempVATBuffer DO EXIT((Base = 0) AND (Amount = 0) AND ("EC Amount" = 0)); END; LOCAL PROCEDURE UpdateVATBuffer@1100061(VAR TempVATBuffer@1100000 : Record 10704;AddedVATEntry@1100001 : Record 254); BEGIN WITH TempVATBuffer DO BEGIN Base += AddedVATEntry.Base; Amount += AddedVATEntry.Amount; IF (AddedVATEntry.Type = AddedVATEntry.Type::Sale) AND (AddedVATEntry."EC %" <> 0) THEN "EC Amount" += ROUND(AddedVATEntry.Base * AddedVATEntry."EC %" / 100); END; END; LOCAL PROCEDURE UpdateUnrealVATBuffer@1100063(VAR TempVATBuffer@1100000 : Record 10704;AddedVATEntry@1100001 : Record 254); BEGIN WITH TempVATBuffer DO BEGIN Base += AddedVATEntry."Unrealized Base"; Amount += AddedVATEntry."Unrealized Amount"; IF (AddedVATEntry.Type = AddedVATEntry.Type::Sale) AND (AddedVATEntry."EC %" <> 0) THEN "EC Amount" += ROUND(AddedVATEntry."Unrealized Base" * AddedVATEntry."EC %" / 100); END; END; // End of the added lines. PROCEDURE GetSalesShipmentDate@1100022(DocumentNo@1100000 : Code[20]) : Date; VAR SalesShipmentHeader@1100001 : Record 110; ...
Vereisten
Hebt u een van de volgende producten geïnstalleerd om deze hotfix:
-
De Spaanse versie van Microsoft Dynamics NAV 2009 R2
-
De Spaanse versie van Microsoft Dynamics NAV 2009 SP1
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'.
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 Gebruiksvoorwaardenvoor andere overwegingen.