private string ObtenerHorasCalendario(string nUsuario, string idFicepi, string nCalendario, string nMes, string nAnno) { StringBuilder sb = new StringBuilder(); try { SqlDataReader dr = Consumo.ObtenerConsumosCalendarioIAP(int.Parse(nUsuario), int.Parse(idFicepi), int.Parse(nCalendario), int.Parse(nMes), int.Parse(nAnno)); while (dr.Read()) { sb.Append(dr["dia"].ToString() + "//"); sb.Append(dr["estilo_festivo"].ToString() + "//"); if (double.Parse(dr["esfuerzo"].ToString()) == 0) { sb.Append("0//"); } else if (double.Parse(dr["esfuerzo"].ToString()) == 0.5) { sb.Append("0,5//"); } else { sb.Append(double.Parse(dr["esfuerzo"].ToString()).ToString("#,###.##") + "//"); } if (double.Parse(dr["horas_estandar"].ToString()) == 0) { sb.Append("0//"); } else if (double.Parse(dr["horas_estandar"].ToString()) == 0.5) { sb.Append("0,5//"); } else { sb.Append(double.Parse(dr["horas_estandar"].ToString()).ToString("#,###.##") + "//"); } sb.Append(DateTime.Parse(dr["dia_entero"].ToString()).ToShortDateString() + "//"); if (double.Parse(dr["horas_planificadas"].ToString()) == 0) { sb.Append("0//"); } else if (double.Parse(dr["horas_planificadas"].ToString()) == 0.5) { sb.Append("0,5//"); } else { sb.Append(double.Parse(dr["horas_planificadas"].ToString()).ToString("#,###.##") + "//"); } sb.Append(dr["dia_festivo"].ToString() + "//"); //Si es festivo en el calendario o es un día no laborable, no se marca como vacación if (dr["estilo_festivo"].ToString() == "0") { sb.Append(dr["dia_vacaciones"].ToString() + "##"); } else { sb.Append("0##"); } } dr.Close(); dr.Dispose(); return("OK@#@" + sb.ToString()); } catch (Exception ex) { return("Error@#@" + Errores.mostrarError("Error al obtener los datos horarios del calendario.", ex)); } }