protected void Page_Load(object sender, EventArgs e)
    {
        //int nPSN = 0;
        string script1 = "";

        //string script1 = "IB.vars.idficepi = '" + Session["IDFICEPI_PC_ACTUAL"] + "';";
        //script1 += "IB.vars.codUsu = '" + Session["NUM_EMPLEADO_IAP"].ToString() + "';";
        //script1 += "IB.vars.bLectura = false;";

        this.Head.PreCss = Session["strServer"].ToString() + "Capa_Presentacion/IAP30/css/IAP30.css";

        Hashtable ht    = Utils.ParseQuerystring(Request.QueryString.ToString());
        string    sIdPT = ht["nPT"].ToString();

        if (sIdPT != "")
        {
            script1 += "IB.vars.nPT = '" + sIdPT + "';";
            Models.ProyectoTecnico oProy = ponerDatosPT(sIdPT);
            script1 += "IB.vars.nPSN = '" + oProy.t305_idproyectosubnodo.ToString() + "';";
            script1 += "IB.vars.hdnAcceso = '" + oProy.t305_accesobitacora_pst + "';";
        }
        else
        {
            script1 += "IB.vars.nPT = '';IB.vars.hdnAcceso = 'X';";
        }
        try
        {
            script1 += "IB.vars.origen = '" + ht["ori"].ToString() + "';";
        }
        catch
        {
            script1 += "IB.vars.origen = '';";
        }
        try
        {
            script1 += "IB.vars.origen2 = '" + ht["ori2"].ToString() + "';";
        }
        catch
        {
            script1 += "IB.vars.origen2 = '';";
        }
        try
        {
            script1 += "IB.vars.idAsunto = '" + ht["idAsunto"].ToString() + "';";
        }
        catch { script1 += "IB.vars.idAsunto = '';"; }
        try
        {
            script1 += "IB.vars.idAccion = '" + ht["idAccion"].ToString() + "';";
        }
        catch { script1 += "IB.vars.idAccion = '';"; }

        //script1 += "IB.vars.qs = '" + Request.QueryString.ToString() + "';";
        script1 += "IB.vars.qs = '" + Utils.decodpar(Request.QueryString.ToString()) + "';";
        Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", script1, true);
    }
    private Models.ProyectoTecnico ponerDatosPT(string sIdPT)
    {
        BLL.ProyectoTecnico    Proy  = new BLL.ProyectoTecnico();
        Models.ProyectoTecnico oProy = new Models.ProyectoTecnico();
        oProy.t305_accesobitacora_pst = "X";
        try
        {
            int idPT = int.Parse(sIdPT);

            oProy = Proy.Select(idPT);
            this.idProyecto.Value   = oProy.num_proyecto.ToString("#,###");
            this.desProyecto.Value  = oProy.nom_proyecto;
            this.idPT.Value         = idPT.ToString("#,###");
            this.desProyectoT.Value = oProy.t331_despt;
            #region Comprobación de permiso de acceso. Lo comento para solo mirar el permiso a nivel de PT
            //if (oProy.t305_accesobitacora_pst != "X")
            //{
            //    if (oProy.t331_acceso_iap != "X")
            //    {
            //        if (oProy.t301_estado == "C" || oProy.t301_estado == "H")
            //            this.hdnAcceso.Value = "L";
            //        else
            //        {
            //            if (oProy.t305_accesobitacora_pst == "L")
            //                this.hdnAcceso.Value = "L";
            //            else
            //                this.hdnAcceso.Value = oProy.t331_acceso_iap;
            //        }
            //    }
            //    else
            //        throw new Exception("El proyecto técnico no permite el acceso a bitácora desde IAP.");
            //}
            //else
            //    throw new Exception("El proyecto económico no permite el acceso a bitácora desde IAP.");
            #endregion
            if (oProy.t331_acceso_iap != "X")
            {
                if (oProy.t301_estado == "C" || oProy.t301_estado == "H")
                {
                    oProy.t305_accesobitacora_pst = "L";
                }
                else
                {
                    oProy.t305_accesobitacora_pst = oProy.t331_acceso_iap;
                }
            }
            else
            {
                throw new Exception("El proyecto técnico no permite el acceso a bitácora desde IAP.");
            }
        }
        catch (Exception ex)
        {
            LogError.LogearError("Parámetros incorrectos en la carga de la pantalla", ex);

            string script2 = "IB.vars['error'] = 'Parámetros incorrectos en la carga de la pantalla';";
            Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script2", script2, true);
        }
        finally
        {
            Proy.Dispose();
        }
        return(oProy);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Head.PreCss = Session["strServer"].ToString() + "Capa_Presentacion/IAP30/css/IAP30.css";
        //Recogida de parámetros y volcado en IB.vars

        string sEstadoProy = "";

        DBConn DBConn = new DBConn();

        IB.sqldblib.SqlServerSP cDblib = DBConn.dblibclass;

        BLL.NodoPT            oNodoPT_BLL   = new BLL.NodoPT(cDblib);
        BLL.ProyectoEconomico oEstadoPE_BLL = new BLL.ProyectoEconomico(cDblib);
        BLL.ProyectoTecnico   oPT_BLL       = new BLL.ProyectoTecnico(cDblib);

        try
        {
            string sIdUser = Session["NUM_EMPLEADO_IAP"].ToString();
            //sNodo = SUPER.Capa_Negocio.Estructura.getDefCorta(SUPER.Capa_Negocio.Estructura.sTipoElem.NODO);

            string    script1 = "IB.vars.codUsu = '" + sIdUser + "';";
            Hashtable ht      = Utils.ParseQuerystring(Request.QueryString.ToString());

            if (ht["idAsunto"].ToString() != "")
            {
                script1 += "IB.vars.idAsunto = '" + ht["idAsunto"].ToString() + "';";
            }
            else
            {
                script1 += "IB.vars.idAsunto = '';";
            }

            if (ht["p"].ToString() != "")
            {
                script1 += "IB.vars.permiso = '" + ht["p"].ToString() + "';";
            }
            else
            {
                script1 += "IB.vars.permiso = '';";
            }

            if (ht["ori"] != null && ht["ori"].ToString() != "")
            {
                script1 += "IB.vars.origen = '" + ht["ori"].ToString() + "';";
            }
            else
            {
                script1 += "IB.vars.origen = '';";
            }


            if (ht["nPT"] != null && ht["nPT"].ToString() != "")
            {
                script1 += "IB.vars.nPT = '" + ht["nPT"].ToString() + "';";

                // Obtener el nodo del proyecto técnico
                Models.NodoPT oNodoPT = new Models.NodoPT();

                oNodoPT  = oNodoPT_BLL.Select(int.Parse(ht["nPT"].ToString()));
                script1 += "IB.vars.idNodo = '" + oNodoPT.t303_idnodo + "';";

                Models.ProyectoTecnico oPT = new Models.ProyectoTecnico();
                oPT         = oPT_BLL.Select(int.Parse(ht["nPT"].ToString()));
                script1    += "IB.vars.nPE = '" + oPT.num_proyecto + "';";
                script1    += "IB.vars.estadoProyecto = '" + oPT.t301_estado + "';";
                script1    += "IB.vars.desPE = '" + oPT.nom_proyecto + "';";
                script1    += "IB.vars.nPSN = '" + oPT.t305_idproyectosubnodo.ToString() + "';";
                sEstadoProy = oPT.t301_estado;
            }
            else
            {
                script1 += "IB.vars.nPT = '';";
                script1 += "IB.vars.idNodo = '';";
                if (ht["nPE"] != null && ht["nPE"].ToString() != "")
                {
                    script1 += "IB.vars.nPE = '" + ht["nPE"].ToString() + "';";
                    // Obtener el estado del proyecto económico
                    Models.ProyectoEconomico oEstadoPE = new Models.ProyectoEconomico();
                    oEstadoPE   = oEstadoPE_BLL.Select(int.Parse(ht["nPE"].ToString()));
                    script1    += "IB.vars.estadoProyecto = '" + oEstadoPE.t301_estado + "';";
                    sEstadoProy = oEstadoPE.t301_estado;
                }
                else
                {
                    script1 += "IB.vars.nPE = '';";
                    script1 += "IB.vars.estadoProyecto = '';";
                }
                if (ht["desPE"] != null && ht["desPE"].ToString() != "")
                {
                    script1 += "IB.vars.desPE = '" + ht["desPE"].ToString() + "';";
                }
                else
                {
                    script1 += "IB.vars.desPE = '';";
                }
                if (ht["nPSN"].ToString() != "")
                {
                    script1 += "IB.vars.nPSN = '" + ht["nPSN"].ToString() + "';";
                }
                else
                {
                    script1 += "IB.vars.nPSN = '';";
                }
            }

            if (ht["desPT"].ToString() != "")
            {
                script1 += "IB.vars.desPT = '" + ht["desPT"].ToString() + "';";
            }
            else
            {
                script1 += "IB.vars.desPT = '';";
            }


            script1 += "IB.vars.fechaDia = '" + DateTime.Now.ToShortDateString() + "';";
            script1 += "IB.vars.idEmpleadoEntrada = '" + Session["NUM_EMPLEADO_ENTRADA"].ToString() + "';";
            script1 += "IB.vars.nombreEmpleadoEntrada = '" + Session["APELLIDO1"].ToString() + " " + Session["APELLIDO2"].ToString() + ", " + Session["NOMBRE"].ToString() + "';";

            //Modo en el se accederá al contenedor de documentos --> Edición o Consulta
            string sModoContainer = ht["p"].ToString();
            if (sModoContainer != "E")
            {
                sModoContainer = "C";
            }
            else
            {
                if (sEstadoProy == "C" || sEstadoProy == "H")
                {
                    sModoContainer = "C";
                }
            }
            script1 += "IB.vars.superEditor = '" + Utilidades.EsAdminProduccion() + "';";
            script1 += "IB.vars.sModoContainer = '" + sModoContainer + "';";
            script1 += "IB.vars.idResponsable = '" + Session["NUM_EMPLEADO_ENTRADA"].ToString() + "';";
            script1 += "IB.vars.coEstadoAnterior = '0';";

            script1 += "IB.vars.bCambios = 0;";
            //parametros para poder volver a la pantalla de imputación
            script1 += "IB.vars.qs = '" + Request.QueryString.ToString() + "';";
            Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", script1, true);

            //ObtenerDatosAsunto();
        }
        catch (Exception ex)
        {
            LogError.LogearError("Parámetros incorrectos en la carga de la pantalla", ex);

            string script2 = "IB.vars.error = 'Parámetros incorrectos en la carga de la pantalla';";
            Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script2", script2, true);
        }
        finally
        {
            oNodoPT_BLL.Dispose();
            oEstadoPE_BLL.Dispose();
            oPT_BLL.Dispose();
            DBConn.Dispose();
        }
    }