Добрый день,
У меня есть функция скалярного значения, которую я использовал для определения значения платежа (функция PMT в Excel) в SQL Management Studio.Я импортировал следующую функцию C #:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
public partial class FinancialFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlDouble PMT(double r, int nper, double pv, double fv, int type)
{
double pmt;
if (nper == 0)
pmt = 0;
else if (r == 0)
pmt = (fv - pv) / nper;
else
pmt = r / (Math.Pow(1 + r, nper) - 1)
* -(pv * Math.Pow(1 + r, nper) + fv);
if (type == 1) pmt /= (1 + r);
return pmt;
}
Затем функция вызывается в SQL следующим образом:
DECLARE @LoanValue decimal(38,20)
DECLARE @APR decimal(20,15)
DECLARE @FullTerm int
SET @LoanValue = VALUE of each individual loan
SET @APR = INTEREST RATE for each individual loan
SET @FullTerm = TOTAL TENURE for each loan
DECLARE @PMT decimal(38,20)
SET @PMT = dbo.PMT(@APR/12.0, @FullTerm, @LoanValue, 0, 0)
SELECT @PMT AS PMT
Как написать сценарий для запуска нескольких займов с различными значениями, процентамиставки и продолжительность?
Ваша помощь будет принята с благодарностью.
Спасибо.