protected void btnReset_Click(object sender, EventArgs e)
    {
        SearchDoctorVisit itmsearch = new SearchDoctorVisit();

        itmsearch.months = "'" + gmonth + "'";
        itmsearch.divs   = "'eva'";
        FetchReportdata(itmsearch, 0);
        populatedropdowns();
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            populatedropdowns();

            SearchDoctorVisit itmsearch = new SearchDoctorVisit();
            itmsearch.months = "'" + gmonth + "'";
            itmsearch.divs   = "'eva'";
            FetchReportdata(itmsearch, 1000);
        }
    }
    protected void btnsearch_Click(object sender, EventArgs e)
    {
        String separator   = "";
        String monthsearch = "";
        String divsearch   = "";
        string rsmsearch   = "";
        string distsearch  = "";
        string empsearch   = "";
        string desigsearch = "";
        string asmsearch   = "";
        string msrsearch   = "";

        foreach (ListItem itm in src_month4m.Items)
        {
            if (itm.Selected)
            {
                monthsearch = monthsearch + separator + "'" + itm.Value + "'";
                separator   = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_div.Items)
        {
            if (itm.Selected)
            {
                divsearch = divsearch + separator + "'" + itm.Value + "'";
                separator = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_rsm.Items)
        {
            if (itm.Selected)
            {
                rsmsearch = rsmsearch + separator + "'" + itm.Value + "'";
                separator = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_district.Items)
        {
            if (itm.Selected)
            {
                distsearch = distsearch + separator + "'" + itm.Value + "'";
                separator  = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_employee.Items)
        {
            if (itm.Selected)
            {
                empsearch = empsearch + separator + "'" + itm.Value + "'";
                separator = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_designation.Items)
        {
            if (itm.Selected)
            {
                desigsearch = desigsearch + separator + "'" + itm.Value + "'";
                separator   = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_asm.Items)
        {
            if (itm.Selected)
            {
                asmsearch = asmsearch + separator + "'" + itm.Value + "'";
                separator = ",";
            }
        }

        separator = "";
        foreach (ListItem itm in src_mfso.Items)
        {
            if (itm.Selected)
            {
                msrsearch = msrsearch + separator + "'" + itm.Value + "'";
                separator = ",";
            }
        }

        SearchDoctorVisit itmsearch = new SearchDoctorVisit();

        itmsearch.months = monthsearch;
        itmsearch.divs   = divsearch;
        itmsearch.rsms   = rsmsearch;
        itmsearch.dists  = distsearch;
        itmsearch.emps   = empsearch;
        itmsearch.desigs = desigsearch;
        itmsearch.asms   = asmsearch;
        itmsearch.msrs   = msrsearch;

        FetchReportdata(itmsearch, 0);



        StaticData itmstat = (new RptDocVisitDL()).GetDropdownData(monthsearch);

        src_rsm.DataSource = itmstat.lstrsm;
        src_rsm.DataBind();

        src_district.DataSource = itmstat.lstdistrict;
        src_district.DataBind();

        src_employee.DataSource = itmstat.lstemployee;
        src_employee.DataBind();

        src_designation.DataSource = itmstat.lstdesignation;
        src_designation.DataBind();

        src_asm.DataSource = itmstat.lstasm;
        src_asm.DataBind();

        src_mfso.DataSource = itmstat.lstmsr;
        src_mfso.DataBind();
    }
    private void FetchReportdata(SearchDoctorVisit searchdoctorvisit, int rows)
    {
        DataSet ds = (new RptDocVisitDL()).GetDoctorVisitReportDataDynamic(searchdoctorvisit, rows);

        //manage headers as per division
        String disthead = "";

        if (searchdoctorvisit.divs.ToLower().Contains("eva") || searchdoctorvisit.divs.ToLower().Contains("concord"))
        {
            disthead = "MFSO";
        }

        if (searchdoctorvisit.divs.ToLower().Contains("phoenix"))
        {
            if (disthead != "")
            {
                disthead = disthead + "_SO";
            }
            else
            {
                disthead = "SO";
            }
        }
        if (searchdoctorvisit.divs.ToLower().Contains("mad"))
        {
            if (disthead != "")
            {
                disthead = disthead + "_MSR";
            }
            else
            {
                disthead = "MSR";
            }
        }
        if (disthead != "")
        {
            disthead = disthead + "_HQ";
        }
        else
        {
            disthead = "MFSO_HQ";
        }

        ds.Tables[0].Columns["District"].ColumnName = disthead;

        ds.Tables[0].Columns["AsmHQ"].ColumnName = "ASM_DSO_HQ";

        ds.Tables[0].Columns.Remove("rptdoctorvisitID");

        foreach (DataColumn col in ds.Tables[0].Columns)
        {
            col.ColumnName = col.ColumnName.ToUpper();
        }


        rpt_docvisit.ReportTitle = "Doctor Visit Report";
        rpt_docvisit.ReportName  = "DoctorVisitReport";
        rpt_docvisit.DataBind(ds.Tables[0].Copy());
        rpt_docvisit.Visible = true;

        Session["tab"] = ds.Tables[0];
    }
        public DataSet GetDoctorVisitReportDataDynamic(SearchDoctorVisit itmsearch, int rows)
        {
            RptAgeingList lstAgeing = new RptAgeingList();

            Common.OpenConnection();
            String sql = "select * from rpt_doctorvisit";

            if (rows > 0)
            {
                sql = "select top " + rows + " * from rpt_doctorvisit";
            }

            string whsql     = "";
            string strconcat = "";

            if (itmsearch.months != null && itmsearch.months != "")
            {
                whsql     = whsql + strconcat + " month in (" + itmsearch.months + ")";
                strconcat = " and ";
            }

            if (itmsearch.divs != null && itmsearch.divs != "" && itmsearch.divs != "select")
            {
                whsql     = whsql + strconcat + " division in(" + itmsearch.divs + ")";
                strconcat = " and ";
            }

            if (itmsearch.rsms != null && itmsearch.rsms != "" && itmsearch.rsms != "select")
            {
                whsql     = whsql + strconcat + " RSMHQ in (" + itmsearch.rsms + ")";
                strconcat = " and ";
            }

            if (itmsearch.dists != null && itmsearch.dists != "" && itmsearch.dists != "select")
            {
                whsql     = whsql + strconcat + " Area in (" + itmsearch.dists + ")";
                strconcat = " and ";
            }

            if (itmsearch.emps != null && itmsearch.emps != "" && itmsearch.emps != "select")
            {
                whsql     = whsql + strconcat + " EmpName in (" + itmsearch.emps + ")";
                strconcat = " and ";
            }

            if (itmsearch.desigs != null && itmsearch.desigs != "" && itmsearch.desigs != "select")
            {
                whsql     = whsql + strconcat + " Designation in (" + itmsearch.desigs + ")";
                strconcat = " and ";
            }

            if (itmsearch.asms != null && itmsearch.asms != "" && itmsearch.asms != "select")
            {
                whsql     = whsql + strconcat + " AsmHQ in (" + itmsearch.asms + ")";
                strconcat = " and ";
            }

            if (itmsearch.msrs != null && itmsearch.msrs != "" && itmsearch.msrs != "select")
            {
                whsql     = whsql + strconcat + " MFSOHQ in (" + itmsearch.msrs + ")";
                strconcat = " and ";
            }


            if (whsql != null && whsql != "")
            {
                sql = sql + " where " + whsql;
            }

            SqlCommand cmd         = new SqlCommand(sql, Common.conn);
            DataSet    dsCustomers = new DataSet();

            using (SqlDataAdapter sda = new SqlDataAdapter())
            {
                sda.SelectCommand = cmd;
                //sda.Fill(dsCustomers, "rpt_ageing");
                sda.Fill(dsCustomers);
            }
            Common.CloseConnection();

            return(dsCustomers);
        }