public MrBatchVerificationTDS.BatchValidationDataTable GetNewBatchNew()
        {
            mrBatchVerification = (MrBatchVerificationTDS.BatchValidationDataTable)Session["mrBatchVerificationDummy"];

            if (mrBatchVerification == null)
            {
                mrBatchVerification = ((MrBatchVerificationTDS.BatchValidationDataTable)Session["mrBatchVerification"]);
            }

            return mrBatchVerification;
        }
        protected void AddCatalystsNewEmptyFix(GridView grdNewBatch)
        {
            if (grdNewBatch.Rows.Count == 0)
            {
                int companyId = Int32.Parse(hdfCompanyId.Value);
                MrBatchVerificationTDS.BatchValidationDataTable dt = new MrBatchVerificationTDS.BatchValidationDataTable();
                dt.AddBatchValidationRow(-1, "", DateTime.Now, false, companyId, false);
                Session["mrBatchVerificationDummy"] = dt;

                grdNewBatch.DataBind();
            }

            // Normally executes at all postbacks
            if (grdNewBatch.Rows.Count == 1)
            {
                MrBatchVerificationTDS.BatchValidationDataTable dt = (MrBatchVerificationTDS.BatchValidationDataTable)Session["mrBatchVerificationDummy"];
                if (dt != null)
                {
                    grdNewBatch.Rows[0].Visible = false;
                    grdNewBatch.Rows[0].Controls.Clear();
                }
            }
        }
        // ////////////////////////////////////////////////////////////////////////
        // EVENTS
        //
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                // Security check
                if (!(Convert.ToBoolean(Session["sgLFS_CWP_MANHOLEREHABILITATION_ADMIN"])))
                {
                    Response.Redirect("./../../error_page.aspx?error=" + "You are not authorized to view this page. Contact your system administrator.");
                }

                // Validate query string
                if (((string)Request.QueryString["source_page"] == null))
                {
                    Response.Redirect("./../../error_page.aspx?error=" + "Invalid query string in mr_batch_verification.aspx");
                }

                // Tag page
                hdfCompanyId.Value = Session["companyID"].ToString();
                hdfUpdate.Value = "no";
                lblBatchIdWarning.Visible = false;
                lblBatchLast.Visible = false;

                Session.Remove("mrBatchVerification");
                Session.Remove("mrBatchVerificationDummy");

                // Load information
                mrBatchVerificationTDS = new MrBatchVerificationTDS();
                if (rbtnUseLastBatch.Checked)
                {
                    int companyId = Int32.Parse(hdfCompanyId.Value);
                    MrBatchVerification mrBatchVerificationForLastRow = new MrBatchVerification(mrBatchVerificationTDS);
                    mrBatchVerificationForLastRow.LoadLastBatch(companyId);

                    if (mrBatchVerificationForLastRow.Table.Rows.Count > 0)
                    {
                        MrBatchVerificationGateway mrBatchVerificationGatewayForLastRow = new MrBatchVerificationGateway(mrBatchVerificationTDS);

                        WorkManholeRehabilitationBatchGateway workManholeRehabilitationBatchGateway = new WorkManholeRehabilitationBatchGateway();
                        hdfBatchId.Value = workManholeRehabilitationBatchGateway.GetLastId(companyId).ToString();

                        int batchId = Int32.Parse(hdfBatchId.Value);
                        DateTime date = mrBatchVerificationGatewayForLastRow.GetDate(batchId);
                        hdfBatchDate.Value = date.Month.ToString() + "/" + date.Day.ToString() + "/" + date.Year.ToString();

                        hdfBatchDescription.Value = mrBatchVerificationGatewayForLastRow.GetDescription(batchId);

                        // Show messages at wizard
                        lblBatchIdWarning.Visible = false;
                        lblBatchLast.Visible = true;
                        lblBatchLast.Text = "Last Batch used: " + hdfBatchDate.Value + "   " + hdfBatchDescription.Value;
                    }
                    else
                    {
                        lblBatchIdWarning.Visible = true;
                        lblBatchLast.Visible = false;
                    }
                }

                // ... Store datasets
                Session["mrBatchVerificationTDS"] = mrBatchVerificationTDS;
                Session["mrBatchVerification"] = mrBatchVerificationTDS.BatchValidation;

                // StepIn
                wizardBatch.ActiveStepIndex = 0;
                StepBeginIn();
            }
            else
            {
                // Restore datasets
                mrBatchVerificationTDS = (MrBatchVerificationTDS)Session["mrBatchVerificationTDS"];
                mrBatchVerification = (MrBatchVerificationTDS.BatchValidationDataTable)Session["mrBatchVerification"];
            }
        }