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(); }