CLR: .Net / Mono / Boo / Otros CLR > VB .NET
mostrar word en asp.net
abel_23:
buenas Nonches señores de solo codigo
les envio un saludo cordial desde peru, felicitandolos por todos los aportes que hacen a los miles de usuarios y desarrolladores Hispanos al rededor del mundo, bueno tengo una inquietud y un problema que quisiera que me apoyen, bueno les explico estoy desarrollando un modulo en el cual administra documentos como reglamentos, normas, politicas etc, como veran son documentos importantes y me han solicitado que esto se haga a nivel de bases de datos, osea que el archivo se registre en una tabla, bueno el caso es que si lo puedo almacenar en un campo de la tabla documentos en un campo de tipo Image, y tambien puedo bajar el documento almacenado pero los usuarios quieren que tambien el documento se muestre en un pagina aps.net con una marca de agua de la Institucion, por lo que pense al momento de obtener el contenido del documento insertarlo en un textbox y asi mostrarlo, bueno espero que se pueda entender claramente el caso hasta ya hice los siguiente:
1. crear mi tabla de documentos :
CREATE TABLE DOCUMENTO
(
COD_DOCUMENTO INT NOT NULL,
FEC_REGISTRO DATETIME,
CONTENIDO IMAGE,
VC_TITULO VARCHAR(20)
)
2. cree el formulario para subir el documento con un procedimiento almacenado :
3. y con este formulario obtengo el archivo que se encuentra en la tabla de documento en el base de datos.
(script)
' Open a database connection.
Dim strConnection As String = "Data Source=.;Initial Catalog=BD_prueba;Integrated Security=True"
Dim cn As SqlConnection = New SqlConnection(strConnection)
cn.Open()
Dim Da As New SqlDataAdapter("Select contenido from documento where cod_documento = 15652", cn)
Dim bycb As SqlCommandBuilder = New SqlCommandBuilder(Da)
Dim ds As New DataSet()
Da.Fill(ds, "contenido ")
Dim myrow As DataRow
myrow = ds.Tables("contenido ").Rows(0)
Dim mydata() As Byte
mydata = myrow("contenido ")
Response.Buffer = True
Response.AddHeader("Content-Type", "attachment")
Response.AddHeader("Content-Disposition", "filename=" & Now().ToString & "." & "doc")
Response.ContentType = "application/msword"
Response.BinaryWrite(mydata)
4. en el cuarto paso me falta que el documento que esta en la base de datos se muestre en algun control que este en un formulario.
Bueno espero que me puedan ayudar si tienen alguna duda sobre la explicacion haganmela saber porfa.
Nota: estoy utilizando vb 2008.net con sqlserver-2008 con el office 2003.
carlosespinoza:
Hola, si estas usando Asp.net quiere decir que estas haciendo una aplicación que corre sobre el explorador web...
Bueno, pues dentro de un explorador web puedes mostrar cualquier archivo (al estilo pdf) solo que no recuerdo como... yo lo he hecho y recuerdo que no es tan dificil, solo era cuestion de llamarlo y ponerle como target la pagina, asi te mostrara el archivo en el mismo explorador...
mmmmmmmmm
cierto, yo lo hice con docs de 2007, no si 2003 traiga el plug para el explorador... seria cosa de checar eso...
Prueba con las propiedades del browser e intenta cargar ahi tu archivo, pero atraves del browser... no desde las propiedades del archivo...
Saludos... PD me dices si funciona... :good:
abel_23:
Gracias por tu ayuda ya que encontre algo muy interesante en este pagina, pero tengo un problema al momento de la visualizacion ya que el popup se cierra y las maquinas de donde los usuarios van a visualizar lo documentos no tienen el office instalado por otra parte me haz dicho que coloque el word en un contenedor como el explorador, no se si me podrias enviar una pagina de referencia, gracias de antemano.
abel_23:
Hola amigo, he intentado cargar el archivo desde el explorador pero nada en vez de mostrarlo en el browse me lo descarga, he investigado con xml y xsl para transaformar el codigo generado en xml por el doc y mostrarlo en el browse, haber si me das una manipo porfa te lo voy agradecer.
carlosespinoza:
Perdon no habia checado el correo... el problema que veo es que no tienes office instalado :bad: ... eso si es el problema... ya que el explorador lo que hace es crear una instancia de word en el explorador, algo asi como lo que pasa con los PDF de acrobat... pero si no tienes office, no creo que puedas hacerlo :argh: ...
solo se me ocurre usar google apps o office web aps... pero si no tienes office instalado no se como puedas hacerlo...
Seria cosa de investigar...
Saludos
Navegación
[#] Página Siguiente
Ir a la versión completa