/* * Devuelve el cruzamiento completo, con el nombre de fertilidad en vez de la id */ public List <Cruzamiento> GetCruzamiento(int año) { try { DataAccess.DataBase bd = new DataBase(); bd.Connect(); //método conectar List <Cruzamiento> cruzamientos = new List <Cruzamiento>(); string salida = "cruzamientoObtener"; //comando sql bd.CreateCommandSP(salida); bd.CreateParameter("@ano_cruzamiento", DbType.Int32, año); DbDataReader resultado = bd.Query();//disponible resultado while (resultado.Read()) { Cruzamiento cruz = new Cruzamiento(resultado.GetInt32(0), resultado.GetString(1), resultado.GetString(2), resultado.GetString(3), resultado.GetString(4), resultado.GetString(5), resultado.GetString(6), resultado.GetBoolean(7), resultado.GetInt32(8)); cruzamientos.Add(cruz); } resultado.Close(); bd.Close(); return(cruzamientos); } catch (Exception e) { throw new Exception(e.ToString()); } }
/* * Actualizar cruzamiento, involucra tablas cruzamienta, madre y padre. * Devuelve 1 si actualizo, 0 en caso contrario de que la ubicación exista */ public int UpdateCruzamiento(Cruzamiento c) { try { DataAccess.DataBase bd = new DataBase(); bd.Connect(); //método conectar string sql = "cruzamientoActualizar"; bd.CreateCommandSP(sql); bd.CreateParameter("@id_cruzamiento", DbType.Int32, c.Id_cruzamiento); bd.CreateParameter("@codigo_variedad", DbType.String, c.Codigo_variedad); bd.CreateParameter("@pad_codigo_variedad", DbType.String, c.Pad_codigo_variedad); bd.CreateParameter("@ubicacion_cruzamiento", DbType.String, c.Ubicacion_cruzamiento); bd.CreateParameter("@id_fertilidad", DbType.Int32, c.Id_fertilidad); bd.CreateParameter("@flor", DbType.Boolean, c.Flor); bd.CreateParameter("@bayas", DbType.Int32, c.Bayas); bd.CreateParameter("@ano_cruzamiento", DbType.Int32, c.Ano_cruzamiento); int existe_ubicacion; DbDataReader resultado = bd.Query();//disponible resultado resultado.Read(); existe_ubicacion = resultado.GetInt32(0); resultado.Close(); bd.Close(); return(existe_ubicacion); } catch (Exception e) { throw new Exception(e.ToString()); } }
/* * Funcion que devuelve una lista de años comenzando del primer cruzamiento hasta el ultimo informe upov */ public List <Cruzamiento> GetAñoCruzamiento_fn() { try { DataAccess.DataBase bd = new DataBase(); bd.Connect(); //método conectar List <Cruzamiento> años = new List <Cruzamiento>(); string salida = "select * from dbo.fn_añoCruzamientoObtener()"; //comando sql bd.CreateCommand(salida); DbDataReader resultado = bd.Query();//disponible resultado while (resultado.Read()) { Cruzamiento año = new Cruzamiento(resultado.GetInt32(0)); años.Add(año); } resultado.Close(); bd.Close(); return(años); } catch (Exception e) { throw new Exception(e.ToString()); } }
protected void CruzamientoGridView_RowUpdating(Object sender, GridViewUpdateEventArgs e) { try { this.lblCruzamientoError.Visible = true; int invalido = 0; CatalogCruzamiento cc = new CatalogCruzamiento(); string id_cruzamiento = HttpUtility.HtmlDecode((string)this.gdvCruzamiento.Rows[e.RowIndex].Cells[2].Text); string codigo_variedad = HttpUtility.HtmlDecode((string)this.gdvCruzamiento.Rows[e.RowIndex].Cells[3].Text); string pad_codigo_variedad = HttpUtility.HtmlDecode((string)this.gdvCruzamiento.Rows[e.RowIndex].Cells[5].Text); //ubicacion string ubicacion_cruzamiento = e.NewValues[0].ToString(); if (ubicacion_cruzamiento.Length == 3) { string ucPrimero = ubicacion_cruzamiento.Substring(0, 1); string ucSegundo = ubicacion_cruzamiento.Substring(1, 1); string ucTercero = ubicacion_cruzamiento.Substring(2, 1); if (EsNumero(ucPrimero) == false || EsNumero(ucSegundo) == true || EsNumero(ucTercero) == false) { this.lblCruzamientoError.Text += "Ubicación incorrecta, Ejemplo '1D1' o '1I1'.<br/>"; invalido = 1; } } else { this.lblCruzamientoError.Text += "Ubicación incorrecta, Ejemplo '1D1' o '1I1'.<br/>"; invalido = 1; } //fertilidad DropDownList ddlCruzamientoFertilidad = (DropDownList)gdvCruzamiento.Rows[e.RowIndex].FindControl("ddlCruzamientoFertilidad"); string id_fertilidad = ddlCruzamientoFertilidad.SelectedValue; //flor CheckBox chkCruzamientoFlor = (CheckBox)gdvCruzamiento.Rows[e.RowIndex].FindControl("chkCruzamientoFlor"); bool flor; if (chkCruzamientoFlor.Checked) { flor = true; } else { flor = false; this.lblCruzamientoError.Text += "Las bayas quedarán en 0 debido a que no tiene flor.<br/>"; } //bayas int bayasInt = 0; string bayas = e.NewValues[1].ToString(); if ((EsNumero(bayas) == true && (Int32.Parse(bayas) < 0 || Int32.Parse(bayas) > 999)) || (EsNumero(bayas) == false)) { this.lblCruzamientoError.Text += "Las bayas deben ser un número positivo menor a 1000.<br/>"; invalido = 1; } else { bayasInt = Int32.Parse(bayas); } if (invalido == 0) { Project.BusinessRules.Cruzamiento cruzamiento = new Project.BusinessRules.Cruzamiento(Int32.Parse(id_cruzamiento), codigo_variedad, pad_codigo_variedad, ubicacion_cruzamiento, Int32.Parse(id_fertilidad), flor, bayasInt, valorAñoInt32); int valor = cc.UpdateCruzamiento(cruzamiento); if (valor == 0) { this.lblCruzamientoError.Text += "La ubicación ingresada ya existe, inténtelo nuevamente.<br/>"; } } } catch (Exception ex) { Page.ClientScript.RegisterStartupScript(GetType(), "Script", "<script>alert('¡Error al modificar, repare los parámetros que ingresó!')</script>"); } this.gdvCruzamiento.EditIndex = -1; PoblarGrilla(); }