private void Page_Load(object sender, System.EventArgs e) { txtArchivoOld.Attributes.Add("readonly", "readonly"); txtAutor.Attributes.Add("readonly", "readonly"); Session["bSubido"] = false; //if (Session["CATEG_SUPER"].ToString() == "A") strAutor = "<label name='lblAutor' class='enlace' onclick='obtenerAutor()'>Autor</label>"; try { if (!Page.IsPostBack) { hdnsTipo.Text = Request.QueryString["sTipo"].ToString(); hdnnItem.Text = Request.QueryString["nItem"].ToString(); hdnsAccion.Text = Request.QueryString["sAccion"].ToString(); hdnModoLectura.Text = Session["MODOLECTURA"].ToString(); if (hdnsAccion.Text == "I") { txtNumEmpleado.Text = Session["IDFICEPI"].ToString(); txtAutor.Text = Session["NOMBRE"].ToString(); } else if (hdnsAccion.Text == "U") { switch (hdnsTipo.Text) { case "A": DOCAREA oDocA = DOCAREA.Select(null, int.Parse(Request.QueryString["nIDDOC"].ToString()), false); hdnnIDDOC.Text = oDocA.t083_iddocut.ToString(); txtDescripcion.Text = oDocA.t083_descripcion; txtLink.Text = oDocA.t083_weblink; txtArchivoOld.Text = oDocA.t083_nombrearchivo; if (oDocA.t083_privado) { chkPrivado.Checked = true; } else { chkPrivado.Checked = false; } if (oDocA.t083_modolectura) { chkLectura.Checked = true; } else { chkLectura.Checked = false; } txtNumEmpleado.Text = oDocA.t083_autor.ToString(); txtAutor.Text = oDocA.DesAutor + " (" + oDocA.t083_fecha.ToString() + ")"; txtAutorModif.Text = oDocA.DesAutorModif + " (" + oDocA.t083_fechamodif.ToString() + ")"; //Si el usuario no es ni el autor ni es administrador, se deshabilitan las características. //if (oDocT.t063_autor.ToString() != Session["NUM_EMPLEADO_ENTRADA"].ToString() && Session["CATEG_SUPER"].ToString() != "A") //{ // chkPrivado.Enabled = false; // chkLectura.Enabled = false; // chkGestion.Enabled = false; //} break; case "D": DOCDEFICIENCIA oDocD = DOCDEFICIENCIA.Select(null, int.Parse(Request.QueryString["nIDDOC"].ToString()), false); hdnnIDDOC.Text = oDocD.t084_iddocut.ToString(); txtDescripcion.Text = oDocD.t084_descripcion; txtLink.Text = oDocD.t084_weblink; txtArchivoOld.Text = oDocD.t084_nombrearchivo; if (oDocD.t084_privado) { chkPrivado.Checked = true; } else { chkPrivado.Checked = false; } if (oDocD.t084_modolectura) { chkLectura.Checked = true; } else { chkLectura.Checked = false; } txtNumEmpleado.Text = oDocD.t084_autor.ToString(); txtAutor.Text = oDocD.DesAutor + " (" + oDocD.t084_fecha.ToString() + ")"; txtAutorModif.Text = oDocD.DesAutorModif + " (" + oDocD.t084_fechamodif.ToString() + ")"; break; case "PT": /*DOCUPT oDocPT = DOCUPT.Select(null, int.Parse(Request.QueryString["nIDDOC"].ToString()), false); * hdnnIDDOC.Text = oDocPT.t062_iddocupt.ToString(); * txtDescripcion.Text = oDocPT.t062_descripcion; * txtLink.Text = oDocPT.t062_weblink; * txtArchivoOld.Text = oDocPT.t062_nombrearchivo; * * if (oDocPT.t062_privado) chkPrivado.Checked = true; * else chkPrivado.Checked = false; * if (oDocPT.t062_modolectura) chkLectura.Checked = true; * else chkLectura.Checked = false; * if (oDocPT.t062_tipogestion) chkGestion.Checked = true; * else chkGestion.Checked = false; * * txtNumEmpleado.Text = oDocPT.t062_autor.ToString(); * txtAutor.Text = oDocPT.DesAutor + " (" + oDocPT.t062_fecha.ToString() + ")"; * txtAutorModif.Text = oDocPT.DesAutorModif + " (" + oDocPT.t062_fechamodif.ToString() + ")"; * * //Si el usuario no es ni el autor ni es administrador, se deshabilitan las características. * if (oDocPT.t062_autor.ToString() != Session["NUM_EMPLEADO_ENTRADA"].ToString() && Session["CATEG_SUPER"].ToString() != "A") * { * chkPrivado.Enabled = false; * chkLectura.Enabled = false; * chkGestion.Enabled = false; * } */ break; case "PE": /*DOCUPE oDocPE = DOCUPE.Select(null, int.Parse(Request.QueryString["nIDDOC"].ToString()), false); * hdnnIDDOC.Text = oDocPE.t068_iddocupe.ToString(); * txtDescripcion.Text = oDocPE.t068_descripcion; * txtLink.Text = oDocPE.t068_weblink; * txtArchivoOld.Text = oDocPE.t068_nombrearchivo; * * if (oDocPE.t068_privado) chkPrivado.Checked = true; * else chkPrivado.Checked = false; * if (oDocPE.t068_modolectura) chkLectura.Checked = true; * else chkLectura.Checked = false; * if (oDocPE.t068_tipogestion) chkGestion.Checked = true; * else chkGestion.Checked = false; * * txtNumEmpleado.Text = oDocPE.t068_autor.ToString(); * txtAutor.Text = oDocPE.DesAutor + " (" + oDocPE.t068_fecha.ToString() + ")"; * txtAutorModif.Text = oDocPE.DesAutorModif + " (" + oDocPE.t068_fechamodif.ToString() + ")"; * * //Si el usuario no es ni el autor ni es administrador, se deshabilitan las características. * if (oDocPE.t068_autor.ToString() != Session["NUM_EMPLEADO_ENTRADA"].ToString() && Session["CATEG_SUPER"].ToString() != "A") * { * chkPrivado.Enabled = false; * chkLectura.Enabled = false; * chkGestion.Enabled = false; * } */ break; } } } else { Session["bSubido"] = true; Grabar(); EsPostBack = "true"; } } catch (System.OutOfMemoryException) { //Si el archivo a subir es demasiado grande, se produce un error por falta de memoria. //La ventana de la barra de progreso ya avisa al usuario de esta situación y cierra esta ventana. } catch (ConservaException cex) { this.hdnError.Value = Utilidades.MsgErrorConserva("W", cex); } catch (Exception ex) { this.hdnError.Value = "Error: " + ex.Message + (char)10; if (ex.InnerException != null) { this.hdnError.Value += "Detalle error: " + ex.InnerException.Message; } } }
protected void Page_Load(object sender, EventArgs e) { string sTipo = Request.QueryString["sTipo"].ToString(); int nIDDOC = int.Parse(Request.QueryString["nIDDOC"].ToString()); string sNombreArchivo = ""; long? t2_iddocumento = null; byte[] ArchivoBinario = null; Response.ClearContent(); Response.ClearHeaders(); Response.Buffer = true; Response.ContentType = "application/octet-stream"; try { switch (sTipo) { case "A": // AREA DOCAREA oDocA = DOCAREA.Select(null, nIDDOC, true); sNombreArchivo = oDocA.t083_nombrearchivo; t2_iddocumento = oDocA.t2_iddocumento; break; case "D": // DEFICIENCIA DOCDEFICIENCIA oDocD = DOCDEFICIENCIA.Select(null, nIDDOC, true); sNombreArchivo = oDocD.t084_nombrearchivo; t2_iddocumento = oDocD.t2_iddocumento; break; } if (t2_iddocumento != null) { ArchivoBinario = IB.Conserva.ConservaHelper.ObtenerDocumento((long)t2_iddocumento).content; } Response.AddHeader("content-disposition", String.Format("attachment;filename={0}", sNombreArchivo)); //Response.AddHeader("Content-Disposition", "attachment; filename=\"" + sNombreArchivo + "\""); Response.BinaryWrite(ArchivoBinario); //if (Response.IsClientConnected) Response.Flush(); //Response.Close(); Response.End(); } catch (ConservaException cex) { this.hdnError.Value = Utilidades.MsgErrorConserva("R", cex); } //catch (System.Web.HttpException hexc) //{ //} catch (Exception ex) { this.hdnError.Value = "No se ha podido obtener el archivo." + (char)10 + (char)10 + " Error: " + ex.Message + (char)10; if (ex.InnerException != null) { this.hdnError.Value += "Detalle error: " + ex.InnerException.Message; } } //Response.Flush(); finally { if (this.hdnError.Value == "") { Response.Close(); //Response.End(); } } }