protected void ddlAnio_SelectedIndexChanged(object sender, System.EventArgs e) { Session["anio"] = ddlAnio.SelectedValue.ToString(); // Variables para consultas int localidad = (Session["localidad"].ToString() == "") ? 0 : int.Parse(Session["localidad"].ToString()); int pagaduria = (Session["pagaduria"].ToString() == "") ? 0 : int.Parse(Session["pagaduria"].ToString()); int archivo = (Session["archivoId"].ToString() == "") ? 0 : int.Parse(Session["archivoId"].ToString()); int mes = (Session["mes"].ToString() == "") ? 0 : int.Parse(Session["mes"].ToString()); int anio = (Session["anio"].ToString() == "") ? 0 : int.Parse(Session["anio"].ToString()); int estado = (Session["estadoPag"].ToString() == "") ? 0 : int.Parse(Session["estadoPag"].ToString()); //Novedades del mes DataTable dtCargarNovedades = new DataTable(); dtCargarNovedades = AdministrarNovedades.ConsultarNovedades(localidad, pagaduria, archivo, 1, 0, mes, anio); grvMes.DataSource = dtCargarNovedades; grvMes.DataBind(); _dtNovedadArchivo = dtCargarNovedades; Session["dtNovedadMes"] = dtCargarNovedades; try { //Se oculta cabecera y final de la pocision numero 10 grvMes.HeaderRow.Cells[10].Visible = false; foreach (GridViewRow row in grvMes.Rows) { row.Cells[10].Visible = false; } } catch { } //Si la variable de archivo tiene valor diferente de 0 muestra el check de lo contrario lo mantendra oculto if (archivo != 0) { //Si el dt viene con información muestra el check if (_dtNovedadArchivo.Rows.Count > 0) { chkEnviarNovedad.Visible = true; } else { chkEnviarNovedad.Visible = false; } } else { chkEnviarNovedad.Visible = false; } //Si se cargan novedades se muestra la tabla de lo contrario el mensaje if (dtCargarNovedades.Rows.Count > 0) { listaNovedadesMes.Visible = true; noNovedadesMes.Visible = false; } else { listaNovedadesMes.Visible = false; noNovedadesMes.Visible = true; } // Cargar novedades pendientes por aplicar _dtNovedadArchivoPendiente = AdministrarNovedades.ConsultarNovedadesArchivoEnviada(localidad, pagaduria, archivo, 1, 1); grvPendientePorAplicar.DataSource = _dtNovedadArchivoPendiente; grvPendientePorAplicar.DataBind(); //Se carga en session la tabla para su posterior impresión Session["dtNovedadPendienteAplicar"] = _dtNovedadArchivoPendiente; //Si se cargan novedades se muestra la tabla de lo contrario el mensaje if (_dtNovedadArchivoPendiente.Rows.Count > 0) { pendientesPorAplicar.Visible = true; noPendientesPorAplicar.Visible = false; } else { pendientesPorAplicar.Visible = false; noPendientesPorAplicar.Visible = true; } // cargar novedades sin aplicar DataTable dtFechaSinAplicar = new DataTable(); dtFechaSinAplicar = AdministrarNovedades.ConsultarFechaAplicacionNovedades(); // Cargar novedades aplicadas DataTable dtFechaAplicacion = new DataTable(); dtFechaAplicacion = AdministrarNovedades.ConsultarFechaAplicacionNovedades(); DateTime fecha2; DateTime fecha3; DataTable dtCargarNovedadesMesYAnioAplicadas = new DataTable(); DataTable dtCargarNovedadesMesYAnioSinAplicar = new DataTable(); DataTable dtCargarNovedadesMesYAnioHistorico = new DataTable(); //Pregunta si ya fue seleccionado el mes y el año para realizar el filtro por fechas if (mes != 0 && anio != 0) { //Convierte el valor de los ddl seleccionados en fecha int diasMes = DateTime.DaysInMonth(anio, mes); fecha2 = DateTime.Parse("01/" + mes + "/" + anio); fecha3 = DateTime.Parse(diasMes + "/" + mes + "/" + anio); //Novedades por mes y año sin aplicar dtCargarNovedadesMesYAnioSinAplicar = AdministrarNovedades.ConsultarNovedadesPorMesYAnioAplicadas(localidad, pagaduria, archivo, 0, fecha2, fecha3); //Novedades por mes y año aplicadas dtCargarNovedadesMesYAnioAplicadas = AdministrarNovedades.ConsultarNovedadesPorMesYAnioAplicadas(localidad, pagaduria, archivo, 2, fecha2, fecha3); //Pregunta si ya se selecciono el estado para la busqueda del historico if (estado != 0) { //Historico de novedades por mes, año y estado dtCargarNovedadesMesYAnioHistorico = AdministrarNovedades.ConsultarNovedadesPorEstadoHistorico(localidad, pagaduria, archivo, fecha2, fecha3, estado); } else { //Historico de novedades por mes, año dtCargarNovedadesMesYAnioHistorico = AdministrarNovedades.ConsultarNovedadesPorMesYAnioHistorico(localidad, pagaduria, archivo, fecha2, fecha3); } } else { dtCargarNovedadesMesYAnioSinAplicar = AdministrarNovedades.ConsultarNovedadesArchivo(localidad, pagaduria, archivo, 0); dtCargarNovedadesMesYAnioAplicadas = AdministrarNovedades.ConsultarNovedadesArchivo(localidad, pagaduria, archivo, 2); ddlEstadoHistorico.Enabled = false; dtCargarNovedadesMesYAnioHistorico = AdministrarNovedades.ConsultarNovedadesHistoricoArchivo(localidad, pagaduria, archivo); } //Se carga a los GridView los resultados anteriores grvSinAplicar.DataSource = dtCargarNovedadesMesYAnioSinAplicar; grvSinAplicar.DataBind(); grvAplicadas.DataSource = dtCargarNovedadesMesYAnioAplicadas; grvAplicadas.DataBind(); grvHistorico.DataSource = dtCargarNovedadesMesYAnioHistorico; grvHistorico.DataBind(); //Se envia los dt con la información en sessión para su exportación a excel Session["dtNovedadHistorico"] = dtCargarNovedadesMesYAnioHistorico; Session["dtNovedadAplicada"] = dtCargarNovedadesMesYAnioAplicadas; Session["dtNovedadSinAplicar"] = dtCargarNovedadesMesYAnioSinAplicar; //Si se cargan novedades se muestra la tabla de lo contrario el mensaje if (dtCargarNovedadesMesYAnioSinAplicar.Rows.Count > 0) { novadadesSinAplicar.Visible = true; noNovadadesSinAplicar.Visible = false; } else { novadadesSinAplicar.Visible = false; noNovadadesSinAplicar.Visible = true; } //Si se cargan novedades se muestra la tabla de lo contrario el mensaje if (dtCargarNovedadesMesYAnioAplicadas.Rows.Count > 0) { novadadesAplicadas.Visible = true; noNovadadesAplicadas.Visible = false; } else { novadadesAplicadas.Visible = false; noNovadadesAplicadas.Visible = true; } //Si se cargan novedades se muestra la tabla de lo contrario el mensaje if (dtCargarNovedadesMesYAnioHistorico.Rows.Count > 0) { novadadesHistorico.Visible = true; noNovadadesHistorico.Visible = false; } else { novadadesHistorico.Visible = false; noNovadadesHistorico.Visible = true; } }