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 (cmbUserAutorizado.Text.Trim().Contains("* Usuario Autorizado") || cmbUserAutorizado.Text.Trim() == string.Empty)
            {
                valida = "Para poder guardar seleccione un usuario autorizado";
            }

            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("Nueva") &&
                        fila["USUARIO AUTORIZADO"].ToString().ToUpper().Trim() == cmbUserAutorizado.Text.Trim().ToUpper().Trim() &&
                        fila["USUARIO AUTORIZO"].ToString().ToUpper().Trim() == Session["Nombre"].ToString().ToUpper().Trim())
                    {
                        valida = "Ya existe el usuario autorizado: " + cmbUserAutorizado.Text.Trim() + " y el usuario que autoriza: " + Session["Nombre"].ToString().Trim();
                        break;
                    }

                    //Al editar
                    if (ModalTitulo.InnerText.Contains("Editar") && Session["AUTORIZACIONKEY"] != null &&
                        fila["USUARIO AUTORIZADO"].ToString().Trim().ToUpper() == cmbUserAutorizado.Text.Trim().ToUpper().Trim() &&
                        fila["USUARIO AUTORIZO"].ToString().ToUpper().Trim() == Session["Nombre"].ToString().ToUpper().Trim() &&
                        fila["AUTORIZACIONKEY"].ToString().Trim() != Session["AUTORIZACIONKEY"].ToString().Trim())
                    {
                        valida = "Ya existe el usuario autorizado: " + cmbUserAutorizado.Text.Trim() + " y el usuario que autoriza: " + Session["Nombre"].ToString().Trim();
                        break;
                    }
                }
            }

            else if (FECHA.Text.Trim() == string.Empty)
            {
                valida = "Para poder guardar seleccione una fecha";
            }

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

                //Titulo del Modal
                if (ModalTitulo.InnerText.Contains("Nuevo"))
                {
                    ModalTitulo.InnerText = "Nueva Autorización";
                }
                else
                {
                    ModalTitulo.InnerText = "Editar Autorización";
                }
                DataBind();

                AlertError(valida);
                return;
            }

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

            DateTime?fecha = string.IsNullOrEmpty(FECHA.Text) ? (DateTime?)null : DateTime.Parse(FECHA.Text);

            if (ModalTitulo.InnerText.Contains("Nueva"))
            {
                dt = catalogo.GuardarAutorizacion(Session["Nombre"].ToString().Trim(), cmbUserAutorizado.Text.Trim(), fecha, int.Parse(Session["IdUsuario"].ToString()), lblCadena.Text, ref mensaje);
            }
            else if (ModalTitulo.InnerText.Contains("Editar"))
            {
                dt = catalogo.EditarAutorizacion(int.Parse(Session["AUTORIZACIONKEY"].ToString()), Session["Nombre"].ToString().Trim(), cmbUserAutorizado.Text.Trim(), fecha,
                                                 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("La Autorización 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();
        }