private string obtenerDatosFact(string sDesde, string sHasta, string sPantallaCompleta) { StringBuilder sb = new StringBuilder(); string sResul = "", sToolTip = ""; SqlDataReader dr; bool bError = false; try { if (!Utilidades.isDate(sDesde)) { sResul = "Error@#@La fecha desde no es correcta"; bError = true; } if (!bError && !Utilidades.isDate(sHasta)) { sResul = "Error@#@La fecha hasta no es correcta"; bError = true; } if (!bError) { if (sPantallaCompleta == "T") { sb.Append("<table id='tblDatos' style='width:1220px; text-align:right;'>"); sb.Append("<colgroup>"); sb.Append("<col style='width:295px;' />"); sb.Append("<col style='width:300px;' />"); sb.Append("<col style='width:25px;' />"); sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("</colgroup>"); sb.Append("<tbody>"); dr = Consumo.ObtenerConsumosFacturabilidad((int)Session["IDFICEPI_IAP"], DateTime.Parse(sDesde), DateTime.Parse(sHasta)); #region imputaciones while (dr.Read()) { sToolTip = "<label style='width:60px'>Proy. Tec.:</label>" + dr["t331_despt"].ToString(); if (dr["t334_desfase"].ToString() != "") { sToolTip += "<br><label style='width:60px'>Fase:</label>" + dr["t334_desfase"].ToString(); } if (dr["t335_desactividad"].ToString() != "") { sToolTip += "<br><label style='width:60px'>Actividad:</label>" + dr["t335_desactividad"].ToString(); } sToolTip += "<br><label style='width:60px'>Tarea:</label>" + dr["t332_destarea"].ToString().Replace((char)34, (char)39); sb.Append("<tr style='height:20px;'>"); sb.Append("<td style='text-align:left;'><nobr class='NBR W280' onmouseover='TTip(event)'>" + double.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + " - " + dr["t305_seudonimo"].ToString() + "</nobr></td>"); sb.Append("<td style='border-right:0px;text-align:left'><nobr class='NBR W280 MANO' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../images/info.gif' style='vertical-align:middle' /> Información] body=[" + sToolTip + "] hideselects=[off]\">" + double.Parse(dr["t332_idtarea"].ToString()).ToString("#,###") + " - " + dr["t332_destarea"].ToString().Replace((char)34, (char)39) + "</nobr></td>"); sb.Append("<td>"); if ((bool)dr["t332_facturable"]) { sb.Append("<img src='" + Session["strServer"].ToString() + "images/imgIcoMonedas.gif' width='16' height='16' class='ICO'>"); } else { sb.Append("<img src='" + Session["strServer"].ToString() + "images/imgIcoMonedasOff.gif' width='16' height='16' class='ICO'>"); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["t332_etpl"].ToString()) > 0) { sb.Append(double.Parse(dr["t332_etpl"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["t336_etp"].ToString()) > 0) { sb.Append(double.Parse(dr["t336_etp"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_planificadas_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_planificadas_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_tecnico_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_tecnico_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_otros_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_otros_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_total_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_total_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_planificadas_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_planificadas_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_tecnico_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_tecnico_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_otros_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_otros_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_total_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_total_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("</tr>"); } dr.Close(); dr.Dispose(); #endregion sb.Append("</tbody>"); sb.Append("</table>"); } else {//Pantalla a 1024 sb.Append("<table id='tblDatos' style='width:980px; text-align:right;'>"); sb.Append("<colgroup>"); sb.Append("<col style='width:175px;' />"); sb.Append("<col style='width:185px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:60px;;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("<col style='width:60px;' />"); // sb.Append("</colgroup>"); sb.Append("<tbody>"); dr = Consumo.ObtenerConsumosFacturabilidad((int)Session["IDFICEPI_IAP"], DateTime.Parse(sDesde), DateTime.Parse(sHasta)); #region imputaciones while (dr.Read()) { sToolTip = "<label style='width:60px'>Proy. Tec.:</label>" + dr["t331_despt"].ToString(); if (dr["t334_desfase"].ToString() != "") { sToolTip += "<br><label style='width:60px'>Fase:</label>" + dr["t334_desfase"].ToString(); } if (dr["t335_desactividad"].ToString() != "") { sToolTip += "<br><label style='width:60px'>Actividad:</label>" + dr["t335_desactividad"].ToString(); } sToolTip += "<br><label style='width:60px'>Tarea:</label>" + dr["t332_destarea"].ToString().Replace((char)34, (char)39); sb.Append("<tr style='height:20px;'>"); sb.Append("<td style='text-align:left;'><nobr class='NBR W170' onmouseover='TTip(event)'>" + double.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + " - " + dr["t305_seudonimo"].ToString() + "</nobr></td>"); sb.Append("<td style='border-right:0px;text-align:left'><nobr class='NBR W170 MANO' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../images/info.gif' style='vertical-align:middle' /> Información] body=[" + sToolTip + "] hideselects=[off]\">" + double.Parse(dr["t332_idtarea"].ToString()).ToString("#,###") + " - " + dr["t332_destarea"].ToString().Replace((char)34, (char)39) + "</nobr></td>"); sb.Append("<td>"); if ((bool)dr["t332_facturable"]) { sb.Append("<img src='" + Session["strServer"].ToString() + "images/imgIcoMonedas.gif' width='16' height='16' class='ICO'>"); } else { sb.Append("<img src='" + Session["strServer"].ToString() + "images/imgIcoMonedasOff.gif' width='16' height='16' class='ICO'>"); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["t332_etpl"].ToString()) > 0) { sb.Append(double.Parse(dr["t332_etpl"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["t336_etp"].ToString()) > 0) { sb.Append(double.Parse(dr["t336_etp"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_planificadas_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_planificadas_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_tecnico_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_tecnico_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_otros_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_otros_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_total_periodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_total_periodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_planificadas_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_planificadas_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_tecnico_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_tecnico_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_otros_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_otros_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_total_finperiodo"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_total_finperiodo"].ToString()).ToString("N")); } sb.Append("</td>"); sb.Append("</tr>"); } dr.Close(); dr.Dispose(); #endregion sb.Append("</tbody>"); sb.Append("</table>"); } dr = Consumo.ObtenerIndicadoresFacturabilidad((int)Session["IDFICEPI_IAP"], DateTime.Parse(sDesde), DateTime.Parse(sHasta)); #region indicadores double dFact = 0, dNoFact = 0; sb.Append("@#@<table id='tblDatos2' class='texto' style='width:700px;text-align:right;' cellpadding='0' cellspacing='0'>"); sb.Append("<colgroup>"); sb.Append("<col style='width:195px;' />"); sb.Append("<col style='width:300px;' />"); sb.Append("<col style='width:100px;' />"); // sb.Append("<col style='width:100px;' />"); // sb.Append("</colgroup>"); sb.Append("<tbody>"); while (dr.Read()) { sb.Append("<tr style='height:20px;'>"); sb.Append("<td style='text-align:left;padding-left:2px;'><nobr class='NBR W190' onmouseover='TTip(event)'>" + dr["t320_denominacion"].ToString() + "</nobr></td>"); sb.Append("<td style='text-align:left;padding-left:2px;'><nobr class='NBR W280' onmouseover='TTip(event)'>" + dr["t323_denominacion"].ToString() + "</nobr></td>"); sb.Append("<td>"); if (double.Parse(dr["horas_facturables"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_facturables"].ToString()).ToString("N")); dFact += double.Parse(dr["horas_facturables"].ToString()); } sb.Append("</td>"); sb.Append("<td>"); if (double.Parse(dr["horas_no_facturables"].ToString()) > 0) { sb.Append(double.Parse(dr["horas_no_facturables"].ToString()).ToString("N")); dNoFact += double.Parse(dr["horas_no_facturables"].ToString()); } sb.Append("</td>"); sb.Append("</tr>"); } dr.Close(); dr.Dispose(); sb.Append("</tbody>"); sb.Append("</table>"); GenerarGrafico(dFact, dNoFact); #endregion sResul = "OK@#@" + sb.ToString(); } } catch (Exception ex) { sResul = "Error@#@" + Errores.mostrarError("Error al obtener los datos de facturabililidad", ex); } return(sResul); }