using System; using System.Data; using System.Text; using Swift.DAL.BL.Remit.Transaction; using Swift.web.Library; namespace Swift.web.Responsive.Reports.SOADomestic { public partial class soa : System.Web.UI.Page { private readonly TranReportDao rptDao = new TranReportDao(); private readonly RemittanceLibrary rl = new RemittanceLibrary(); protected void Page_Load(object sender, EventArgs e) { rl.CheckSession(); string mode = GetStatic.ReadQueryString("mode", "").ToLower(); if (mode == "download") { string format = "xls"; string reportName = "soa"; Response.Clear(); Response.ClearContent(); Response.ClearHeaders(); Response.ContentType = "application/vnd.ms-excel"; Response.AddHeader("Content-Disposition", "attachment; filename=" + reportName + "." + format); exportDiv.Visible = false; } ShowReport(); } private void ShowReport() { var fromDate = GetStatic.ReadQueryString("fromDate", ""); var toDate = GetStatic.ReadQueryString("toDate", ""); var agent = GetStatic.ReadQueryString("agent", ""); var reportFor = GetStatic.ReadQueryString("reportFor", ""); var branchID = GetStatic.GetBranch(); DataTable Dt = rptDao.AgentSoaReport(fromDate, toDate, agent, "pay", reportFor, branchID); LoadSoaHtml(Dt); lblAgentName.Text = GetStatic.GetAgentNameByMapCodeInt(agent); lblFrmDate.Text = fromDate; lbltoDate.Text = toDate; lblGeneratedDate.Text = DateTime.Now.ToString("MM/dd/yyyy"); } private void LoadSoaHtml(DataTable dt) { int cols = dt.Columns.Count; var str = new StringBuilder(""); str.Append(""); str.Append(""); str.Append(""); str.Append(""); str.Append(""); str.Append(""); str.Append(""); str.Append(""); int cnt = 0; double DR = 0.00; double CR = 0.00; double BAL = 0.00; double OPBal = 0.00; double CrTotal = 0.00; double DrTotal = 0.00; double GTotal = -0.00; string DrCr = ""; int rowsCount = dt.Rows.Count; if (rowsCount == 0) { str.Append("
Date
Particulars
DR
CR
Balance
 
No Record Found
"); rptDiv.InnerHtml = str.ToString(); return; } OPBal = double.Parse(dt.Rows[0]["DR"].ToString()); DrCr = (OPBal < 0) ? "DR" : "CR"; str.Append(""); str.Append("
"); str.Append("
Opening Balance
"); str.Append("
"); str.Append("
"); str.Append("
" + GetStatic.ShowDecimal(Math.Abs(OPBal).ToString()) + "
"); str.Append("" + DrCr + ""); str.Append(""); foreach (DataRow dr in dt.Rows) { cnt = cnt + 1; BAL = 0; if (dr["Particulars"].ToString() != "Opening Balance") { str.Append(""); DR = DR + double.Parse(dr["DR"].ToString()); CR = CR + double.Parse(dr["CR"].ToString()); BAL = BAL + (OPBal - DR + CR); DrCr = (BAL < 0) ? "DR" : "CR"; GTotal = GTotal + BAL; if (double.Parse(dr["DR"].ToString()) > 0) { DrTotal = DrTotal + 1; } else { CrTotal = CrTotal + 1; } for (int i = 0; i < cols; i++) { if (i > 1) { str.Append("
" + GetStatic.ShowDecimal(dr[i].ToString()) + "
"); } else { str.Append("
" + dr[i].ToString() + "
"); } } str.Append("
" + GetStatic.ShowDecimal(Math.Abs(BAL).ToString()) + "
"); str.Append("" + DrCr + ""); str.Append(""); } } str.Append(""); str.Append("
Total
"); str.Append("
" + GetStatic.ShowDecimal(DR.ToString()) + "
"); str.Append("
" + GetStatic.ShowDecimal(CR.ToString()) + "
"); str.Append("
"); str.Append("" + DrCr + ""); str.Append(""); str.Append(""); rptDiv.InnerHtml = str.ToString(); lblOpSing.Text = (OPBal < 0) ? "DR" : "CR"; lblOpAmt.Text = GetStatic.ShowDecimal(Math.Abs(OPBal).ToString()); if (rowsCount == 1) { lblCloAmt.Text = GetStatic.ShowDecimal(Math.Abs(OPBal).ToString()); lblCloSign.Text = (OPBal < 0) ? "DR" : "CR"; } else { lblCloAmt.Text = GetStatic.ShowDecimal(Math.Abs(BAL).ToString()); lblCloSign.Text = (BAL < 0) ? "DR" : "CR"; } lblDrTotal.Text = GetStatic.ShowDecimal(Math.Abs(DR).ToString()); lblCrTotal.Text = GetStatic.ShowDecimal(Math.Abs(CR).ToString()); lblAmtMsg.Text = (BAL > 0) ? "Payable to Agent" : "Receivable From Agent"; } } }