private void RECUPERAR_REGISTRO_CULTIVO() { DB_EXT_Seguimiento avsiem = new DB_EXT_Seguimiento(); DataTable dt1 = new DataTable(); DataTable dt2 = new DataTable(); DataTable dt3 = new DataTable(); DataTable dt = new DataTable(); DataRow drnew; dt.TableName = "Fenologia"; dt.Columns.Add(new DataColumn("Id_Fenologia", typeof(int))); dt.Columns.Add(new DataColumn("Fenologia", typeof(string))); dt.Columns.Add(new DataColumn("EstadoFF", typeof(string))); dt.Columns.Add(new DataColumn("Porcentaje", typeof(int))); dt.Columns.Add(new DataColumn("Id_Seguimiento_Parcela", typeof(int))); drnew = dt.NewRow(); dt.Rows.Add(drnew); ViewState["dtFenologia"] = dt; dt1 = avsiem.DB_RECUPERAR_REGISTRO_CULTIVO(lblId_Productor.Text, "3"); dt2 = avsiem.DB_RECUPERAR_REGISTRO_CULTIVO(lblId_Productor.Text, "VERIFICACION_CULTIVO"); dt3 = dt1.Clone(); foreach (DataRow dr in dt2.Rows) { dt3.ImportRow(dr); } foreach (DataRow dr in dt1.Rows) { dt3.ImportRow(dr); } if (dt3.Rows.Count > 0) { DataView dv = dt3.DefaultView; dv.Sort = "[Id_Seguimiento_Parcela] ASC"; dt3 = dv.ToTable(); } IList <EXT_SeguimientoCultivo> ColSC = new List <EXT_SeguimientoCultivo>(); DataTable dtTable = (DataTable)ViewState["dtFenologia"]; DataRow drRow = null; foreach (DataRow row in dt3.Rows) { EXT_SeguimientoCultivo ObjSC = new EXT_SeguimientoCultivo(); if (dtTable.Rows.Count > 0) { drRow = dtTable.NewRow(); int id_f = Convert.ToInt16(row["Id_Fenologia"].ToString()); switch (id_f) { case 26: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "GERMINACION EMERGENCIA"; break; case 27: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "PLANTULA"; break; case 28: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "MACOLLAMIENTO"; break; case 29: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "EMBUCHE"; break; case 30: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "ESPIGAZON"; break; case 31: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "FLORACION"; break; case 32: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "LLENADO GRANO"; break; case 33: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "MADURACION"; break; case 34: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "GERMINACION EMERGENCIA"; break; case 35: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "PLANTULA"; break; case 36: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "FASE VEGETATIVA"; break; case 37: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "FASE REPRODUCTIVA"; break; case 38: drRow["Id_Fenologia"] = id_f; drRow["Fenologia"] = "MADURACION DEL GRANO"; break; } //drRow["Id_Fenologia"] = DDLFenologia.SelectedValue; //drRow["Fenologia"] = DDLFenologia.SelectedItem.ToString(); drRow["EstadoFF"] = row["Estado"].ToString(); drRow["Porcentaje"] = Convert.ToInt16(row["Porcentaje_FF"].ToString()); drRow["Id_Seguimiento_Parcela"] = Convert.ToInt16(row["Id_Seguimiento_Parcela"].ToString()); } if (dtTable.Rows[0][0].ToString() == "") { dtTable.Rows[0].Delete(); dtTable.AcceptChanges(); } dtTable.Rows.Add(drRow); //LR:agregamos en ColSC para poder bloquear el boton eliminar a los datos que se recuperen de la BD ObjSC.Id_Seguimiento_Parcela = Convert.ToInt16(row["Id_Seguimiento_Parcela"].ToString()); ObjSC.Id_Fenologia = Convert.ToInt16(row["Id_Fenologia"].ToString()); ObjSC.Estado = row["Estado"].ToString(); ObjSC.Porcentaje_FF = Convert.ToInt16(row["Porcentaje_FF"].ToString()); ColSC.Add(ObjSC); } ViewState["dtFenologia"] = dtTable; IList <EXT_SeguimientoCultivo> ColSeg_Cultivo = new List <EXT_SeguimientoCultivo>(); foreach (DataRow row in dtTable.Rows) { EXT_SeguimientoCultivo ObjSegCultivo = new EXT_SeguimientoCultivo(); string idSegPar = row["Id_Seguimiento_Parcela"].ToString(); string idFenologia = row["Id_Fenologia"].ToString(); string estado = row["EstadoFF"].ToString(); string porcentaje = row["Porcentaje"].ToString(); ObjSegCultivo.Id_Seguimiento_Parcela = Convert.ToInt16(idSegPar); ObjSegCultivo.Id_Fenologia = Convert.ToInt16(idFenologia); ObjSegCultivo.Estado = estado; ObjSegCultivo.Porcentaje_FF = Convert.ToInt16(porcentaje); ColSeg_Cultivo.Add(ObjSegCultivo); } ColSeguimientoCultivo = ColSeg_Cultivo.OrderByDescending(x => x.Id_Seguimiento_Parcela).ToList(); //ColSeguimientoCultivo = ColSC; //GVSegCultivo.DataSource = dtTable; //GVSegCultivo.DataBind(); }