// collecting needed parameters and calling DLL-method to receive and return the table private DataTable GetLoanParamsAndReceiveTable() { bool isPaymentSchemeAnnuity = (cbxScheme.SelectedItem.ToString() == "Annuity"); double loanSize = GetDoubleFromString(txtLoanAmount.Text, "Invalid loan amount value."); CheckNoZero(loanSize, "Loan amount must be greater than zero"); double interestRatePerYear = GetDoubleFromString(mtbxInterestRate.Text, "Invalid interest rate value."); double downPayment = GetDoubleFromString(txtDownPayment.Text, "Invalid down payment value."); bool isDownPaymentPct = rbtnPercentDownPayment.Checked; double oneTimeCommission = GetDoubleFromString(txtOneTimeCommission.Text, "Invalid one-time commission value."); bool isOneTimeCommissionPct = rbtnPercentOneTimeCommission.Checked; double monthlyCommissionFixed = GetDoubleFromString(txtMonthlyCommissionFixed.Text, "Invalid fixed monthly commission value."); bool isMonthlyCommissionFixedPctOfLoan = rbtnPercentMonthlyCommissionFixed.Checked; double monthlyCommissionInPctOfBalance = GetDoubleFromString(mtbxMonthlyCommissionVarying.Text, "Invalid varying monthly commission value."); int term = GetIntFromString(mtbxTerm.Text, "Invalid term value."); CheckNoZero(term, "Term must be greater than zero"); if (rbtnYears.Checked) { term *= 12; } DataTable table = LoanAndDeposit.GetLoanDataTable(isPaymentSchemeAnnuity, loanSize, interestRatePerYear, downPayment, isDownPaymentPct, oneTimeCommission, isOneTimeCommissionPct, monthlyCommissionFixed, isMonthlyCommissionFixedPctOfLoan, monthlyCommissionInPctOfBalance, term); return(table); }
private DataTable GetDepositParamsAndReceiveTable() { double depositAmount = GetDoubleFromString(txtDepositAmount.Text, "Invalid deposit amount value."); CheckNoZero(depositAmount, "Deposit amount must be greater than zero"); int termInMonths = GetIntFromString(mtbxDepositTerm.Text, "Invalid term value."); CheckNoZero(termInMonths, "Term must be greater than zero"); if (rbtnYearsDeposit.Checked) { termInMonths *= 12; } double annualInterestPct = GetDoubleFromString(txtAnnualInterestRate.Text, "Invalid interest rate value."); int capitalizationPeriodInMonths; // turn capitalization period in months number switch (cbxCapitalization.SelectedItem.ToString()) { case "None": capitalizationPeriodInMonths = 0; break; case "Monthly": capitalizationPeriodInMonths = 1; break; case "Quarterly": capitalizationPeriodInMonths = 3; break; case "Half yearly": capitalizationPeriodInMonths = 6; break; case "Yearly": capitalizationPeriodInMonths = 12; break; default: capitalizationPeriodInMonths = 0; break; } int replenishmentAmount = GetIntFromString(txtReplenishment.Text, "Invalid replenishment value."); int replenishmentPeriodInMonths; // turn replenishment period in months number switch (cbxReplenishmentPeriod.SelectedItem.ToString()) { case "None": replenishmentPeriodInMonths = 0; break; case "Month": replenishmentPeriodInMonths = 1; break; case "Quarter": replenishmentPeriodInMonths = 3; break; case "Half year": replenishmentPeriodInMonths = 6; break; case "Year": replenishmentPeriodInMonths = 12; break; default: replenishmentPeriodInMonths = 0; break; } double taxes = GetDoubleFromString(txtTaxes.Text, "Invalid taxes value.\nSet zero if none."); DataTable table = LoanAndDeposit.GetDepositDataTable(depositAmount, annualInterestPct, termInMonths, capitalizationPeriodInMonths, replenishmentAmount, replenishmentPeriodInMonths, taxes); return(table); }