Yo grabo el fichero a disco y luego con estas dos funciones lo grabo en la
tabla y lo recupero
ejemplo para guardar en la tabla:
Data1.Recordset.Edit
Call putmemo(pcDir + "pepito.doc", Data1.Recordset, "documento")
Data1.Recordset.Update
ejemplo para recuperalo de la tabla:
Call getmemo(pcDir + "pepito.doc", Data1.Recordset, "documento")
Function putmemo(cFile As String, oRc As Recordset, cCampo As String)
Dim n As Integer
Dim nCanal As Integer
Dim cInter As String
Dim nMax As Long
Dim nLeer As Long
nMax = FileLen(cFile)
nCanal = FreeFile
Open cFile For Binary Access Read As nCanal
Do While nMax > 0
nLeer = IIf(nMax > 50000, 50000, nMax)
nMax = nMax - nLeer
cInter = Space(nLeer)
Get nCanal, , cInter
oRc(cCampo).AppendChunk cInter
Loop
Close nCanal
End Function
Function getmemo(cFile As String, oRc As Recordset, cCampo As String)
Dim nCanal As Integer
Dim cInter As String
Dim nMax As Long
Dim nLeer As Long
Dim n As Long
If IsNull(oRc(cCampo)) Then
nMax = 0
Else
nMax = Len("" & oRc(cCampo))
End If
n = 0
nCanal = FreeFile
Open cFile For Binary As nCanal
Do While nMax > 0
nLeer = IIf(nMax > 50000, 50000, nMax)
nMax = nMax - nLeer
cInter = oRc(cCampo).GetChunk(n, nLeer)
n = n + Len(cInter)
Put nCanal, , cInter
Loop
Close nCanal
End Function
saludos
Pablo Leon Gonzalez
pleong@meditex.es
Las Palmas de Gran Canaria
España
-----Original Message-----
De: José Ignacio Merino Martín <jimerino@arrakis.es>
Para: vb-esp@ccc.uba.ar <vb-esp@ccc.uba.ar>
Fecha: jueves 18 de diciembre de 1997 16:45
Asunto: (VB-ESP) Guardar un Fichero del Word en Access
Hola a todos:
Vereis, estoy haciendo una rutina de automatización en Word 97 en la que
genero un fichero. Mi pregunta es simple ¿cómo guardo ese fichero en un
campo Long Binary de Access? He probado a guardar el objeto Document del
Word, pero al recuperarlo me sale tan sólo el texto. He intentado salvar el
=?iso-8859-1?Q?Jos=E9?= Ignacio Merino =?iso-8859-1?Q?Mart=EDn?= escribió:
>
> Hola a todos:
>
> Vereis, estoy haciendo una rutina de automatización en Word 97 en la que
> genero un fichero. Mi pregunta es simple ¿cómo guardo ese fichero en un
> campo Long Binary de Access? He probado a guardar el objeto Document del
> Word, pero al recuperarlo me sale tan sólo el texto. He intentado salvar el
> fichero, pero nada de nada...
>
> ¿Alguien me da una idea de cómo hacerlo? Supongo que habrá que guardar el
> fichero y luego asociarlo con el campo, pero ¿se podría hacer sin pasar por
> el paso intermedio de guardar el fichero?
>
> Un saludo a todos.
No lo tengo implementado, pero con un control OLE, el fichero (mejor dicho, el contenido
del control) se salva mediante OLE.SaveToFile NombreFichero. Si guardas NombreFichero en
el campo de la tabla, luego lo puedes recuperar con OLE.ReadFromFile NombreFichero.
Espero que con esto se resuelva tu problema. Un saludo.