public static DataTable GetReportDataTable(String AReportType, Dictionary <String, TVariant>AParameters) { FDbAdapter = new TReportingDbAdapter(); TLogging.SetStatusBarProcedure(WriteToStatusBar); DataTable ResultTbl = null; switch (AReportType) { /* GL Reports */ case "BalanceSheet": ResultTbl = TFinanceReportingWebConnector.BalanceSheetTable(AParameters, FDbAdapter); break; case "FieldGifts": ResultTbl = TFinanceReportingWebConnector.KeyMinGiftsTable(AParameters, FDbAdapter); break; case "HOSA": ResultTbl = TFinanceReportingWebConnector.HosaGiftsTable(AParameters, FDbAdapter); break; case "Stewardship": ResultTbl = TFinanceReportingWebConnector.StewardshipTable(AParameters, FDbAdapter); break; case "Fees": ResultTbl = TFinanceReportingWebConnector.FeesTable(AParameters, FDbAdapter); break; case "IncomeExpense": ResultTbl = TFinanceReportingWebConnector.IncomeExpenseTable(AParameters, FDbAdapter); break; case "AFO": ResultTbl = TFinanceReportingWebConnector.AFOTable(AParameters, FDbAdapter); break; case "Executive Summary": ResultTbl = TFinanceReportingWebConnector.ExecutiveSummaryTable(AParameters, FDbAdapter); break; case "TrialBalance": ResultTbl = TFinanceReportingWebConnector.TrialBalanceTable(AParameters, FDbAdapter); break; case "SurplusDeficit": ResultTbl = TFinanceReportingWebConnector.SurplusDeficitTable(AParameters, FDbAdapter); break; /* Gift Reports */ case "GiftBatchDetail": ResultTbl = TFinanceReportingWebConnector.GiftBatchDetailTable(AParameters, FDbAdapter); break; case "RecipientTaxDeductPct": ResultTbl = TFinanceReportingWebConnector.RecipientTaxDeductPctTable(AParameters, FDbAdapter); break; case "FieldLeaderGiftSummary": ResultTbl = TFinanceReportingWebConnector.FieldLeaderGiftSummary(AParameters, FDbAdapter); break; case "TotalGiftsThroughField": ResultTbl = TFinanceReportingWebConnector.TotalGiftsThroughField(AParameters, FDbAdapter); break; default: TLogging.Log("GetDatatableThread unknown ReportType: " + AReportType); break; } FDbAdapter.CloseConnection(); return (FDbAdapter.IsCancelled) ? null : ResultTbl; }