Hi,
I have a question about the calcluation of depreciation ending date.
I have created a fixed asset with linear depreciation for test in the Cronus db.
The depreciation starting date is 30-01-05 (dd-mm-yy). No. of depreciation months is 36. It then calculates the depreciation ending date to 29-01-08. I agree with that, but if I change the depreciation starting date to 31-01-05, it calculates the depreciation ending date to be 29-01-08. The exact same date. I have entered the number of depreciation years again to make sure the calc is done once more.
Hmm, I can't figure out why the depreciation ending date is the same for two different dates (30-01-05 and 31-01-05). When using 31-01-05 as depreciation starting date I would suspect the ending date to be 30-01-08 and NOT 29-01-08.
Can anybody help here?
0
Comments
I set up a vendor with a payment of 3Y (36M) and the date updated as you expected.
I can only imagine there is some general reason why the date before the last day of the month is treated differently otherwise its an oversight.
I have not found an explanation for this, yet...
There is some logic in here to enforce different accounting methodologies
IF NumberOfDays <= 0 THEN
EXIT(StartingDate);
Years := DATE2DMY(StartingDate,3);
Months := DATE2DMY(StartingDate,2);
Days := DATE2DMY(StartingDate,1);
IF DATE2DMY(StartingDate + 1,1) = 1 THEN
Days := 30;
Days := Days + NumberOfDays;
Months := Months + (Days DIV 30);
Days := Days MOD 30;
IF Days = 0 THEN BEGIN
Days := 30;
Months := Months - 1;
END;
Years := Years + (Months DIV 12);
Months := Months MOD 12;
IF Months = 0 THEN BEGIN
Months := 12;
Years := Years - 1;
END;
IF (Months = 2) AND (Days > 28) THEN BEGIN
Days := 28;
LocalDate := DMY2DATE(28,2,Years) + 1;
IF DATE2DMY(LocalDate,1) = 29 THEN
Days := 29;
END;
CASE Months OF
1,3,5,7,8,10,12:
IF Days = 30 THEN
Days := 31;
END;
EXIT(DMY2DATE(Days,Months,Years));