Cómo extraer archivos de un Campo General en VFP7

Tengo una tabla en la que he incrustado 792 archivos pdf.(Comprobantes correspondientes a los asientos del libro Diario Gral.)
Sucede que además del excesivo tamaño del archivo fpt, por motivos que aún no logro determinar no puedo continuar incrustando nuevos archivos a la tabla.
Desde el ejecutable no devuelve errores, pero al intentar hacerlo desde el entorno de desarrollo (tanto por programación como editando el campo general directamente) recibo un error 1111 "El descriptor de archivo no es válido."
Finalmente he optado por guardar la dirección del archivo pdf en un campo memo, tal como lo suguieren varias de las respuesta de los Expertos, en lugar de incrustarlo en un campo general.
Ahora está la cuestión de los archivos que ya están almacenados, ¿Existe algún comando, o secuencia que pueda hacer correr sobre la tabla para extraer secuencialmente los archivos del campo general y almacenarlos nuevamente en el disco duro?
Esto me permitiría no perder los 792 archivos que ya se encuentran incrustados en el campo general de la tabla.
Por supuesto que puedo hacerlo manualmente uno por uno, pero perdería un tiempo precioso.

1 Respuesta

Respuesta
1
Bueno lo que tienes que hacer es lo siguiente, primero has un respaldo de tu tabla por cualquier duda...
Segundo en tu tabla has un ciclo scan que recorra todos los datos y al campo general lo guardas en un OLE o bien lo podes pasar a string filetostr() y después ya lo guardas donde quieras ...
Gracias amigo, parece ingenioso, pero me perdí de algo en el camino:
FILETOSTR(cFileName) y yo no tengo nombre de archivo, recuerda que el archivo está incrustado NO VINCULADO en el campo general.
¿Si mi tabla tiene sólo un campo general llamado file el código sería el siguiente?
Use mitabla in 0
select mitabla
scan
Lc_pdf=FILETOSTR(MITABLA.FILE) && allí me da error "El valor tipo o numero de argumentos no es válido para la función
* luego debería utilizar la funcion STRTOFILE() *
=STRTOFILE(Lc_pdf, "c:\miarchivo.pdf")
Endscan
Por favor tratá de aclararme esta duda.
Desde ya muchas gracias y quedo sentado esperando tu respuesta.
Ok mira pues lo que puedes hacer si es un archivo y fijo sabes que es un archivo, dale copyfile o copyto creo que es y pones un directorio donde lo vas a guardar ...
Y eso creo que es todo, sino pásame tu tabla y veremos que podemos hacer con ella pero recuerda siempre tener una copia, así no pierdes tus datos ...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas