private string cargarNodos(int nAnno)
    {
        try
        {
            StringBuilder sb       = new StringBuilder();
            SqlDataReader dr       = NODO.CatalogoObraEnCurso(nAnno);
            string        sTootTip = "";

            sb.Append("<table id='tblNodos' class='texto MANO' style='width: 600px;'>");
            sb.Append("<colgroup><col style='width:50px;' /><col style='width:70px;' /><col style='width:400px;' /><col style='width:80px;' /></colgroup>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                sTootTip = "";
                if (Utilidades.EstructuraActiva("SN4"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO4) + ":</label> " + dr["t394_denominacion"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN3"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO3) + ":</label> " + dr["t393_denominacion"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN2"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO2) + ":</label> " + dr["t392_denominacion"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN1"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO1) + ":</label> " + dr["t391_denominacion"].ToString();
                }

                sb.Append("<tr id='" + dr["t303_idnodo"].ToString() + "' pocar=" + dr["num_proy_con_obra_en_curso"].ToString() + " style='height:20px;'>");
                sb.Append("<td align='center'><input type='checkbox' class='check' onclick='setEstadistica()'></td>");
                sb.Append("<td style='text-align:right; padding-right:3px'>" + dr["t303_idnodo"].ToString() + "</td>");
                sb.Append("<td style='padding-left:8px;'><nobr class='NBR W340' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../images/info.gif' style='vertical-align:middle'>  Estructura] body=[" + sTootTip + "] hideselects=[off]\">" + dr["t303_denominacion"].ToString() + "</nobr></td>");
                if ((int)dr["num_proy_con_obra_en_curso"] > 0)
                {
                    sb.Append("<td style='padding-right:5px;text-align:center' class='MA' ondblclick='getPOC(this);'>" + dr["num_proy_con_obra_en_curso"].ToString() + "</td>");
                }
                else
                {
                    sb.Append("<td style='padding-right:5px;text-align:center'></td>");
                }

                //sb.Append("<td style='text-align:right; padding-right:2px;'>" + int.Parse(dr["num_proy_con_obra_en_curso"].ToString()).ToString("#,###") + "</td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener los nodos.", ex));
        }
    }