AmorLinC(Cost: Double;
PurchaseDate: DateTime;
FirstPeriodEnd: DateTime;
Salvage: Double;
Period: Integer;
Rate: Double;
Basis: Integer): Double;
AmorLinC(Cost: Double;
PurchaseDate: System.DateTime;
FirstPeriodEnd: System.DateTime;
Salvage: double;
Period: integer;
Rate: double;
Basis: integer): double;
| Parameters | Description | Constraints |
| Cost | Cost for acquiring an asset. | Cannot be negative. |
| PurchaseDate | Date of acquiring an asset. | Must be less than FirstPeriodEnd. |
| FirstPeriodEnd | End date of the first period. | Must be greater than PurchaseDate. |
| Salvage | Depreciated cost of an asset at the end of the depreciation period. | Must belong to the [0;Cost] interval. |
| Period | Depreciation period. | Cannot be negative. |
| Rate | Depreciation interest rate. | Must be positive. |
| Basis | The employed method of day calculation: 0 - American/360 days (NSAD method). 1 - Factual/factual. 2 - Factual/360days. 3 - Factual/365 days. 4 - European 30/360 days. |
Must take the values 0, 1, 3 or 4. |
The AmorLinC method returns the size of depreciation for each period.
This method is used with the French accounting system.
If an asset is acquired in the middle of an accounting period, proportionally distributed depreciation is used.
To get depreciation value for each period considering depreciation coefficient, use the IFinance.AmorDegrC method.
To execute the example, add a link to the MathFin system assembly.
Sub UserProc;
Var
r: Double;
Begin
r:= Finance.AmorLinC(2000, DateTime.ComposeDay(2008,01,01),
DateTime.ComposeDay(2008,08,01), 200, 1, 0.15, 3);
Debug.WriteLine(r);
End Sub UserProc;
After executing the example the console window displays the depreciation value equal to 300.
The requirements and result of the Fore.NET example execution match with those in the Fore example.
Imports Prognoz.Platform.Interop.MathFin;
…
Public Shared Sub Main(Params: StartParams);
Var
r: double;
Finance: FinanceClass = New FinanceClass();
DateTime1, DateTime2: System.DateTime;
Begin
DateTime1 := New DateTime(2008,01,01);
DateTime2 := New DateTime(2008,08,01);
r := Finance.AmorLinC(2000, DateTime1, DateTime2, 200, 1, 0.15, 3);
System.Diagnostics.Debug.WriteLine(r);
End Sub;
See also: