Exemplo n.º 1
0
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            //Actualiza los permisos de los botones en grid
            PermisosUsuario();

            string valida = string.Empty;

            //Validar que el dato a guardar o modificar no exista
            if (txt_TipoActivoFijo.Text.Trim() == string.Empty)
            {
                valida = "Para poder guardar escriba un tipo de activo";
            }

            else if (Session["Grid"] != null && ((DataTable)(Session["Grid"])).Rows.Count > 0)
            {
                foreach (DataRow fila in ((DataTable)(Session["Grid"])).Rows)
                {
                    //Al guardar
                    if (ModalTitulo.InnerText.Contains("Nuevo") && fila["TIPOACTIVOFIJO"].ToString().ToUpper().Trim() == txt_TipoActivoFijo.Text.ToUpper().Trim())
                    {
                        valida = "Ya existe el tipo de activo fijo: " + txt_TipoActivoFijo.Text.ToUpper().Trim();
                        break;
                    }

                    //Al editar
                    if (ModalTitulo.InnerText.Contains("Editar") && Session["TIPOACTIVOKEY"] != null &&
                        fila["TIPOACTIVOFIJO"].ToString().ToUpper().Trim() == txt_TipoActivoFijo.Text.ToUpper().Trim() &&
                        fila["TIPOACTIVOKEY"].ToString().Trim() != Session["TIPOACTIVOKEY"].ToString().Trim())
                    {
                        valida = "Ya existe el tipo de activo fijo: " + txt_TipoActivoFijo.Text.ToUpper().Trim();
                        break;
                    }
                }
            }

            if (valida.Length > 0)
            {
                //Mantiene el modal
                MostrarModal();

                //Titulo del Modal
                if (ModalTitulo.InnerText.Contains("Nuevo"))
                {
                    ModalTitulo.InnerText = "Nuevo Tipo de Activo Fijo";
                }
                else
                {
                    ModalTitulo.InnerText = "Editar Tipo de Activo Fijo";
                }
                DataBind();

                AlertError(valida);
                return;
            }

            //Guardar
            string    mensaje = "";
            DataTable dt      = new DataTable();

            if (ModalTitulo.InnerText.Contains("Nuevo"))
            {
                dt = catalogo.GuardarTiposActivoFijo(txt_TipoActivoFijo.Text.ToUpper().Trim(), int.Parse(Session["IdUsuario"].ToString()), lblCadena.Text, ref mensaje);
            }
            else if (ModalTitulo.InnerText.Contains("Editar"))
            {
                dt = catalogo.EditarTiposActivoFijo(Int64.Parse(Session["TIPOACTIVOKEY"].ToString()), txt_TipoActivoFijo.Text.ToUpper().Trim(),
                                                    int.Parse(Session["IdUsuario"].ToString()), lblCadena.Text, ref mensaje);
            }

            if (dt != null && dt.Rows.Count > 0)
            {
                Grid.DataSource = Session["Grid"] = dt;
                Grid.DataBind();
                Grid.Settings.VerticalScrollBarMode = ScrollBarMode.Hidden;
                Grid.SettingsPager.PageSize         = 20;

                //Selecccionar el primer registro del grid
                if (Session["Grid"] != null)
                {
                    Grid.Selection.SelectRow(0);
                }

                AlertSuccess("El tipo de activo fijo se " + (ModalTitulo.InnerText.Contains("Editar") ? "actualizó" : "agregó") + ".");
            }
            else
            {
                Grid.DataSource = Session["Grid"];
                Grid.DataBind();
            }

            Grid.Settings.VerticalScrollableHeight = 330;
            Grid.Settings.VerticalScrollBarMode    = ScrollBarMode.Visible;

            //Actualiza los permisos de los botones en grid
            PermisosUsuario();
        }