/* * Actualizar codificacion, devuelve 1 si actualizó, 0 en caso contrario */ public int UpdateCodificacion(Codificacion c) { try { DataAccess.DataBase bd = new DataBase(); bd.Connect(); //método conectar string sql = "codificacionActualizar"; bd.CreateCommandSP(sql); bd.CreateParameter("@id_codificacion", DbType.Int32, c.Id_codificacion); bd.CreateParameter("@codigo_individuo", DbType.String, c.Codigo_individuo); int existe_codificacion; DbDataReader resultado = bd.Query();//disponible resultado resultado.Read(); existe_codificacion = resultado.GetInt32(0); resultado.Close(); bd.Close(); return(existe_codificacion); } catch (Exception e) { throw new Exception(e.ToString()); } }
/* * Devuelve los hijos codificados */ public List <Codificacion> GetCodificacion(string codigo_variedad, string pad_codigo_variedad, int año) { try { DataAccess.DataBase bd = new DataBase(); bd.Connect(); //método conectar List <Codificacion> codificaciones = new List <Codificacion>(); string salida = "codificacionObtener"; //comando sql bd.CreateCommandSP(salida); bd.CreateParameter("@codigo_variedad", DbType.String, codigo_variedad); bd.CreateParameter("@pad_codigo_variedad", DbType.String, pad_codigo_variedad); bd.CreateParameter("@ano_codificacion", DbType.Int32, año); DbDataReader resultado = bd.Query();//disponible resultado while (resultado.Read()) { Codificacion cod = new Codificacion(resultado.GetInt32(0), resultado.GetString(1)); codificaciones.Add(cod); } resultado.Close(); bd.Close(); return(codificaciones); } catch (Exception e) { throw new Exception(e.ToString()); } }
protected void CodigoIndividuosGridView_RowUpdating(Object sender, GridViewUpdateEventArgs e) { CatalogCodificacion cc = new CatalogCodificacion(); try { this.lblCodificacionError.Visible = true; string id_codificacion = HttpUtility.HtmlDecode((string)this.gdvCodigoIndividuos.Rows[e.RowIndex].Cells[1].Text); string codigo_individuo = e.NewValues[0].ToString().ToLower(); //azul string c = codigo_individuo.Substring(0, 1); string b = codigo_individuo.Substring(1, 1); //roja string r = codigo_individuo.Substring(1, 1); //amarilla string t = codigo_individuo.Substring(0, 1); string y = codigo_individuo.Substring(1, 1); //bicolor string bi = codigo_individuo.Substring(0, 1); string ci = codigo_individuo.Substring(1, 1); //año bool año = EsNumero(codigo_individuo.Substring(2, 4)); //guion string guion = codigo_individuo.Substring(6, 1); //número de color bool num_color1 = EsNumero(codigo_individuo.Substring(7)); bool error = false; //if código azul if ((!codigo_individuo.Equals("") && c.Equals("c") && b.Equals("b")) && (año != true || !guion.Equals("-") || num_color1 != true)) { this.lblCodificacionError.Text += "Código color azul incorrecto, Ejemplo: 'cb2016-001'. "; error = true; } //if código rojo if ((!codigo_individuo.Equals("") && c.Equals("c") && r.Equals("r")) && (año != true || !guion.Equals("-") || num_color1 != true)) { this.lblCodificacionError.Text += "Código color rojo incorrecto, Ejemplo: 'cr2016-001'. "; error = true; } //if código amarilla if ((!codigo_individuo.Equals("") && t.Equals("t") && y.Equals("y")) && (año != true || !guion.Equals("-") || num_color1 != true)) { this.lblCodificacionError.Text += "Código color amarillo incorrecto, Ejemplo: 'ty2016-001'. "; error = true; } //if código bicolor if ((!codigo_individuo.Equals("") && bi.Equals("b") && ci.Equals("c")) && (año != true || !guion.Equals("-") || num_color1 != true)) { this.lblCodificacionError.Text += "Código bicolor incorrecto, Ejemplo: 'bc2016-001'. "; error = true; } //if otro código if (!codigo_individuo.Equals("") && (!c.Equals("c") || !b.Equals("b")) && (!c.Equals("c") || !r.Equals("r")) && (!t.Equals("t") || !y.Equals("y")) && (!bi.Equals("b") || !ci.Equals("c"))) { this.lblCodificacionError.Text += "Código incorrecto. "; error = true; } if (error == false) { string año1 = codigo_individuo.Substring(2, 1); string año2 = codigo_individuo.Substring(3, 1); string año3 = codigo_individuo.Substring(4, 1); string año4 = codigo_individuo.Substring(5, 1); string añoConcatenado = año1 + año2 + año3 + año4; //pregunta si el año seleccionado es el mismo al año del codigo if (!añoConcatenado.Equals(valorAñoString)) { this.lblCodificacionError.Text += "Año incorrecto, debe ser el mismo seleccionado. "; } else { Project.BusinessRules.Codificacion cod = new Project.BusinessRules.Codificacion(Int32.Parse(id_codificacion), codigo_individuo); int valor = cc.UpdateCodificacion(cod); if (valor == 0) { Page.ClientScript.RegisterStartupScript(GetType(), "Script", "<script>alert('¡No se pudo modificar debido a que el código escrito ya existe en el año!')</script>"); } } } this.gdvCodigoIndividuos.EditIndex = -1; PoblarGrilla(); } catch (Exception ex) { Page.ClientScript.RegisterStartupScript(GetType(), "Script", "<script>alert('" + ex.ToString() + "')</script>"); } }