private string ObtenerActividades(string sTipoBusqueda, string num_proy_tec, string num_fase, string strNomActividad)
    {
        string        sResul = "", sPT;
        int           nPT;
        SqlDataReader dr;

        try
        {
            StringBuilder strBuilder = new StringBuilder();

            sPT = num_proy_tec.Replace(".", "");
            nPT = int.Parse(sPT);
            strBuilder.Append("<table id='tblDatos' class='texto MA' style='width: 410px;'>");
            strBuilder.Append("<tbody>");

            if (num_fase == "" || num_fase == "-1")
            {
                dr = ACTIVIDADPSP.Catalogo(null, strNomActividad, nPT, null, 2, 0, sTipoBusqueda);
            }
            else
            {
                dr = ACTIVIDADPSP.Catalogo(null, strNomActividad, nPT, int.Parse(num_fase), 2, 0, sTipoBusqueda);
            }
            while (dr.Read())
            {
                strBuilder.Append("<tr id='" + dr["t335_idactividad"].ToString() + "' ");
                strBuilder.Append("codFase='" + dr["t334_idfase"].ToString() + "' ");
                strBuilder.Append("desFase='" + dr["t334_desfase"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)' >");
                strBuilder.Append("<td>" + dr["t335_desactividad"].ToString() + "</td>");
                strBuilder.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            strBuilder.Append("<tbody>");
            strBuilder.Append("</table>");

            sResul = "OK@#@" + strBuilder.ToString();
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener las actividades", ex);
        }
        return(sResul);
    }