AmorDegrC(Cost: Double;
PurchaseDate: DateTime;
FirstPeriodEnd: DateTime;
Salvage: Double;
Period: Integer;
Rate: Double;
Basis: Integer): Double;
AmorDegrC(Cost: double;
PurchaseDate: System.DateTime;
FirstPeriodEnd: System.DateTime;
Salvage: double;
Period: integer;
Rate: double;
Basis: integer): double;
| Параметры | Описание | Ограничения |
| Cost | Затраты на приобретение актива. | Должно быть неотрицательным. |
| PurchaseDate | Дата приобретения актива. | Должен быть меньше FirstPeriodEnd. |
| FirstPeriodEnd | Дата окончания первого периода. | Должен быть больше PurchaseDate. |
| Salvage | Остаточная стоимость актива в конце периода амортизации. | Должен принадлежать промежутку [0;Cost] |
| Period | Период амортизации. | Должен быть неотрицательным. |
| Rate | Процентная ставка амортизации. | Должен быть положительным. |
| Basis | Используемый способ вычисления дня:
0 - Американский/360 дней (метод NSAD); 1 - Фактический/фактический; 2 - Фактический/360 дней; 3 - Фактический/365 дней; 4 - Европейский 30/360 дней. |
Должен принимать значения 0, 1, 3 или 4. |
Метод AmorDegrC возвращает величину амортизации для каждого периода с учетом коэффициента амортизации.
Данный метод предназначен для французской системы бухгалтерского учета.
Метод вычисляет амортизацию вплоть до последнего периода амортизации или пока суммарная величина амортизации не станет больше разности между первоначальной стоимостью и остаточной стоимостью актива.
Если срок эксплуатации находится между 0 и 1, 1 и 2, 2 и 3, 4 и 5, то метод возвращает ошибку.
Используемые методом коэффициенты амортизации:
| Срок эксплуатации (1/ставка) | Коэффициент амортизации |
| От 3 до 4 лет. | 1,5 |
| От 5 до 6 лет. | 2 |
| Больше 6 лет. | 2,5 |
Для выполнения примера добавьте ссылку на системную сборку MathFin.
Sub UserProc;
Var
r: Double;
Begin
r:= Finance.AmorDegrC(2000, DateTime.ComposeDay(2008,01,01),
DateTime.ComposeDay(2008,08,01), 200, 1, 0.15, 3);
Debug.WriteLine(r);
End Sub UserProc;
В результате выполнения примера в окно консоли будет выведена величина амортизации, равная «586».
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
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.AmorDegrC(2000, DateTime1,
DateTime2, 200, 1, 0.15, 3);
System.Diagnostics.Debug.WriteLine(r);
End Sub;
См. также: