Den här artikeln gäller för Microsoft Dynamics NAV för språk italienska (it).
Symptom
Anta att du har installerat snabbkorrigering 2274594 i den italienska versionen av Microsoft Dynamics NAV 2009 R2 och Microsoft Dynamics NAV 2009 Service Pack 1 (SP1). När du kör rapporten avskrivningsregel (12119) skrivs i rapporten inte ut slutet summor som är relaterade till föregående års siffror.
Mer information om snabbkorrigeringen 2274594 klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
2274594 bokföringsvärdet är felaktig när du skriver ut rapporten för avskrivningsregel (12119) i den italienska versionen av Microsoft Dynamics NAV 2009
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.
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 med att förklara funktionen hos en viss procedur, men kan 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:
-
Ändra koden i Data objekt nummer 1 i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... FASource := Text008;
IF NOT FADeprBook.GET("No.",DeprBookCode) THEN
CurrReport.SKIP;
// Delete the following lines.
IF SkipRecord THEN
CurrReport.SKIP;
// End of the lines.
IF "FA Posting Group" <> FADeprBook."FA Posting Group" THEN
ERROR(Text007,FIELDCAPTION("FA Posting Group"),"No.");
...Ersättningskod 1
... FASource := Text008;
IF NOT FADeprBook.GET("No.",DeprBookCode) THEN
CurrReport.SKIP;
// Add the following lines.
FixedAsset.COPY("Fixed Asset");
IF SkipRecord THEN BEGIN
IF FixedAsset.NEXT = 0 THEN
CreateTotals;
CurrReport.SKIP;
END;
// End of the lines.
IF "FA Posting Group" <> FADeprBook."FA Posting Group" THEN
ERROR(Text007,FIELDCAPTION("FA Posting Group"),"No.");
...Befintlig kod 2
... FillTempFALedgEntry;
UpdateTotals;
CreateGroupTotals;
// Delete the following lines.
CreateTotals;
TotalStartingAccumulated := TotalStartAmounts[2] + TotalStartAmounts[5] + TotalStartAmounts[6];
TotalAntAccDepreciation := TotalNetChangeAmounts[5] + TotalNetChangeAmounts[6];
IF TotalEndingAmounts[1]+TotalEndingAmounts[3]+TotalEndingAmounts[4] = 0 THEN BEGIN
TotalBasicDepreciationPerc := 0;
TotalAntAccDepreciationPerc := 0
END ELSE BEGIN
TotalBasicDepreciationPerc := ABS(ROUND((((TotalNetChangeAmounts[2] + ReclassDeprAmount) / // IT0001
(TotalEndingAmounts[1] +
TotalEndingAmounts[3] +
TotalEndingAmounts[4])) * 100),0.01));
TotalAntAccDepreciationPerc := ABS(ROUND(((TotalAntAccDepreciation /
TotalEndingAmounts[1] +
TotalEndingAmounts[3] +
TotalEndingAmounts[4]) * 100),0.01));
END;
// End of the lines.
END;
ReqFilterFields=No.,FA Class Code,FA Subclass Code,Budgeted Asset;
...Ersättningskod 2
... FillTempFALedgEntry;
UpdateTotals;
CreateGroupTotals;
// Add the following lines.
IF FixedAsset.NEXT = 0 THEN
CreateTotals;
// End of the lines.
END;
ReqFilterFields=No.,FA Class Code,FA Subclass Code,Budgeted Asset;
... -
Ändra koden i Data objekt nummer 1 avsnitt i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... CONTROLS
{
{ 169 ;TextBox ;24450;0 ;1650 ;423 ;FontBold=Yes;
// Delete the following line.
SourceExpr=BookValueAtEndingDate;
// End of the line.
AutoFormatType=1;
DataSetFieldName=BookValueAtEndingDate_Control169 }
{ 1130064;Label ;0 ;0 ;2250 ;423 ;HorzAlign=Left;
...Ersättningskod 1
... CONTROLS
{
{ 169 ;TextBox ;24450;0 ;1650 ;423 ;FontBold=Yes;
// Add the following line.
SourceExpr=EndTotalBookValueAtEndingDate;
// End of the line.
AutoFormatType=1;
DataSetFieldName=BookValueAtEndingDate_Control169 }
{ 1130064;Label ;0 ;0 ;2250 ;423 ;HorzAlign=Left;
...Befintlig kod 2
...TotalNetChangeAmounts_3__TotalNetChangeAmounts_4_ }
{ 1130077;TextBox ;5850 ;0 ;1800 ;423 ;SourceExpr=TotalDisposalAmounts[1]+TotalDisposalAmounts[3]+TotalDisposalAmounts[4];
DataSetFieldName=TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_ }
// Delete the following line.
{ 1130078;TextBox ;7650 ;0 ;1800 ;423 ;SourceExpr=TotalEndingAmounts[1]+TotalEndingAmounts[3]+TotalEndingAmounts[4];
// End of the line.
DataSetFieldName=TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078 }
{ 1130079;TextBox ;9450 ;0 ;1500 ;423 ;SourceExpr=TotalStartingAccumulated;
DataSetFieldName=TotalStartingAccumulated }
...Ersättningskod 2
... DataSetFieldName=TotalNetChangeAmounts_1__TotalNetChangeAmounts_3__TotalNetChangeAmounts_4_ }
{ 1130077;TextBox ;5850 ;0 ;1800 ;423 ;SourceExpr=TotalDisposalAmounts[1]+TotalDisposalAmounts[3]+TotalDisposalAmounts[4];
DataSetFieldName=TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_ }
// Add the following line.
{ 1130078;TextBox ;7650 ;0 ;1800 ;423 ;SourceExpr=EndTotalEndingAmounts[1]+EndTotalEndingAmounts[3]+EndTotalEndingAmounts[4];
// End of the line.
DataSetFieldName=TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078 }
{ 1130079;TextBox ;9450 ;0 ;1500 ;423 ;SourceExpr=TotalStartingAccumulated;
DataSetFieldName=TotalStartingAccumulated }
...Befintlig kod 3
... DataSetFieldName=TotalStartingAccumulated }
{ 1130081;TextBox ;13950;0 ;1500 ;423 ;SourceExpr=ABS(TotalNetChangeAmounts[2]);
DataSetFieldName=ABS_TotalNetChangeAmounts_2__ }
// Delete the following line.
{ 1130083;TextBox ;22950;0 ;1500 ;423 ;SourceExpr=ABS(TotalEndingAmounts[2]+TotalEndingAmounts[5]+TotalEndingAmounts[6]);
// End of the line.
DataSetFieldName=ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083 }
{ 1130090;TextBox ;21450;0 ;1500 ;423 ;SourceExpr=ABS(TotalNetChangeAmounts[2]+TotalAntAccDepreciation);
DataSetFieldName=ABS_TotalNetChangeAmounts_2__TotalAntAccDepreciation_ }
...Ersättningskod 3
... DataSetFieldName=TotalStartingAccumulated }
{ 1130081;TextBox ;13950;0 ;1500 ;423 ;SourceExpr=ABS(TotalNetChangeAmounts[2]);
DataSetFieldName=ABS_TotalNetChangeAmounts_2__ }
// Add the following line.
{ 1130083;TextBox ;22950;0 ;1500 ;423 ;SourceExpr=ABS(EndTotalEndingAmounts[2]+EndTotalEndingAmounts[5]+EndTotalEndingAmounts[6]);
// End of the line.
DataSetFieldName=ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083 }
{ 1130090;TextBox ;21450;0 ;1500 ;423 ;SourceExpr=ABS(TotalNetChangeAmounts[2]+TotalAntAccDepreciation);
DataSetFieldName=ABS_TotalNetChangeAmounts_2__TotalAntAccDepreciation_ }
... -
Lägg till följande globala variabler i rapporten avskrivningsregel (12119):
-
FixedAsset@1130040: Posten 5600
-
EndTotalEndingAmounts@1130041: ARRAY [7] i Decimal
-
EndTotalBookValueAtEndingDate@1130042: decimaltal
-
-
Ändra koden i funktionen UpdateTotals i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... GroupStartAmounts[J] := 0;
GroupNetChangeAmounts[J] := 0;
GroupDisposalAmounts[J] := 0;
// Delete the following lines.
TotalStartAmounts[J] := 0;
TotalNetChangeAmounts[J] := 0;
TotalDisposalAmounts[J] := 0;
TotalReclassDeprAmount := ReclassDeprAmount;
// End of the lines.
END;
// IT0001.end
FOR J := 1 TO NumberOfTypes DO BEGIN
...Ersättningskod 1
... GroupStartAmounts[J] := 0;
GroupNetChangeAmounts[J] := 0;
GroupDisposalAmounts[J] := 0;
END;
// IT0001.end
FOR J := 1 TO NumberOfTypes DO BEGIN
...Befintlig kod 2
... TotalStartAmounts[J] := TotalStartAmounts[J] + StartAmounts[J];
TotalNetChangeAmounts[J] := TotalNetChangeAmounts[J] + NetChangeAmounts[J];
TotalDisposalAmounts[J] := TotalDisposalAmounts[J] + DisposalAmounts[J];
END;
END;
...Ersättningskod 2
... TotalStartAmounts[J] := TotalStartAmounts[J] + StartAmounts[J];
TotalNetChangeAmounts[J] := TotalNetChangeAmounts[J] + NetChangeAmounts[J];
TotalDisposalAmounts[J] := TotalDisposalAmounts[J] + DisposalAmounts[J];
// Add the following lines.
IF J = 2 THEN
TotalReclassDeprAmount := TotalReclassDeprAmount + ReclassDeprAmount;
// End of the lines.
END;
END;
... -
Ändra koden i funktionen CreateGroupTotals i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... LOCAL PROCEDURE CreateGroupTotals@1130114();
BEGIN
BookValueAtEndingDate := 0;
BookValueAtStartingDate := 0;
FOR J := 1 TO NumberOfTypes DO BEGIN
...Ersättningskod 1
... LOCAL PROCEDURE CreateGroupTotals@1130114();
BEGIN
BookValueAtEndingDate := 0;
BookValueAtStartingDate := 0;
FOR J := 1 TO NumberOfTypes DO BEGIN
...Befintlig kod 2
... BookValueAtStartingDate := 0;
FOR J := 1 TO NumberOfTypes DO BEGIN
TotalEndingAmounts[J] := GroupStartAmounts[J] + GroupNetChangeAmounts[J] + GroupDisposalAmounts[J];
BookValueAtEndingDate := BookValueAtEndingDate + TotalEndingAmounts[J];
BookValueAtStartingDate := BookValueAtStartingDate + GroupStartAmounts[J];
...Ersättningskod 2
... BookValueAtStartingDate := 0;
FOR J := 1 TO NumberOfTypes DO BEGIN
TotalEndingAmounts[J] := GroupStartAmounts[J] + GroupNetChangeAmounts[J] + GroupDisposalAmounts[J];
// Add the following lines.
IF J = 2 THEN
TotalEndingAmounts[J] += ReclassDeprAmount;
// End of the lines.
BookValueAtEndingDate := BookValueAtEndingDate + TotalEndingAmounts[J];
BookValueAtStartingDate := BookValueAtStartingDate + GroupStartAmounts[J];
...Befintlig kod 3
... BookValueAtEndingDate := BookValueAtEndingDate + TotalEndingAmounts[J];
BookValueAtStartingDate := BookValueAtStartingDate + GroupStartAmounts[J];
// Delete the following lines.
IF J = 2 THEN
TotalEndingAmounts[J] += ReclassDeprAmount;
// End of the lines.
END;
END;
...Ersättningskod 3
... BookValueAtEndingDate := BookValueAtEndingDate + TotalEndingAmounts[J];
BookValueAtStartingDate := BookValueAtStartingDate + GroupStartAmounts[J];
END;
END;
... -
Ändra koden i funktionen CreateTotals i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... LOCAL PROCEDURE CreateTotals@1130117();
BEGIN
// Delete the following lines.
BookValueAtEndingDate := 0;
BookValueAtStartingDate := 0;
FOR J := 1 TO NumberOfTypes DO BEGIN
TotalEndingAmounts[J] := TotalStartAmounts[J] + TotalNetChangeAmounts[J] + TotalDisposalAmounts[J];
// End of the lines.
// IT0001.begin
IF J = 2 THEN
...Ersättningskod 1
... LOCAL PROCEDURE CreateTotals@1130117();
BEGIN
// Add the following lines.
FOR J := 1 TO NumberOfTypes DO BEGIN
EndTotalEndingAmounts[J] := TotalStartAmounts[J] + TotalNetChangeAmounts[J] + TotalDisposalAmounts[J];
// End of the lines.
// IT0001.begin
IF J = 2 THEN
...Befintlig kod 2
... // IT0001.begin
IF J = 2 THEN
// Delete the following lines.
TotalEndingAmounts[J] += ReclassDeprAmount;
// IT0001.end
BookValueAtEndingDate := BookValueAtEndingDate + TotalEndingAmounts[J];
BookValueAtStartingDate := BookValueAtStartingDate + TotalStartAmounts[J];
// End of the lines.
END;
END;
...Ersättningskod 2
... // IT0001.begin
IF J = 2 THEN
// Add the following lines.
EndTotalEndingAmounts[J] := EndTotalEndingAmounts[J] + TotalReclassDeprAmount;
// IT0001.end
EndTotalBookValueAtEndingDate := EndTotalBookValueAtEndingDate + EndTotalEndingAmounts[J];
END;
TotalStartingAccumulated := TotalStartAmounts[2] + TotalStartAmounts[5] + TotalStartAmounts[6];
TotalAntAccDepreciation := TotalNetChangeAmounts[5] + TotalNetChangeAmounts[6];
IF EndTotalEndingAmounts[1]+EndTotalEndingAmounts[3]+EndTotalEndingAmounts[4] = 0 THEN BEGIN
TotalBasicDepreciationPerc := 0;
TotalAntAccDepreciationPerc := 0
END ELSE BEGIN
TotalBasicDepreciationPerc := ABS(ROUND((((TotalNetChangeAmounts[2] + TotalReclassDeprAmount) / // IT0001
(EndTotalEndingAmounts[1] +
EndTotalEndingAmounts[3] +
EndTotalEndingAmounts[4])) * 100),0.01));
TotalAntAccDepreciationPerc := ABS(ROUND(((TotalAntAccDepreciation /
EndTotalEndingAmounts[1] +
EndTotalEndingAmounts[3] +
EndTotalEndingAmounts[4]) * 100),0.01));
// End of the lines.
END;
END;
... -
Ändra koden i rapporten avskrivningsregel (12119) enligt följande:
Befintlig kod 1... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Delete the following line.
<Value>=LAST(Fields!TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4_.Value)</Value>
// End of the line.
<ZIndex>11</ZIndex>
</Textbox>
</ReportItems>
...Ersättningskod 1
... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Add the following line.
<Value>=LAST(Fields!TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078.Value)</Value>
// End of the line.
<ZIndex>11</ZIndex>
</Textbox>
</ReportItems>
...Befintlig kod 2
... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Delete the following line.
<Value>=LAST(Fields!ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6__.Value)</Value>
// End of the line.
<ZIndex>2</ZIndex>
</Textbox>
</ReportItems>
...Ersättningskod 2
... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Add the following line.
<Value>=LAST(Fields!ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083.Value)</Value>
// End of the line.
<ZIndex>2</ZIndex>
</Textbox>
</ReportItems>
...Befintlig kod 3
... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Delete the following line.
<Value>=LAST(Fields!BookValueAtEndingDate.Value)</Value>
// End of the line.
<ZIndex>1</ZIndex>
</Textbox>
</ReportItems>
...Ersättningskod 3
... <PaddingTop>2pt</PaddingTop>
<VerticalAlign>Middle</VerticalAlign>
</Style>
// Add the following line.
<Value>=LAST(Fields!BookValueAtEndingDate_Control169.Value)</Value>
// End of the line.
<ZIndex>1</ZIndex>
</Textbox>
</ReportItems>
...Befintlig kod 4
... <Field Name="ABS_ReclassDeprAmount__Control1130212Format">
<DataField>ABS_ReclassDeprAmount__Control1130212Format</DataField>
</Field>
<Field Name="BookValueAtEndingDate_Control169Format">
<DataField>BookValueAtEndingDate_Control169Format</DataField>
</Field>
...Ersättningskod 4
... <Field Name="ABS_ReclassDeprAmount__Control1130212Format">
<DataField>ABS_ReclassDeprAmount__Control1130212Format</DataField>
</Field>
// Add the following lines.
<Field Name="BookValueAtEndingDate_Control169">
<DataField>BookValueAtEndingDate_Control169</DataField>
</Field>
// End of the lines.
<Field Name="BookValueAtEndingDate_Control169Format">
<DataField>BookValueAtEndingDate_Control169Format</DataField>
</Field>
...Befintlig kod 5
... <Field Name="TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_Format">
<DataField>TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_Format</DataField>
</Field>
<Field Name="TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078Format">
<DataField>TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078Format</DataField>
</Field>
...Ersättningskod 5
... <Field Name="TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_Format">
<DataField>TotalDisposalAmounts_1__TotalDisposalAmounts_3__TotalDisposalAmounts_4_Format</DataField>
</Field>
// Add the following lines.
<Field Name="TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078">
<DataField>TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078</DataField>
</Field>
// End of the lines.
<Field Name="TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078Format">
<DataField>TotalEndingAmounts_1__TotalEndingAmounts_3__TotalEndingAmounts_4__Control1130078Format</DataField>
</Field>
...Befintlig kod 6
... <Field Name="ABS_TotalNetChangeAmounts_2__Format">
<DataField>ABS_TotalNetChangeAmounts_2__Format</DataField>
</Field>
<Field Name="ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083Format">
<DataField>ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083Format</DataField>
</Field>
...Ersättningskod 6
... <Field Name="ABS_TotalNetChangeAmounts_2__Format">
<DataField>ABS_TotalNetChangeAmounts_2__Format</DataField>
</Field>
// Add the following lines.
<Field Name="ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083">
<DataField>ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083</DataField>
</Field>
// End of the lines.
<Field Name="ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083Format">
<DataField>ABS_TotalEndingAmounts_2__TotalEndingAmounts_5__TotalEndingAmounts_6___Control1130083Format</DataField>
</Field>
...
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".
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.