protected void btnProdSchedule_Click(object sender, EventArgs e)
    {
        Whitfieldcore wc = new Whitfieldcore();
        DataSet ds = new DataSet();

        if (!txtInitialPaymentDate.Text.ToString().Equals("") && !txtFinalPaymentDate.Text.ToString().Equals(""))
        {
            wc.RemoveCashFlowScheduledata(Convert.ToInt32(ViewState["twc_project_number"].ToString()));
            ds = wc.GetSchedule(txtInitialPaymentDate.Text.ToString(), txtFinalPaymentDate.Text.ToString());
            Int32 resultCount = 0;
            if (ds.Tables.Count > 0)
                resultCount = ds.Tables[0].Rows.Count;
            DataTable myControls;
            myControls = ds.Tables[0];
            Int32 iCnt = 1;
            if (myControls.Rows.Count > 0)
            {
                try
                {
                    foreach (DataRow dRow in myControls.Rows)
                    {
                        Hashtable hash = wc.GetWeeksHash();
                        String _yr = dRow["dt2"] != DBNull.Value ? dRow["dt2"].ToString() : "";
                        String _mnth = dRow["dt1"] != DBNull.Value ? dRow["dt1"].ToString() : "";
                        foreach (string key in hash.Keys)
                        {
                            wc.PopulateCashFlowSchedule(Convert.ToInt32(ViewState["twc_project_number"].ToString()), _yr, _mnth + "(" + _yr + ")", hash[key].ToString(), iCnt);
                        }
                        iCnt++;
                    }
                }
                catch (Exception ex)
                {
                    Response.Write(ex.Message);
                }
                DisplaySchedulingGrid();
            }
            else
            {
                Response.Write("No Data");
            }
        }
        else
        {
            Response.Write("Construction Start date and Construction End date should be Set");
        }
    }