예제 #1
0
    private string ObtenerJornadasReportadas(int anomesD, int anomesH, string sCR, string sDelNodo, string sExternos,
                                             string sOtrosNodos, string sSoloProyAbiertos, string sModeloCoste)
    {
        string sResul = "";
        //Andoni -> no sacamos el motivo por el que sale un usuario. Siempre va a ser porque está asociado a un proyecto
        //para el que tenemos ámbito de visión
        //string sUserAnt = "-1";
        StringBuilder sb = new StringBuilder();

        try
        {
            sb.Append("<table id='tblDatos' class='texto' style='width: 950px;'>");
            sb.Append("<colgroup>");
            sb.Append("<col style='width:20px' />");   //imagen
            sb.Append("<col style='width:430px' />");  //profesional
            sb.Append("<col style='width:200px' />");  //calendario
            sb.Append("<col style='width:50px;' />");  //jornadas en el calendario
            sb.Append("<col style='width:125px;' />"); //jornadas en proyectos bajo mi ambito
            sb.Append("<col style='width:125px;' />"); //jornadas en todos los proyectos
            sb.Append("</colgroup>");
            sb.Append("<tbody>");

            DateTime dInicio = Fechas.AnnomesAFecha(anomesD);
            DateTime dtAux   = Fechas.AnnomesAFecha(anomesH);
            DateTime dFin    = dtAux.AddMonths(1).AddDays(-1);
            ds = Consumo.ObtenerConsumosEconomicos((int)Session["UsuarioActual"], dInicio, dFin, (sCR == "") ? null : (int?)int.Parse(sCR),
                                                   (sDelNodo == "1") ? true : false, (sExternos == "1") ? true : false, (sOtrosNodos == "1") ? true : false,
                                                   (sSoloProyAbiertos == "1") ? true : false, sModeloCoste);

            if (ds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow oFila in ds.Tables[0].Rows)
                {
                    #region Indices de campos

                    /*
                     * 0 - t314_idusuario,
                     * 1 - t001_sexo
                     * 2 - tecnico,
                     * 3 - Calendario,
                     * 4 - JLCalendario,
                     * 5 - HLCalendario,
                     * 6 - t314_falta
                     * 7 - t314_fbaja
                     * 8 - denominacion une,
                     * 9 - denominacion empresa o proveedor
                     * 10 - baja,
                     * 11 - unidades económicas bajo mi ámbito de visión
                     * 12 - unidades ecónomicas totales
                     */
                    #endregion

                    //sb.Append("<tr R=" + ((int)oFila["t314_idusuario"]).ToString("#,###") + " style='DISPLAY: block; height:20px;'");
                    sb.Append("<tr style='height:20px;'");
                    //if (oFila["t303_denominacion"].ToString() == "")
                    //    sb.Append(" tipo ='E'");
                    //else
                    //{
                    //    if (sCR == oFila["t303_idnodo"].ToString())
                    //        sb.Append(" tipo ='P'");
                    //    else
                    //        sb.Append(" tipo ='N'");
                    //}
                    sb.Append("tipo='" + oFila["tipo"].ToString() + "' ");
                    sb.Append(" nodo ='" + Utilidades.escape(oFila["t303_denominacion"].ToString()) + "'");
                    sb.Append(" sexo ='" + oFila["t001_sexo"].ToString() + "'");
                    sb.Append(" baja ='" + oFila["baja"].ToString() + "'>");

                    //Icono
                    //sb.Append("<td style=\"border-right:''\"></td>");
                    sb.Append("<td></td>");
                    //profesional
                    //sb.Append("<td><nobr class='NBR W430' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + oFila["tecnico"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + ((int)oFila["t314_idusuario"]).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + oFila["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Empresa:</label>" + oFila["EMPRESA"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" >" + oFila["tecnico"].ToString() + "</nobr></td>");
                    sb.Append("<td><nobr class='NBR' style='noWrap:true; width:430px;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + oFila["tecnico"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + ((int)oFila["t314_idusuario"]).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + oFila["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" >" + oFila["tecnico"].ToString() + "</nobr></td>");
                    //Calendario
                    sb.Append("<td><nobr class='NBR' style='width:200px;'>" + oFila["Calendario"].ToString() + "</nobr></td>");
                    //Días laborables Calendario
                    if (sModeloCoste == "H")
                    {
                        sb.Append("<td style='text-align:right;'>" + oFila["HLCalendario"].ToString() + "</td>");
                    }
                    else
                    {
                        sb.Append("<td style='text-align:right;'>" + oFila["JLCalendario"].ToString() + "</td>");
                    }
                    //Jornadas económicas
                    sb.Append("<td style='text-align:right;'>" + double.Parse(oFila["mis_unidades"].ToString()).ToString("N") + "</td>");
                    //Jornadas económicas totales
                    //sb.Append("<td style=\"border-right:''\">" + double.Parse(oFila["tot_unidades"].ToString()).ToString("N") + "</td>");
                    sb.Append("<td style='text-align:right;'>" + double.Parse(oFila["tot_unidades"].ToString()).ToString("N") + "</td>");
                    sb.Append("</tr>");
                }
            }

            ds.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            sResul    = "OK@#@" + sb.ToString();
            sb.Length = 0; //Para liberar memoria
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener los consumos reportados.", ex);
        }

        return(sResul);
    }