using Swift.DAL.AccountReport; using Swift.web.Library; using System; using System.Data; using System.Text; using System.Web; namespace Swift.web.AccountReport.AccountStatement { public partial class StatementDetails : System.Web.UI.Page { private SwiftLibrary _sl = new SwiftLibrary(); private AccountStatementDAO st = new AccountStatementDAO(); private const string ReversalId = "20101110"; protected void Page_Load(object sender, EventArgs e) { //check session _sl.CheckSession(); if (!IsPostBack) { PopulateDDL(); ddlCurrency.Text = GetStatic.ReadQueryString("curr", ""); hdnRptType.Value = GetStatic.ReadQueryString("type", "a"); startDate.Text = StartDate(); endDate.Text = EndDate(); } GenerateReport(); } protected string StartDate() { return GetStatic.ReadQueryString("startDate", ""); } protected string EndDate() { return GetStatic.ReadQueryString("endDate", ""); } protected string AccountNumber() { return GetStatic.ReadQueryString("acNum", ""); } protected string AccountName() { return GetStatic.ReadQueryString("acName", ""); } private void PopulateDDL() { RemittanceLibrary r = new RemittanceLibrary(); r.SetDDL(ref ddlCurrency, "EXEC Proc_dropdown_remit @FLAG='Currency'", "val", "Name", "", "Select FCY"); } private void GenerateReport() { acNumber.Text = AccountNumber(); acName.Text = AccountName(); string curr = ""; var dt = st.GetACStatement(acNumber.Text, startDate.Text, endDate.Text, ddlCurrency.Text, hdnRptType.Value,GetStatic.GetUser()); if (dt == null || dt.Rows.Count == 0) { tableBody.InnerHtml = ""; openingBalance.Text = "0"; drOrCr.Text = "DR"; closingBalanceAmt.Text = "0 "; return; } if (hdnRptType.Value == "d") { GenerateDateWiseStmt(dt); return; } var sb = new StringBuilder(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //if (!string.IsNullOrWhiteSpace(ddlCurrency.Text)) //{ sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //} sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); if (_sl.HasRight(ReversalId)) { sb.AppendLine(""); } sb.AppendLine(""); double BAlance = 0, OpenBalnce = 0, fcyOpening = 0, crAmt = 0, drAmt = 0; int sn = 1, drCount = 0, crCount = 0; foreach (DataRow item in dt.Rows) { if (item["tran_particular"].ToString() == "Balance Brought Forward") { sn = 0; if (item["fcy_Curr"] == null || item["fcy_Curr"].ToString().ToLower() == "jpy") { OpenBalnce = GetStatic.ParseDouble(item["tran_amt"].ToString()); } else { OpenBalnce = GetStatic.ParseDouble(item["usd_amt"].ToString()); } fcyOpening = GetStatic.ParseDouble(item["usd_amt"].ToString()); BAlance = GetStatic.ParseDouble(item["tran_amt"].ToString()); } else { BAlance += GetStatic.ParseDouble(item["tran_amt"].ToString()); fcyOpening += GetStatic.ParseDouble(item["usd_amt"].ToString()); } sb.AppendLine(""); curr = item["fcy_Curr"].ToString(); if (item["tran_particular"].ToString() != "Balance Brought Forward") { if (item["part_tran_type"].ToString().ToLower() == "cr") { crCount++; if (item["fcy_Curr"] == null || item["fcy_Curr"].ToString().ToLower() == "jpy") { crAmt += GetStatic.ParseDouble(item["tran_amt"].ToString()); } else { crAmt += GetStatic.ParseDouble(item["usd_amt"].ToString()); } } else { drCount++; if (item["fcy_Curr"] == null || item["fcy_Curr"].ToString().ToLower() == "jpy") { drAmt += GetStatic.ParseDouble(item["tran_amt"].ToString()); } else { drAmt += GetStatic.ParseDouble(item["usd_amt"].ToString()); } } } string drLink = ""; drLink += GetStatic.ShowDecimal_Account(item["tran_amt"].ToString()) + ""; sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //if (!string.IsNullOrWhiteSpace(ddlCurrency.Text)) //{ sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //} sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); if (_sl.HasRight(ReversalId) && sn > 0) { drLink = "Reverse"; sb.AppendLine(""); } sb.AppendLine(""); sn++; } if (GetStatic.ReadQueryString("isDownload", "") == "y") { sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine("
SNTran DateParticularsFCYFCY AmountFCY ClosingDR/CRJPY AmountJPY ClosingDR/CRReversal
" + (sn > 0 ? sn.ToString() : "") + " " + (item["tran_date"].ToString() == "1900.01.01" ? " " : item["tran_date"]) + " " + item["tran_particular"] + " " + item["fcy_Curr"] + " " + GetStatic.ShowDecimal_Account(item["usd_amt"].ToString()) + " " + GetStatic.ShowDecimal_Account(fcyOpening.ToString()) + " " + item["part_tran_type"] + " " + (item["tran_particular"].ToString() == "Balance Brought Forward" ? GetStatic.ShowDecimal_Account(item["tran_amt"].ToString()) : drLink) + " " + GetStatic.ShowDecimal_Account(BAlance.ToString()) + " " + (BAlance > 0 ? "CR" : "DR") + " " + drLink + "
Opening Balance: " + GetStatic.ShowDecimal_Account(OpenBalnce.ToString()) + "
Total DR:(" + drCount.ToString() + ") " + GetStatic.ShowDecimal_Account(drAmt.ToString()) + "
Total CR:(" + crCount.ToString() + ") " + GetStatic.ShowDecimal_Account(crAmt.ToString()) + "
Closing Balance: (" + (BAlance > 0 ? "CR" : "DR") + ") " + GetStatic.ShowDecimal_Account((BAlance > 0 ? BAlance * -1 : BAlance).ToString()) + "
"); DataTable tbl = GetStatic.ConvertHTMLTableToDataSet(sb.ToString()); GetStatic.DataTable2ExcelDownload(ref tbl, "AccountStatement"); } else { sb.AppendLine(""); } totalDr.Text = GetStatic.ShowDecimal_Account(drAmt.ToString()); totalCr.Text = GetStatic.ShowDecimal_Account(crAmt.ToString()); drCount1.Text = drCount.ToString(); crCount1.Text = crCount.ToString(); tableBody.InnerHtml = sb.ToString(); openingBalance.Text = GetStatic.ShowDecimal_Account(OpenBalnce.ToString()); drOrCr.Text = (BAlance > 0 ? "CR" : "DR"); if (curr == null || curr.ToLower() == "jpy") { closingBalanceAmt.Text = GetStatic.ShowDecimal_Account((BAlance > 0 ? BAlance * -1 : BAlance).ToString()); } else { closingBalanceAmt.Text = GetStatic.ShowDecimal_Account((fcyOpening > 0 ? fcyOpening * -1 : fcyOpening).ToString()); } } private void GenerateDateWiseStmt(DataTable dt) { var sb = new StringBuilder(""); sb.AppendLine("
"); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); double BAlance = 0, OpenBalnce = 0, fcyOpening = 0; int sn = 1; foreach (DataRow item in dt.Rows) { if (item["tran_particular"].ToString() == "Balance Brought Forward") { sn = 0; OpenBalnce = GetStatic.ParseDouble(item["tran_amt"].ToString()); fcyOpening = GetStatic.ParseDouble(item["usd_amt"].ToString()); BAlance = OpenBalnce; } else { BAlance += GetStatic.ParseDouble(item["tran_amt"].ToString()); fcyOpening += GetStatic.ParseDouble(item["usd_amt"].ToString()); } sb.AppendLine(""); string drLink = ""; drLink += GetStatic.ShowDecimal_Account(item["tran_amt"].ToString()) + ""; sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //if (!string.IsNullOrWhiteSpace(ddlCurrency.Text)) //{ sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); //} sb.AppendLine(""); sb.AppendLine(""); sb.AppendLine(""); sn++; } sb.AppendLine("
SNTran DateParticularsFCYFCY AmountFCY ClosingJPY AmountJPY Closing
" + (sn > 0 ? sn.ToString() : "") + " " + (item["tran_date"].ToString() == "1900.01.01" ? " " : item["tran_date"]) + " " + item["tran_particular"] + " " + item["fcy_Curr"].ToString() + " " + GetStatic.ShowDecimal_Account(item["usd_amt"].ToString()) + " " + GetStatic.ShowDecimal_Account(fcyOpening.ToString()) + " " + (item["tran_particular"].ToString() == "Balance Brought Forward" ? GetStatic.ShowDecimal_Account(item["tran_amt"].ToString()) : drLink) + " " + GetStatic.ShowDecimal_Account(BAlance.ToString()) + "
"); tableBody.InnerHtml = sb.ToString(); openingBalance.Text = GetStatic.ShowDecimal_Account(OpenBalnce.ToString()); closingBalanceAmt.Text = GetStatic.ShowDecimal_Account((BAlance > 0 ? BAlance * -1 : BAlance).ToString()); } protected void goBtn_Click(object sender, EventArgs e) { GenerateReport(); } protected void buttonPdf_Click(object sender, EventArgs e) { GetStatic.GetPDF(HttpUtility.UrlDecode(hidden.Value)); } } }