Пример #1
0
    private string ObtenerVAEsDeNodos(string slNodos)
    {
        StringBuilder sbuilder = new StringBuilder();

        sbuilder.Append(" aVAEsNodo = new Array();\n");
        SqlDataReader dr = VCEC.CatalogoCorporativosByListaNodo(slNodos);
        int           i  = 0;

        while (dr.Read())
        {
            //sbuilder.Append("\taVAEsNodo[" + i.ToString() + "] = {bd:\"\"," +
            //                "idAE:\"" + dr["t345_idcec"].ToString() + "\"," +
            //                "idVAE:\"" + dr["t435_idvcec"].ToString() + "\"," +
            //                "idNodo:\"" + dr["t303_idnodo"].ToString() + "\"," +
            //                "nombre:\"" + Utilidades.escape(dr["t435_valor"].ToString()) + "\"};\n");
            sbuilder.Append("\taVAEsNodo[" + i.ToString() + "] = {bd:\"\"," +
                            "idAE:\"" + dr["t345_idcec"].ToString() + "\"," +
                            "idVAE:\"" + dr["t435_idvcec"].ToString() + "\"," +
                            "nombre:\"" + Utilidades.escape(dr["t435_valor"].ToString()) + "\"};\n");
            i++;
        }
        dr.Close();
        dr.Dispose();
        return(sbuilder.ToString());
    }
Пример #2
0
    private string ObtenerValoresAtributosEstadisticos()
    {
        StringBuilder sbuilder = new StringBuilder();
        byte          bEstado;

        sbuilder.Append(" aVAES = new Array();\n");
        SqlDataReader dr = VCEC.Catalogo(null, "", null, null, null, 5, 0);
        int           i  = 0;

        while (dr.Read())
        {
            if ((bool)dr["t435_estado"])
            {
                bEstado = 1;
            }
            else
            {
                bEstado = 0;
            }
            sbuilder.Append("\taVAES[" + i.ToString() + "] = {bd:\"\", " +
                            "idAE:\"" + dr["t345_idcec"].ToString() + "\"," +
                            "idVAE:\"" + dr["t435_idvcec"].ToString() + "\"," +
                            "nombre:\"" + Utilidades.escape(dr["t435_valor"].ToString()) + "\"," +
                            "estado:\"" + bEstado.ToString() + "\"," +
                            "orden:\"" + dr["t435_orden"].ToString() + "\"};\n");
            i++;
        }
        dr.Close();
        dr.Dispose();
        return(sbuilder.ToString());
    }
Пример #3
0
    protected string getDatosValor(int iCriterio, int iValor, bool bValorAsignado)
    {
        StringBuilder sb     = new StringBuilder();
        SqlDataReader dr     = null;
        int           indice = 0;

        try
        {
            dr = VCEC.Asociados_A_Nodos(iCriterio, iValor, bValorAsignado);

            sb.Append("<table id='tblDatos' class='texto MANO' style='width:800px;'>");
            sb.Append("<colgroup><col style='width:280px;' /><col style='width:280px;' /><col style='width:100px;' /><col style='width:140px;' /></colgroup>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                indice++;
                sb.Append("<tr id='" + indice + "' style='height:16px' onclick='ms(this)'>");
                sb.Append("<td style='padding-left:3px;'><nobr class='NBR W275'>" + dr["t303_denominacion"].ToString() + "</nobr></td>");
                sb.Append("<td><nobr class='NBR W275'>" + dr["t345_denominacion"].ToString() + "</nobr></td>");
                sb.Append("<td style='text-align:center'>" + dr["Obligatorio"].ToString() + "</td>");
                sb.Append("<td><nobr class='NBR W135'>" + dr["valor"].ToString() + "</nobr></td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");
            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            sErrores = Errores.mostrarError("Error al obtener los datos de CRs del valor del criterio económico seleccionado.", ex);
            return("Error@#@" + sErrores);
        }
    }
Пример #4
0
    protected string Grabar(string strDatos, string strDatosVAE, string sCEC, string sVCEC, string strNodos)
    {
        string sResul = "", sNuevosAEs = "", sNuevosVAEs = "", sTablaAct = "T341";
        bool   bEstado;
        int    idAE, idVAE, idNodo;

        string[] aKeysAE;
        string[] aKeysVAE;
        #region conexion
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccion(oConn);
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            #region AE
            int      idNuevoAE;
            string[] aAE = Regex.Split(strDatos, "///");
            foreach (string oAE in aAE)
            {
                if (oAE == "")
                {
                    continue;
                }
                string[] aValores = Regex.Split(oAE, "##");
                //0. Opcion BD. "I", "U", "D"
                //1. ID AE
                //2. Denominación
                //3. Estado
                //4. Orden
                bEstado = false;
                if (aValores[3] == "1")
                {
                    bEstado = true;
                }

                switch (aValores[0])
                {
                case "D":
                    CEC.Delete(tr, int.Parse(aValores[1]));
                    break;

                case "I":
                    idNuevoAE   = CEC.Insert(tr, Utilidades.unescape(aValores[2]), bEstado, int.Parse(aValores[4]));
                    sNuevosAEs += aValores[1] + "##" + idNuevoAE.ToString() + "@@";
                    break;

                case "U":
                    CEC.Update(tr, int.Parse(aValores[1]), Utilidades.unescape(aValores[2]), bEstado, int.Parse(aValores[4]));
                    break;
                }
            }
            #endregion
            aKeysAE   = Regex.Split(sNuevosAEs, "@@");
            sTablaAct = "T340";
            #region VAE
            int      idNuevoVAE;
            string[] aVAE = Regex.Split(strDatosVAE, "///");

            foreach (string oVAE in aVAE)
            {
                if (oVAE == "")
                {
                    break;
                }
                string[] aValoresVAE = Regex.Split(oVAE, "##");
                ///aValoresVAE[0] = opcionBD;
                ///aValoresVAE[1] = idAE;
                ///aValoresVAE[2] = idVAE;
                ///aValoresVAE[3] = Valor;
                ///aValoresVAE[4] = Orden;
                ///aValoresVAE[5] = Activo;
                idAE = int.Parse(aValoresVAE[1]);
                if (idAE < 0)
                {
                    idAE = flBuscarKeyAE(aValoresVAE[1], aKeysAE);
                }

                bool bEstadoVAE = false;
                if (aValoresVAE[5] == "1")
                {
                    bEstadoVAE = true;
                }

                switch (aValoresVAE[0])
                {
                case "I":
                    idNuevoVAE   = VCEC.Insert(tr, Utilidades.unescape(aValoresVAE[3]), bEstadoVAE, idAE, byte.Parse(aValoresVAE[4]));
                    sNuevosVAEs += aValoresVAE[2] + "##" + idNuevoVAE.ToString() + "@@";
                    break;

                case "U":
                    VCEC.Update(tr, int.Parse(aValoresVAE[2]), Utilidades.unescape(aValoresVAE[3]), bEstadoVAE, idAE, byte.Parse(aValoresVAE[4]));
                    break;

                case "D":
                    VCEC.Delete(tr, int.Parse(aValoresVAE[2]));
                    break;
                }
            }
            #endregion
            aKeysVAE  = Regex.Split(sNuevosVAEs, "@@");
            sTablaAct = "T345";
            #region CEC
            string[] aCEC = Regex.Split(sCEC, "///");
            foreach (string oCEC in aCEC)
            {
                if (oCEC != "")
                {
                    string[] aValores = Regex.Split(oCEC, "##");
                    //0. Opcion BD. "I", "U", "D"
                    //1. ID AE
                    //2. Obligatorio
                    //3. Nodo
                    idAE = int.Parse(aValores[1]);
                    if (idAE < 0)
                    {
                        idAE = flBuscarKeyAE(aValores[1], aKeysAE);
                    }

                    bEstado = false;
                    if (aValores[2] == "1")
                    {
                        bEstado = true;
                    }
                    switch (aValores[0])
                    {
                    case "D":
                        CECNODO.Delete(tr, idAE, int.Parse(aValores[3]));
                        break;

                    case "I":
                        if (CECNODO.Existe(tr, idAE, int.Parse(aValores[3])))
                        {
                            CECNODO.Update(tr, idAE, int.Parse(aValores[3]), bEstado);
                        }
                        else
                        {
                            CECNODO.Insert(tr, idAE, int.Parse(aValores[3]), bEstado);
                        }
                        break;

                    case "U":
                        CECNODO.Update(tr, idAE, int.Parse(aValores[3]), bEstado);
                        break;
                    }
                }
            }
            #endregion
            sTablaAct = "T435";
            #region VCEC
            string[] aNodo    = Regex.Split(strNodos, "///");
            string[] aVAENodo = Regex.Split(sVCEC, "///");

            foreach (string oNodo in aNodo)
            {
                if (oNodo == "")
                {
                    break;
                }
                idNodo = int.Parse(oNodo);
                foreach (string oVAENodo in aVAENodo)
                {
                    if (oVAENodo == "")
                    {
                        break;
                    }
                    string[] aValoresVAENodo = Regex.Split(oVAENodo, "##");
                    ///aValoresVAENodo[0] = opcionBD;
                    ///aValoresVAENodo[1] = idAE;
                    ///aValoresVAENodo[2] = idVAE;
                    idAE = int.Parse(aValoresVAENodo[1]);
                    if (idAE < 0)
                    {
                        idAE = flBuscarKeyAE(aValoresVAENodo[1], aKeysAE);
                    }

                    idVAE = int.Parse(aValoresVAENodo[2]);
                    if (idVAE < 0)
                    {
                        idVAE = flBuscarKeyAE(aValoresVAENodo[2], aKeysVAE);
                    }

                    switch (aValoresVAENodo[0])
                    {
                    case "I":
                    case "U":
                        if (!CECRESTRICCION.Existe(tr, idAE, idNodo, idVAE))
                        {
                            CECRESTRICCION.Insert(tr, idAE, idNodo, idVAE);
                        }
                        break;

                    case "D":
                        CECRESTRICCION.Delete(tr, idAE, idNodo, idVAE);
                        break;
                    }
                }
            }
            #endregion

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@" + sNuevosAEs + "@#@" + sNuevosVAEs;
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los criterios estadísticos.", ex) + "@#@" + sTablaAct;
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }

        return(sResul);
    }
    private string ObtenerTipoConcepto(string sTipoBusqueda, string sCadena)
    {
        string sResul   = "";
        string sTootTip = "";

        try
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            SqlDataReader             dr = null;

            switch (int.Parse(hdnIdTipo.Value))
            {
            case 1:             // Ambito
                break;

            case 2:             // Responsable de proyecto
                break;

            case 3:             // Naturaleza
                dr = NATURALEZA.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 4:             // Modelo de contratación
                dr = MODALIDADCONTRATO.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 5:             // Horizontal
                dr = HORIZONTAL.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 6:             // Sector
                dr = SECTOR.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 7:             // Segmento
                dr = SEGMENTO.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 8:             // Cliente
                dr = CLIENTE.SelectByNombre(sCadena, sTipoBusqueda, false, false, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 9:             // Contrato
                dr = CONTRATO.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 10:            // Cualificador de proyectos a nivel de NODO
                dr = CDP.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 11:            // Cualificador de proyectos a nivel de SUPERNODO1
                dr = CSN1P.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 12:            // Cualificador de proyectos a nivel de SUPERNODO2
                dr = CSN2P.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 13:            // Cualificador de proyectos a nivel de SUPERNODO3
                dr = CSN3P.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 14:            // Cualificador de proyectos a nivel de SUPERNODO4
                dr = CSN4P.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 17:            // Proveedores
                //dr = PROVEEDOR.Catalogo(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                dr = PROVEEDOR.SelectByNombre(null, sCadena, 2, 0, sTipoBusqueda, false);
                break;

            case 18:        // Centros de responsabilidad
                if (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion())
                {
                    dr = NODO.CatalogoAdministrador(sCadena, sTipoBusqueda);
                }
                else
                if (hdnCaso.Value == "1")
                {
                    dr = NODO.ObtenerNodosUsuarioEsRespDelegColab(null, (int)Session["UsuarioActual"], sCadena, sTipoBusqueda);
                }
                else
                {
                    dr = NODO.ObtenerNodosUsuarioSegunVisionProyectosECO(null, (int)Session["UsuarioActual"], false);
                }
                break;

            case 36:
                dr = NODO.CatalogoAdministrador(sCadena, sTipoBusqueda);
                break;

            case 22:            // Sociedades que facturan
                //dr = EMPRESA.Catalogo(null, "", "", null, null, null, "", "", null, 2, 0);
                dr = EMPRESA.Catalogo(null);
                break;

            case 23:            // Roles
                dr = ROL.Catalogo();
                break;

            case 25:            // Centro de trabajo
                dr = CENTROTRAB.Obtener();
                break;

            case 26:            // Oficina
                dr = OFICINA.Catalogo();
                break;

            case 34:            // Pais
                dr = SUPER.DAL.PAIS.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 35:            // Provincia
                dr = SUPER.DAL.PROVINCIA.CatalogoDenominacion(sCadena, sTipoBusqueda, int.Parse(Session["UsuarioActual"].ToString()));
                break;

            case 37:            // Organización comercial
                dr = SUPER.BLL.OrganizacionComercial.Catalogo(null, true);
                break;

            case 38:            // Soporte administrativo
                dr = SUPER.Capa_Negocio.SOPORTEADM.Catalogo();
                break;

            case 40:        // Criterios estadísticos económicos empresariales
                dr = CEC.Catalogo();
                break;

            case 41:        // Valores de criterios estadísticos económicos empresariales
                dr = VCEC.Catalogo();
                break;
            }

            sb.Append("<table id='tblDatos' class='texto MAM' style='WIDTH: 350px;'>" + (char)10);
            sb.Append("<colgroup><col style='width:350px;' /></colgroup>" + (char)10);
            sb.Append("<tbody>");

            while (dr.Read())
            {
                switch (int.Parse(hdnIdTipo.Value))
                {
                case 3:         // Naturalezas
                case 4:         // Modelo de contratación
                case 5:         // Horizontal
                case 6:         // Sector
                case 7:         // Segmento
                case 9:         // Contrato
                case 17:        // Proveedores
                case 23:        // Roles
                case 25:        // Centro de trabajo
                case 26:        // Oficina
                case 34:        // País
                case 35:        // Provincia
                case 40:        // Criterios estadísticos económicos empresariales
                case 41:        // Valores de criterios estadísticos económicos empresariales


                    sb.Append("<tr id='" + dr["IDENTIFICADOR"].ToString() + "' title='" + dr["DENOMINACION"].ToString() + "' ");
                    if (int.Parse(hdnIdTipo.Value) == 41)
                    {
                        sb.Append("ceec=" + dr["DENOMINACION"].ToString() + " ");
                    }
                    sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'>");
                    sb.Append("<td style='padding-left:5px;'><nobr class='NBR W320'>" + dr["DENOMINACION"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                    break;

                case 8:         // Cliente
                    //sb.Append("<tr id='" + dr["t302_idcliente"].ToString() + "' ");
                    //sb.Append("onclick='mmse(this)' ondblclick='insertarItem(this)' onmousedown='DD(this)' style='height:20px;'>");
                    //sb.Append("<td>" + dr["t302_denominacion"].ToString() + "</td>");
                    //sb.Append("</tr>" + (char)10);

                    sb.Append("<tr id='" + dr["t302_idcliente"].ToString() + "' title='" + dr["t302_denominacion"].ToString() + "' ");

                    if ((bool)dr["t302_estado"])
                    {
                        sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'");
                    }
                    else
                    {
                        sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;color:gray;'");
                    }
                    //else sb.Append(" onmousedown='eventos(this);' style='height:20px;color:gray;'");

                    sb.Append("><td><img src='../../../../images/img" + dr["tipo"].ToString() + ".gif' ");
                    if (dr["tipo"].ToString() == "M")
                    {
                        sb.Append("style='margin-right:5px;'");
                    }
                    else
                    {
                        sb.Append("style='margin-left:15px;margin-right:5px;'");
                    }
                    sb.Append("><nobr class='NBR W310'>" + dr["t302_denominacion"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);

                    break;

                case 10:        // Cualificador de proyectos a nivel de NODO
                case 11:        // Cualificador de proyectos a nivel de SUPERNODO1
                case 12:        // Cualificador de proyectos a nivel de SUPERNODO2
                case 13:        // Cualificador de proyectos a nivel de SUPERNODO3
                case 14:        // Cualificador de proyectos a nivel de SUPERNODO4
                    sTootTip = "";
                    if (Utilidades.EstructuraActiva("SN4") && int.Parse(hdnIdTipo.Value) <= 14)
                    {
                        sTootTip = "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO4) + ":</label> " + dr["t394_denominacion"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN3") && int.Parse(hdnIdTipo.Value) <= 13)
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO3) + ":</label> " + dr["t393_denominacion"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN2") && int.Parse(hdnIdTipo.Value) <= 12)
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO2) + ":</label> " + dr["t392_denominacion"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN1") && int.Parse(hdnIdTipo.Value) <= 11)
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO1) + ":</label> " + dr["t391_denominacion"].ToString() + "<br>";
                    }
                    if (int.Parse(hdnIdTipo.Value) <= 10)
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label> " + dr["t303_denominacion"].ToString();
                    }

                    sb.Append("<tr id='" + dr["IDENTIFICADOR"].ToString() + "' title='" + dr["DENOMINACION"].ToString() + "' ");
                    sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' ");
                    sb.Append("style='height:20px;noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../images/info.gif' style='vertical-align:middle'>  Estructura] body=[" + sTootTip + "] hideselects=[off]\">");

                    sb.Append("<td><nobr class='NBR W320'>" + dr["DENOMINACION"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                    break;

                case 18:        // Centros de responsabilidad
                case 36:
                    sTootTip = "";
                    if (Utilidades.EstructuraActiva("SN4"))
                    {
                        sTootTip = "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO4) + ":</label> " + dr["DES_SN4"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN3"))
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO3) + ":</label> " + dr["DES_SN3"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN2"))
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO2) + ":</label> " + dr["DES_SN2"].ToString() + "<br>";
                    }
                    if (Utilidades.EstructuraActiva("SN1"))
                    {
                        sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO1) + ":</label> " + dr["DES_SN1"].ToString() + "<br>";
                    }
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label> " + dr["DENOMINACION"].ToString();

                    sb.Append("<tr id='" + dr["IDENTIFICADOR"].ToString() + "' title='" + dr["DENOMINACION"].ToString() + "' ");
                    sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' ");
                    sb.Append("style='height:20px;noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../images/info.gif' style='vertical-align:middle'>  Estructura] body=[" + sTootTip + "] hideselects=[off]\">");

                    sb.Append("<td><nobr class='NBR W320'>" + dr["DENOMINACION"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                    break;

                case 22:        // Empresas que facturan
                    if (bool.Parse(dr["t313_estado"].ToString()))
                    {
                        sb.Append("<tr id='" + dr["t313_idempresa"].ToString() + "' title='" + dr["t313_denominacion"].ToString() + "' ");
                        sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'>");
                        sb.Append("<td><nobr class='NBR W320'>" + dr["t313_denominacion"].ToString() + "</nobr></td>");
                    }
                    else
                    {
                        sb.Append("<tr id='" + dr["t313_idempresa"].ToString() + "' title='" + dr["t313_denominacion"].ToString() + "' ");
                        sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'>");
                        sb.Append("<td style='color:gray'><nobr class='NBR W320'>" + dr["t313_denominacion"].ToString() + "</nobr></td>");
                    }

                    sb.Append("</tr>" + (char)10);
                    break;

                case 37:        // Organización comercial
                    sb.Append("<tr id='" + dr["ta212_idorganizacioncomercial"].ToString() + "' title='" + dr["ta212_denominacion"].ToString() + "' ");
                    if (int.Parse(hdnIdTipo.Value) == 41)
                    {
                        sb.Append("ceec=" + dr["ta212_denominacion"].ToString() + " ");
                    }
                    sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'>");
                    sb.Append("<td style='padding-left:5px;'><nobr class='NBR W320'>" + dr["ta212_denominacion"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                    break;

                case 38:        // Soporte administrativo
                    sb.Append("<tr id='" + dr["NUM_EMPLEADO"].ToString() + "' title='" + dr["profesional"].ToString() + "' ");
                    sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' style='height:20px;'>");
                    sb.Append("<td style='padding-left:5px;'><nobr class='NBR W320'>" + dr["profesional"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                    break;
                }
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            sResul = "OK@#@" + sb.ToString();
        }
        catch (System.Exception objError)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al leer : " + sTitulo, objError);
        }
        return(sResul);
    }