/// <summary> /// Método para obtener de la BD todos los datos a utilzar en el resumen y actualizar los valores del form /// </summary> private void CargarDatosResumen() { //Se obtiene la configuración actual de la aplicación ProgramConfiguration config = new ProgramConfiguration(); string unidadDeTiempo = config.ObtenerConfig(ProgramConfiguration.LLAVE_UNIDAD_DE_TIEMPO); //Se obtienen los datos a cargar datosResumen.fechaActual = DateTime.Now.ToShortDateString(); //Si el resumen es por fechas se obtienen las fechas seleccionadas if (datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_POR_FECHAS) { datosResumen.fechaInicioResumen = dateTimePickerInicio.Value; datosResumen.fechaFinalResumen = dateTimePickerFinal.Value; } try { datosResumen.hembrasConsideradas = Utilities.EjecutarConsultaCount((datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_GENERAL) ? CONSULTA_HEMBRAS_CONSIDERADAS : CONSULTA_HEMBRAS_CONSIDERADAS_FECHAS.Replace(PARAM_FECHA_INICIO, datosResumen.fechaInicioResumen.ToString("yyyy-MM-dd")).Replace(PARAM_FECHA_FIN, datosResumen.fechaFinalResumen.ToString("yyyy-MM-dd"))); } catch { datosResumen.hembrasConsideradas = Utilities.RESULTADO_ERROR; } try { datosResumen.hembrasParido = Utilities.EjecutarConsultaCount((datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_GENERAL) ? CONSULTA_HEMBRAS_PARIDO : CONSULTA_HEMBRAS_PARIDO_FECHAS.Replace(PARAM_FECHA_INICIO, datosResumen.fechaInicioResumen.ToString("yyyy-MM-dd")).Replace(PARAM_FECHA_FIN, datosResumen.fechaFinalResumen.ToString("yyyy-MM-dd"))); } catch { datosResumen.hembrasParido = Utilities.RESULTADO_ERROR; } try { double IEPHistorico = (datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_GENERAL) ? ProcedimientosAlmacenados.ProcObtenerIEPHistorico() : ProcedimientosAlmacenados.ProcObtenerIEPHistoricoPeriodo(datosResumen.fechaInicioResumen, datosResumen.fechaFinalResumen); if (IEPHistorico != Utilities.RESULTADO_ERROR) { switch (unidadDeTiempo) { case "Meses": labelIEPPromHistoricoMeses.Text = "IEP Prom.Histórico (meses)"; datosResumen.iepPromHistoricoMeses = IEPHistorico / Utilities.DIAS_MES; break; case "Semanas": labelIEPPromHistoricoMeses.Text = "IEP Prom.Histórico (semanas)"; datosResumen.iepPromHistoricoMeses = IEPHistorico / Utilities.DIAS_SEMANA; break; default: labelIEPPromHistoricoMeses.Text = "IEP Prom.Histórico (días)"; datosResumen.iepPromHistoricoMeses = IEPHistorico; break; } } else { datosResumen.iepPromHistoricoMeses = Utilities.RESULTADO_ERROR; } } catch { datosResumen.iepPromHistoricoMeses = Utilities.RESULTADO_ERROR; } try { int resultadoPartos = Utilities.EjecutarConsultaCount((datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_GENERAL) ? CONSULTA_PARTOS : CONSULTA_PARTOS_FECHAS.Replace(PARAM_FECHA_INICIO, datosResumen.fechaInicioResumen.ToString("yyyy-MM-dd")).Replace(PARAM_FECHA_FIN, datosResumen.fechaFinalResumen.ToString("yyyy-MM-dd"))); if (resultadoPartos != Utilities.RESULTADO_ERROR && datosResumen.hembrasConsideradas != Utilities.RESULTADO_ERROR) { if (datosResumen.hembrasConsideradas != 0) { datosResumen.promPartosHato = Math.Round((double)resultadoPartos / (double)datosResumen.hembrasConsideradas, 2); } else { datosResumen.promPartosHato = 0; } } else { datosResumen.promPartosHato = Utilities.RESULTADO_ERROR; } } catch { datosResumen.promPartosHato = Utilities.RESULTADO_ERROR; } try { double ultimoIEPHistorico = (datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_GENERAL) ? ProcedimientosAlmacenados.ProcObtenerUltimoIEPHistorico() : ProcedimientosAlmacenados.ProcObtenerUltimoIEPHistoricoPeriodo(datosResumen.fechaInicioResumen, datosResumen.fechaFinalResumen); if (ultimoIEPHistorico != Utilities.RESULTADO_ERROR) { switch (unidadDeTiempo) { case "Meses": labelUltimoIEPVacaMeses.Text = "Último IEP cada vaca (meses)"; datosResumen.ultimoIEPVacaMeses = ultimoIEPHistorico / Utilities.DIAS_MES; break; case "Semanas": labelUltimoIEPVacaMeses.Text = "Último IEP cada vaca (semanas)"; datosResumen.ultimoIEPVacaMeses = ultimoIEPHistorico / Utilities.DIAS_SEMANA; break; default: labelUltimoIEPVacaMeses.Text = "Último IEP cada vaca (días)"; datosResumen.ultimoIEPVacaMeses = ultimoIEPHistorico; break; } } else { datosResumen.ultimoIEPVacaMeses = Utilities.RESULTADO_ERROR; } } catch { datosResumen.ultimoIEPVacaMeses = Utilities.RESULTADO_ERROR; } if (datosResumen.hembrasParido != Utilities.RESULTADO_ERROR && datosResumen.hembrasConsideradas != Utilities.RESULTADO_ERROR && datosResumen.hembrasConsideradas != 0) { datosResumen.porcParicionHistorico = Math.Round(((double)datosResumen.hembrasParido / (double)datosResumen.hembrasConsideradas) * 100, 2); } //Último % de parición if (datosResumen.tipoResumen == LLAVE_TIPO_RESUMEN_POR_FECHAS) { try { //Se obtiene la cantidad de hembras servidas int resultadoHembrasServidas = Utilities.EjecutarConsultaCount(CONSULTA_HEMBRAS_SERVIDAS.Replace(PARAM_FECHA_INICIO, datosResumen.fechaInicioResumen.ToString("yyyy-MM-dd")).Replace(PARAM_FECHA_FIN, datosResumen.fechaFinalResumen.ToString("yyyy-MM-dd"))); int resultadoHembrasParidoConPalpacion = Utilities.EjecutarConsultaCount(CONSULTA_HEMBRAS_PARIDO_FECHAS_CON_PALPACION.Replace(PARAM_FECHA_INICIO, datosResumen.fechaInicioResumen.ToString("yyyy-MM-dd")).Replace(PARAM_FECHA_FIN, datosResumen.fechaFinalResumen.ToString("yyyy-MM-dd"))); if (resultadoHembrasParidoConPalpacion != Utilities.RESULTADO_ERROR && resultadoHembrasServidas != Utilities.RESULTADO_ERROR) { if (resultadoHembrasServidas != 0) { datosResumen.ultimoPorcParicion = Math.Round(((double)resultadoHembrasParidoConPalpacion / (double)resultadoHembrasServidas) * 100, 2); } else { datosResumen.ultimoPorcParicion = 0; } } else { datosResumen.ultimoPorcParicion = Utilities.RESULTADO_ERROR; } } catch { datosResumen.ultimoPorcParicion = Utilities.RESULTADO_ERROR; } } }