private string Grabar(string sIdEstructura, string sDenominacion, string sObligatorio, string strDatos)
    {
        string         sResul = "", sValoresInsertados = "";
        SqlConnection  oConn = null;
        SqlTransaction tr;

        #region abrir conexión y transacción
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccionSerializable(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            //Datos básicos
            switch (nNivel)
            {
            case "0":
                NODO.Update(tr,
                            int.Parse(sIdEstructura),
                            Utilidades.unescape(sDenominacion),
                            (sObligatorio == "1") ? true : false
                            );
                break;

            case "1":
                SUPERNODO1.Update(tr,
                                  int.Parse(sIdEstructura),
                                  Utilidades.unescape(sDenominacion),
                                  (sObligatorio == "1") ? true : false
                                  );
                break;

            case "2":
                SUPERNODO2.Update(tr,
                                  int.Parse(sIdEstructura),
                                  Utilidades.unescape(sDenominacion),
                                  (sObligatorio == "1") ? true : false
                                  );
                break;

            case "3":
                SUPERNODO3.Update(tr,
                                  int.Parse(sIdEstructura),
                                  Utilidades.unescape(sDenominacion),
                                  (sObligatorio == "1") ? true : false
                                  );
                break;

            case "4":
                SUPERNODO4.Update(tr,
                                  int.Parse(sIdEstructura),
                                  Utilidades.unescape(sDenominacion),
                                  (sObligatorio == "1") ? true : false
                                  );
                break;
            }

            cargarEstructura();

            #region Estructura
            string[] aDatos = Regex.Split(strDatos, "///");

            foreach (string oEstructura in aDatos)
            {
                if (oEstructura == "")
                {
                    continue;
                }
                string[] aEstructura = Regex.Split(oEstructura, "##");
                ///aEstructura[0] = Opcion BD. "I", "U", "D"
                ///aEstructura[1] = ID Estructura
                ///aEstructura[2] = Orden

                switch (aEstructura[0])
                {
                case "U":
                    switch (nNivel)
                    {
                    case "0":
                        CDP.UpdateSimple(tr, int.Parse(aEstructura[1]), byte.Parse(aEstructura[2]));
                        break;

                    case "1":
                        CSN1P.UpdateSimple(tr, int.Parse(aEstructura[1]), byte.Parse(aEstructura[2]));
                        break;

                    case "2":
                        CSN2P.UpdateSimple(tr, int.Parse(aEstructura[1]), byte.Parse(aEstructura[2]));
                        break;

                    case "3":
                        CSN3P.UpdateSimple(tr, int.Parse(aEstructura[1]), byte.Parse(aEstructura[2]));
                        break;

                    case "4":
                        CSN4P.UpdateSimple(tr, int.Parse(aEstructura[1]), byte.Parse(aEstructura[2]));
                        break;
                    }
                    break;

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

                    case "1":
                        CSN1P.Delete(tr, int.Parse(aEstructura[1]));
                        break;

                    case "2":
                        CSN2P.Delete(tr, int.Parse(aEstructura[1]));
                        break;

                    case "3":
                        CSN3P.Delete(tr, int.Parse(aEstructura[1]));
                        break;

                    case "4":
                        CSN4P.Delete(tr, int.Parse(aEstructura[1]));
                        break;
                    }
                    break;
                }
            }
            #endregion

            Conexion.CommitTransaccion(tr);

            sResul = "OK@#@" + sValoresInsertados;
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);

            if (Errores.EsErrorIntegridad(ex))
            {
                sResul = "Error@#@Operación rechazada.\n\n" + Errores.mostrarError("Error al grabar los valores", ex, false);                                //ex.Message;
            }
            else
            {
                sResul = "Error@#@" + Errores.mostrarError("Error al grabar los valores", ex, false);
            }
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemplo n.º 2
0
    private string Grabar(string strDatosBasicos, string strFiguras)
    {
        string sResul = "";
        int    nID    = -1;

        string[] aDatosBasicos = null;

        #region abrir conexión y transacción
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccionSerializable(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            #region Datos Generales
            if (strDatosBasicos != "")//No se ha modificado nada de la pestaña general
            {
                aDatosBasicos = Regex.Split(strDatosBasicos, "##");
                ///aDatosBasicos[0] = ID
                ///aDatosBasicos[1] = Denominacion
                ///aDatosBasicos[2] = IDResponsable
                ///aDatosBasicos[3] = Activo
                ///aDatosBasicos[4] = Orden
                ///aDatosBasicos[5] = IdEstructura

                if (aDatosBasicos[0] == "0") //insert
                {
                    switch (sNivel)
                    {
                    case "0":
                        nID = CDP.Insert(tr,
                                         Utilidades.unescape(aDatosBasicos[1]),
                                         int.Parse(aDatosBasicos[5]),
                                         int.Parse(aDatosBasicos[2]),
                                         (aDatosBasicos[3] == "1") ? true : false,
                                         byte.Parse(aDatosBasicos[4]));
                        break;

                    case "1":
                        nID = CSN1P.Insert(tr,
                                           Utilidades.unescape(aDatosBasicos[1]),
                                           int.Parse(aDatosBasicos[5]),
                                           int.Parse(aDatosBasicos[2]),
                                           (aDatosBasicos[3] == "1") ? true : false,
                                           byte.Parse(aDatosBasicos[4]));
                        break;

                    case "2":
                        nID = CSN2P.Insert(tr,
                                           Utilidades.unescape(aDatosBasicos[1]),
                                           int.Parse(aDatosBasicos[5]),
                                           int.Parse(aDatosBasicos[2]),
                                           (aDatosBasicos[3] == "1") ? true : false,
                                           byte.Parse(aDatosBasicos[4]));
                        break;

                    case "3":
                        nID = CSN3P.Insert(tr,
                                           Utilidades.unescape(aDatosBasicos[1]),
                                           int.Parse(aDatosBasicos[5]),
                                           int.Parse(aDatosBasicos[2]),
                                           (aDatosBasicos[3] == "1") ? true : false,
                                           byte.Parse(aDatosBasicos[4]));
                        break;

                    case "4":
                        nID = CSN4P.Insert(tr,
                                           Utilidades.unescape(aDatosBasicos[1]),
                                           int.Parse(aDatosBasicos[5]),
                                           int.Parse(aDatosBasicos[2]),
                                           (aDatosBasicos[3] == "1") ? true : false,
                                           byte.Parse(aDatosBasicos[4]));
                        break;
                    }
                }
                else //update
                {
                    nID = int.Parse(aDatosBasicos[0]);
                    switch (sNivel)
                    {
                    case "0":
                        CDP.Update(tr,
                                   nID,
                                   Utilidades.unescape(aDatosBasicos[1]),
                                   int.Parse(aDatosBasicos[5]),
                                   int.Parse(aDatosBasicos[2]),
                                   (aDatosBasicos[3] == "1") ? true : false,
                                   byte.Parse(aDatosBasicos[4]));
                        break;

                    case "1":
                        CSN1P.Update(tr,
                                     nID,
                                     Utilidades.unescape(aDatosBasicos[1]),
                                     int.Parse(aDatosBasicos[5]),
                                     int.Parse(aDatosBasicos[2]),
                                     (aDatosBasicos[3] == "1") ? true : false,
                                     byte.Parse(aDatosBasicos[4]));
                        break;

                    case "2":
                        CSN2P.Update(tr,
                                     nID,
                                     Utilidades.unescape(aDatosBasicos[1]),
                                     int.Parse(aDatosBasicos[5]),
                                     int.Parse(aDatosBasicos[2]),
                                     (aDatosBasicos[3] == "1") ? true : false,
                                     byte.Parse(aDatosBasicos[4]));
                        break;

                    case "3":
                        CSN3P.Update(tr,
                                     nID,
                                     Utilidades.unescape(aDatosBasicos[1]),
                                     int.Parse(aDatosBasicos[5]),
                                     int.Parse(aDatosBasicos[2]),
                                     (aDatosBasicos[3] == "1") ? true : false,
                                     byte.Parse(aDatosBasicos[4]));
                        break;

                    case "4":
                        CSN4P.Update(tr,
                                     nID,
                                     Utilidades.unescape(aDatosBasicos[1]),
                                     int.Parse(aDatosBasicos[5]),
                                     int.Parse(aDatosBasicos[2]),
                                     (aDatosBasicos[3] == "1") ? true : false,
                                     byte.Parse(aDatosBasicos[4]));
                        break;
                    }
                }
            }

            #endregion

            #region Datos Figuras
            if (strFiguras != "")//No se ha modificado nada de la pestaña de Figuras
            {
                string[] aUsuarios = Regex.Split(strFiguras, "///");
                foreach (string oUsuario in aUsuarios)
                {
                    if (oUsuario == "")
                    {
                        continue;
                    }
                    string[] aFig = Regex.Split(oUsuario, "##");
                    ///aFig[0] = bd
                    ///aFig[1] = idUsuario
                    ///aFig[2] = Figuras

                    switch (sNivel)
                    {
                    case "0":
                        if (aFig[0] == "D")
                        {
                            FIGURASCDP.DeleteUsuario(tr, nID, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                //FIGURASCDP.Insert(tr, nID, int.Parse(aFig[1]), oFigura);
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                if (aFig2[0] == "D")
                                {
                                    FIGURASCDP.Delete(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    FIGURASCDP.Insert(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                            }
                        }
                        break;

                    case "1":
                        if (aFig[0] == "D")
                        {
                            FIGURASCSN1P.DeleteUsuario(tr, nID, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                //FIGURASCSN1P.Insert(tr, nID, int.Parse(aFig[1]), oFigura);
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                if (aFig2[0] == "D")
                                {
                                    FIGURASCSN1P.Delete(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    FIGURASCSN1P.Insert(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                            }
                        }
                        break;

                    case "2":
                        if (aFig[0] == "D")
                        {
                            FIGURASCSN2P.DeleteUsuario(tr, nID, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                //FIGURASCSN2P.Insert(tr, nID, int.Parse(aFig[1]), oFigura);
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                if (aFig2[0] == "D")
                                {
                                    FIGURASCSN2P.Delete(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    FIGURASCSN2P.Insert(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                            }
                        }
                        break;

                    case "3":
                        if (aFig[0] == "D")
                        {
                            FIGURASCSN3P.DeleteUsuario(tr, nID, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                //FIGURASCSN3P.Insert(tr, nID, int.Parse(aFig[1]), oFigura);
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                if (aFig2[0] == "D")
                                {
                                    FIGURASCSN3P.Delete(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    FIGURASCSN3P.Insert(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                            }
                        }
                        break;

                    case "4":
                        if (aFig[0] == "D")
                        {
                            FIGURASCSN4P.DeleteUsuario(tr, nID, int.Parse(aFig[1]));
                        }
                        else
                        {
                            string[] aFiguras = Regex.Split(aFig[2], ",");
                            foreach (string oFigura in aFiguras)
                            {
                                if (oFigura == "")
                                {
                                    continue;
                                }
                                //FIGURASCSN4P.Insert(tr, nID, int.Parse(aFig[1]), oFigura);
                                string[] aFig2 = Regex.Split(oFigura, "@");
                                ///aFig2[0] = bd
                                ///aFig2[1] = Figura
                                if (aFig2[0] == "D")
                                {
                                    FIGURASCSN4P.Delete(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                                else
                                {
                                    FIGURASCSN4P.Insert(tr, nID, int.Parse(aFig[1]), aFig2[1]);
                                }
                            }
                        }
                        break;
                    }
                }
            }

            #endregion

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@" + nID.ToString("#,###");
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos del cualificador", ex, false);
        }
        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);
    }
Exemplo n.º 4
0
    private void CargarDatosCualificador()
    {
        switch (sNivel)
        {
        case "0":
            CDP  oCDP  = CDP.Obtener(null, nCualificador);
            NODO oNodo = NODO.ObtenerNodo(null, oCDP.t303_idnodo);
            hdnID.Value            = oCDP.t476_idcnp.ToString();
            txtDenominacion.Text   = oCDP.t476_denominacion;
            lblDenominacion.Text   = oNodo.t303_denominacion;
            hdnIDResponsable.Text  = oCDP.t314_idusuario_responsable.ToString();
            txtDesResponsable.Text = oCDP.DesResponsable;
            if ((bool)oCDP.t476_activo)
            {
                chkActivo.Checked = true;
            }
            else
            {
                chkActivo.Checked = false;
            }
            txtOrden.Text = oCDP.t476_orden.ToString();
            break;

        case "1":
            CSN1P      oCSN1P      = CSN1P.Select(null, nCualificador);
            SUPERNODO1 oSUPERNODO1 = SUPERNODO1.Obtener(null, oCSN1P.t391_idsupernodo1);

            hdnID.Value            = oCSN1P.t485_idcsn1p.ToString();
            txtDenominacion.Text   = oCSN1P.t485_denominacion;
            lblDenominacion.Text   = oSUPERNODO1.t391_denominacion;
            hdnIDResponsable.Text  = oCSN1P.t314_idusuario_responsable.ToString();
            txtDesResponsable.Text = oCSN1P.DesResponsable;
            if ((bool)oCSN1P.t485_activo)
            {
                chkActivo.Checked = true;
            }
            else
            {
                chkActivo.Checked = false;
            }
            txtOrden.Text = oCSN1P.t485_orden.ToString();
            break;

        case "2":
            CSN2P      oCSN2P      = CSN2P.Select(null, nCualificador);
            SUPERNODO2 oSUPERNODO2 = SUPERNODO2.Obtener(null, oCSN2P.t392_idsupernodo2);

            hdnID.Value            = oCSN2P.t487_idcsn2p.ToString();
            txtDenominacion.Text   = oCSN2P.t487_denominacion;
            lblDenominacion.Text   = oSUPERNODO2.t392_denominacion;
            hdnIDResponsable.Text  = oCSN2P.t314_idusuario_responsable.ToString();
            txtDesResponsable.Text = oCSN2P.DesResponsable;
            if ((bool)oCSN2P.t487_activo)
            {
                chkActivo.Checked = true;
            }
            else
            {
                chkActivo.Checked = false;
            }
            txtOrden.Text = oCSN2P.t487_orden.ToString();
            break;

        case "3":
            CSN3P      oCSN3P      = CSN3P.Select(null, nCualificador);
            SUPERNODO3 oSUPERNODO3 = SUPERNODO3.Obtener(null, oCSN3P.t393_idsupernodo3);

            hdnID.Value            = oCSN3P.t489_idcsn3p.ToString();
            txtDenominacion.Text   = oCSN3P.t489_denominacion;
            lblDenominacion.Text   = oSUPERNODO3.t393_denominacion;
            hdnIDResponsable.Text  = oCSN3P.t314_idusuario_responsable.ToString();
            txtDesResponsable.Text = oCSN3P.DesResponsable;
            if ((bool)oCSN3P.t489_activo)
            {
                chkActivo.Checked = true;
            }
            else
            {
                chkActivo.Checked = false;
            }
            txtOrden.Text = oCSN3P.t489_orden.ToString();
            break;

        case "4":
            CSN4P      oCSN4P      = CSN4P.Select(null, nCualificador);
            SUPERNODO4 oSUPERNODO4 = SUPERNODO4.Obtener(null, oCSN4P.t394_idsupernodo4);

            hdnID.Value            = oCSN4P.t491_idcsn4p.ToString();
            txtDenominacion.Text   = oCSN4P.t491_denominacion;
            lblDenominacion.Text   = oSUPERNODO4.t394_denominacion;
            hdnIDResponsable.Text  = oCSN4P.t314_idusuario_responsable.ToString();
            txtDesResponsable.Text = oCSN4P.DesResponsable;
            if ((bool)oCSN4P.t491_activo)
            {
                chkActivo.Checked = true;
            }
            else
            {
                chkActivo.Checked = false;
            }
            txtOrden.Text = oCSN4P.t491_orden.ToString();
            break;
        }
        bool bAdmin = SUPER.Capa_Negocio.Utilidades.EsAdminProduccion();

        if (((int)Session["UsuarioActual"] != int.Parse(hdnIDResponsable.Text)) && !bAdmin && Request.QueryString["edicion"].ToString() == "N")
        {
            tsPestanas.SelectedIndex     = 1;
            tsPestanas.Items[0].Disabled = true;
        }
    }