protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            Master.nBotonera           = 33;
            Master.Botonera.ItemClick += new ToolBarEventHandler(this.Botonera_Click);
            Master.bFuncionesLocales   = true;
            Master.TituloPagina        = "Generación de réplicas";
            Master.FuncionesJavaScript.Add("Capa_Presentacion/ECO/Replica/Functions/NodoReplica.js");

            if (!Page.IsPostBack)
            {
                if (!Page.IsCallback)
                {
                    try
                    {
                        sOrigen    = Request.QueryString["origen"];
                        sOpcion    = Request.QueryString["opcion"];
                        sCualidad  = Request.QueryString["sCualidad"];
                        sListaProy = Request.QueryString["lp"];
                        if (sOrigen == "proynocerrados" && sOpcion == "cerrarlista")
                        {
                            #region Cerrar una lista de proyectos
                            SqlDataReader dr = PROYECTOSUBNODO.ObtenerProyectosAReplicar((int)Session["UsuarioActual"],
                                                                                         false, sListaProy);
                            bool bHayProyParaReplicar = ponerProyectos(dr);

                            if (!bHayProyParaReplicar)
                            {//Me voy a la pantalla de cerrar.
                                try
                                {
                                    Response.Redirect("../Cierre/Default.aspx?lp=" + sListaProy +
                                                      "&sAnomes=" + Request.QueryString["sAnomes"] +
                                                      "&origen=" + Request.QueryString["origen"] +
                                                      "&opcion=" + sOpcion, false);
                                }
                                catch (System.Threading.ThreadAbortException) { }
                            }
                            #endregion
                        }
                        else
                        {
                            if (sOrigen == "carrusel" || (sOrigen == "proynocerrados" && sOpcion == "cerrarproy"))
                            {
                                #region Cerrar un proyecto
                                switch (Request.QueryString["opcion"])
                                {
                                case "replicar":
                                    getProyectoCarrusel(Request.QueryString["nProy"],
                                                        Utilidades.decodpar(Request.QueryString["sProy"]),
                                                        Request.QueryString["nPSN"], sOrigen);
                                    getNodos(Request.QueryString["nProy"], sOrigen, false);
                                    break;

                                case "cerrarmes":
                                case "cerrarproy":
                                    //sOpcion = "cerrarmes";
                                    if (sCualidad == "C" &&
                                        PROYECTOSUBNODO.EsNecesarioReplicar((int)Session["UsuarioActual"],
                                                                            int.Parse(Request.QueryString["nProy"]),
                                                                            SUPER.Capa_Negocio.Utilidades.EsAdminProduccion()))
                                    {
                                        getProyectoCarrusel(Request.QueryString["nProy"],
                                                            Utilidades.decodpar(Request.QueryString["sProy"]),
                                                            Request.QueryString["nPSN"], sOrigen);
                                        getNodos(Request.QueryString["nProy"], sOrigen, false);
                                    }
                                    else
                                    {
                                        //Me voy a la pantalla de cerrar.
                                        try
                                        {
                                            Response.Redirect("../Cierre/Default.aspx?nProy=" + Request.QueryString["nProy"] +
                                                              "&sProy=" + Utilidades.decodpar(Request.QueryString["sProy"]) +
                                                              "&nPSN=" + Request.QueryString["nPSN"] +
                                                              "&sAnomes=" + Request.QueryString["sAnomes"] +
                                                              "&origen=" + Request.QueryString["origen"] +
                                                              "&opcion=" + Request.QueryString["opcion"], false);
                                        }
                                        catch (System.Threading.ThreadAbortException) { }
                                    }
                                    break;
                                }
                                #endregion
                            }
                            else
                            {
                                #region Cerrar todos los proyectos
                                if (sOrigen == "menucierre")
                                {
                                    sOpcion = "cerrarmes";
                                }
                                if (sOrigen == "menucierresat" || sOrigen == "menucierresatsaa")
                                {
                                    sOpcion = sOrigen;
                                    if (PROYECTOSUBNODO.EsNecesarioReplicarUSA((int)Session["UsuarioActual"], (sOrigen == "menucierresatsaa") ? true : false))
                                    {
                                        getProyectos(true);
                                        getNodos("", "", true);
                                    }
                                    else
                                    {
                                        //Me voy a la pantalla de cerrar.
                                        try
                                        {
                                            Response.Redirect("../Cierre/Default.aspx?origen=" + Request.QueryString["origen"] + "&opcion=" + sOpcion, false);
                                        }
                                        catch (System.Threading.ThreadAbortException) { }
                                    }
                                }
                                else if (PROYECTOSUBNODO.EsNecesarioReplicar((int)Session["UsuarioActual"], null, false))
                                {
                                    getProyectos(false);
                                    getNodos("", "", false);
                                }
                                else if (sOrigen == "menucierre" || sOrigen == "proynocerrados")
                                {
                                    //Me voy a la pantalla de cerrar.
                                    try
                                    {
                                        Response.Redirect("../Cierre/Default.aspx?nProy=" + Request.QueryString["nProy"] +
                                                          "&sProy=" + Utilidades.decodpar(Request.QueryString["sProy"]) +
                                                          "&nPSN=" + Request.QueryString["nPSN"] +
                                                          "&sAnomes=" + Request.QueryString["sAnomes"] +
                                                          "&origen=" + Request.QueryString["origen"] +
                                                          "&opcion=" + sOpcion, false);
                                    }
                                    catch (System.Threading.ThreadAbortException) { }
                                }
                                #endregion
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        Master.sErrores += Errores.mostrarError("Error al cargar los datos", ex);
                    }

                    //1º Se indican (por este orden) la función a la que se va a devolver el resultado
                    //   y la función que va a acceder al servidor
                    string cbRespuesta = Page.ClientScript.GetCallbackEventReference(this, "arg", "RespuestaCallBack", "context", false);
                    string cbLlamada   = "function RealizarCallBack(arg, context)" + "{" + cbRespuesta + ";" + "}";
                    //2º Se "registra" la función que va a acceder al servidor.
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "RealizarCallBack", cbLlamada, true);
                }
            }
        }
        catch (Exception ex)
        {
            Master.sErrores = Errores.mostrarError("Error al cargar los datos", ex);
        }
    }