private string Grabar(string sCadena)
    {//En el parametro de entrada tenemos una lista de codigos de personas separados por comas
        string         sResul = "";
        int            iCodCR;
        SqlConnection  oConn = null;
        SqlTransaction tr    = null;

        try
        {
            //Recojo el código de CR
            iCodCR = 65; // int.Parse(Session["NodoActivo"].ToString());
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
                return(sResul);
            }

            //Borrar los integrantes existentes
            //OfiTec.BorrarIntegrantes(iCodCR);
            OFICINATECNICA.DeleteByT303_idnodo(tr, iCodCR);

            if (sCadena != "")
            {//Con la cadena generamos una lista y la recorremos para grabar cada elemento
                string[] aProf = Regex.Split(sCadena, @",");

                for (int i = 0; i < aProf.Length - 1; i++)
                {
                    OFICINATECNICA.Insert(tr, iCodCR, int.Parse(aProf[i]));
//                    OfiTec.InsertarIntegrante(tr, iCodCR, int.Parse(sCad));
                }//for
            }
            //Cierro transaccion
            Conexion.CommitTransaccion(tr);
            //sCad = OfiTec.ObtenerIntegrantes(iCodCR);
            //sResul = "OK@#@" + strTablaHTMLIntegrantes;
            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar la lista de integrantes", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
    private string obtenerIntegrantesOTNodo(int nNodo)
    {
        StringBuilder sb = new StringBuilder();
        int           i  = 0;
        SqlDataReader dr = OFICINATECNICA.Catalogo(nNodo, null, 3, 0);

        sb.Append("<table id='tblOpciones2' class='texto' style='WIDTH: 390px;' cellSpacing='0' border='0'>" + (char)10);
        sb.Append("<colgroup><col style='width:10px;' /><col style='width:380px;padding-left:5px' /></colgroup>" + (char)10);
        sb.Append("<tbody id='tbodyDestino'>" + (char)10);
        while (dr.Read())
        {
            if (i % 2 == 0)
            {
                sb.Append("<tr class='FA ");
            }
            else
            {
                sb.Append("<tr class='FB ");
            }
            i++;

            sb.Append("MANO' id='" + dr["t314_idusuario"].ToString() + "' onClick='mm(this)' onmousedown='DD(this)'>");
            sb.Append("<td><img src='../../../images/imgFN.gif'></td>");
            sb.Append("<td><label class='texto NBR W320'");// ondragstart='FromCtrl=this' ondragover='nIndiceDD=this.rowIndex;fnClone(this);'
            if (dr["Profesional"].ToString().Length > 80)
            {
                sb.Append(" title='" + dr["Profesional"] + "'");
            }

            sb.Append("><NOBR>" + dr["Profesional"] + "</NOBR></label></td></tr>" + (char)10);
        }
        dr.Close();
        dr.Dispose();
        sb.Append("</tbody>" + (char)10);
        sb.Append("</table>" + (char)10);

        return(sb.ToString());
    }