protected void btn_Update_Click(object sender, EventArgs e)
    {
        try
        {
            SMHR_LOB _obj_smhr_lob = new SMHR_LOB();
            btn_Finalise.Enabled = true;
            StringBuilder strQry = new StringBuilder();

            for (int i = 0; i < Rg_Details.Items.Count; i++)
            {
                _obj_smhr_lob.LOB_EMPID = null;


                for (int j = 0; j < Rg_Details.MasterTableView.AutoGeneratedColumns.Count() - 4; j++)
                {
                    strQry.Append("EXEC USP_SMHR_LEAVEOPENINGBALANCES ");
                    _obj_smhr_lob.LT_EMPID = Convert.ToInt32(Rg_Details.Items[i]["EMP_ID"].Text);
                    string   LT = Convert.ToString(Rg_Details.MasterTableView.AutoGeneratedColumns[j + 4].UniqueName);
                    string[] T  = LT.Split(new char[] { '-' });
                    _obj_smhr_lob.LT_PERIOD         = Convert.ToInt32(rcmb_Period.SelectedItem.Value);
                    _obj_smhr_lob.LT_LEAVETYPEID    = Convert.ToInt32(T[0]);
                    _obj_smhr_lob.LT_CURRENTBALANCE = Convert.ToDouble(Rg_Details.Items[i][LT].Text);
                    _obj_smhr_lob.OPERATION         = operation.Update;
                    string str = "@Operation = 'Update'" +
                                 ",@LT_EMPID = '" + _obj_smhr_lob.LT_EMPID + "'" +
                                 ",@LT_PERIOD='" + _obj_smhr_lob.LT_PERIOD + "'" +
                                 ",@LT_LEAVETYPEID = '" + _obj_smhr_lob.LT_LEAVETYPEID + "'" +
                                 ",@LT_CURRENTBALANCE='" + _obj_smhr_lob.LT_CURRENTBALANCE + "'";

                    strQry.Append(str);
                }
            }
            bool rs = BLL.set_EMpLOB(_obj_smhr_lob, strQry.ToString());
            if (rs == true)
            {
                BLL.ShowMessage(this, "Leave Opening Balances updated Successfully");
            }
            else
            {
                BLL.ShowMessage(this, "Error found");
            }

            getData();
            Rg_Details.DataBind();
            btn_Finalise.Visible = true;
            //btn_Save.Enabled = false;
            btn_Update.Enabled = false;
        }
        catch (Exception ex)
        {
            SMHR.BLL.Error_Log(Session["USER_ID"].ToString(), ex.TargetSite.ToString(), ex.Message.Replace("'", "''"), "frm_leaveopeningbalances", ex.StackTrace, DateTime.Now);
            Response.Redirect("~/Frm_ErrorPage.aspx");
            return;
        }
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        try
        {
            SMHR_LOB _obj_SMHR_LOB = new SMHR_LOB();

            _obj_SMHR_LOB.LT_EMPID  = Convert.ToInt32(rcbEmp.SelectedValue);
            _obj_SMHR_LOB.LT_BAL    = Convert.ToDouble(rntbOpenBal.Text);
            _obj_SMHR_LOB.LT_PERIOD = Convert.ToInt32(rcmb_Period.SelectedValue);
            //_obj_SMHR_LOB.LASTMDFBY = Convert.ToInt32(Session["EMP_ID"]);
            _obj_SMHR_LOB.CREATEDBY   = Convert.ToInt32(Session["USER_ID"]);
            _obj_SMHR_LOB.CREATEDDATE = DateTime.Now;
            _obj_SMHR_LOB.LASTMDFBY   = Convert.ToInt32(Session["USER_ID"]);
            _obj_SMHR_LOB.LASTMDFDATE = DateTime.Now;


            bool status = BLL.setEmpLOB(_obj_SMHR_LOB);

            if (status == true)
            {
                BLL.ShowMessage(this, "Leave Balances updated successfully");
            }
            else
            {
                BLL.ShowMessage(this, "Leave Balances not updated");
            }

            DataTable dt = BLL.get_EmpLOB(Convert.ToInt32(Session["ORG_ID"]), Convert.ToInt32(rcmb_BUID.SelectedItem.Value),
                                          Convert.ToInt32(rcmb_Period.SelectedItem.Value), Convert.ToInt32(rcmbLeaveStruct.SelectedValue));
            Rg_Details.DataSource = dt;
            Rg_Details.DataBind();

            rmpLOB.SelectedIndex = 0;
        }
        catch (Exception ex)
        {
            SMHR.BLL.Error_Log(Session["USER_ID"].ToString(), ex.TargetSite.ToString(), ex.Message.Replace("'", "''"), "frm_leaveopeningbalances", ex.StackTrace, DateTime.Now);
            Response.Redirect("~/Frm_ErrorPage.aspx");
            return;
        }
    }
    protected void rcmbLeaveStruct_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e)
    {
        try
        {
            if (rcmb_BUID.SelectedIndex > 0)
            {
                if (rcmb_Period.SelectedIndex > 0)
                {
                    if (period == 0)
                    {
                        period = Convert.ToInt32(rcmb_Period.SelectedItem.Value);
                    }
                    getData();

                    Rg_Details.DataBind();
                    Rg_Details.Visible   = true;
                    btn_Finalise.Visible = true;
                    btn_Finalise.Enabled = true;
                    btn_Cancel.Visible   = true;
                    //btn_Save.Visible = true;
                    //btn_Save.Enabled = true;
                    if (Rg_Details.Items.Count > 0)
                    {
                        btn_Finalise.Visible = true;
                        //btn_Save.Visible = true;
                    }
                    else
                    {
                        btn_Finalise.Visible = false;
                        //btn_Save.Visible = false;
                    }
                    btn_Update.Visible = false;
                    //btn_Finalise.Visible = false;
                }
                else
                {
                    //getData();
                    //Rg_Details.DataBind();
                    Rg_Details.Visible = false;
                    //btn_Save.Visible = false;
                    //BLL.ShowMessage(this, "Select Period ");
                }
            }
            else
            {
                BLL.ShowMessage(this, "Select BusinessUnit");
            }

            if (Convert.ToInt32(Session["WRITEFACILITY"]) == 2)
            {
                Rg_Details.MasterTableView.CommandItemDisplay = GridCommandItemDisplay.None;
                //btn_Save.Visible = false;
                Rg_Details.Enabled = false;
            }
        }
        catch (Exception ex)
        {
            SMHR.BLL.Error_Log(Session["USER_ID"].ToString(), ex.TargetSite.ToString(), ex.Message.Replace("'", "''"), "frm_leaveopeningbalances", ex.StackTrace, DateTime.Now);
            Response.Redirect("~/Frm_ErrorPage.aspx");
            return;
        }
    }