In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Guardar y extraer un grafico de un campo DBF

Foro público de Xailer en español
Responder
gaboais
Mensajes: 35
Registrado: Vie May 21, 2010 2:09 am

Guardar y extraer un grafico de un campo DBF

Mensaje por gaboais »

Hola buen dia,..
Apreciaria su ayuda porfavor,..
Como podria guardar un archivo JPEG en el campo de un archivo DBF.
Para que en cualquier momento como puedria extraerlo de ese campo y MANIPULARLO para tenerlo como un archivo normal de tipo JPEG (ARCHIVO.JPEG)
Agradesco su tiempo y ayuda.
Avatar de Usuario
XeviCOMAS
Mensajes: 593
Registrado: Sab Mar 12, 2011 8:16 pm

Guardar y extraer un grafico de un campo DBF

Mensaje por XeviCOMAS »

Gabriel,
Lo que hago yo...
En el fichero de clientes, vehí­culos... tengo un botón que me enlaza a una
carpeta alojada en una ubicación del PC, relacionada con un campo de la DBF,
la cual es un contenedor de TODOS los archivos que deseo guardar y que hacen
referencia al vehí­culo en cuestión... Fotos, Documentos, Mails etc.
Abro un menu contextual, y visualizo, creo o elimino documentos sin
necesidad de "abrir" la carpeta contenedora, aunque si lo deseo puedo
abrirla para gestionarla.
De esta manera "salvo" la carencia de las DBFs de guardar archivos tales
como imágenes y además le añado la posibilidad de guardar todo tipo de
documentos.
Eso si, al programar la copia de seguridad, le informo de esas rutas para
copiar los archivos relacionados.
Yo lo tengo montado de esta manera... y funcionando perfectamente.
Un Saludo,
Xevi.
"Gabriel Gonzalez A" ha escrit al missatge:510b01e2$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Hola buen dia,..
Apreciaria su ayuda porfavor,..
Como podria guardar un archivo JPEG en el campo de un
archivo DBF.
Para que en cualquier momento como puedria extraerlo de ese
campo y MANIPULARLO para tenerlo como un archivo normal de
tipo JPEG (ARCHIVO.JPEG)
Agradesco su tiempo y ayuda.
Un Saludo,
Xevi.
alcisoft
Mensajes: 35
Registrado: Dom Sep 23, 2007 10:43 am

Guardar y extraer un grafico de un campo DBF

Mensaje por alcisoft »

Xevi,
> De esta manera "salvo" la carencia de las DBFs de guardar archivos tales
> como imágenes y además le añado la posibilidad de guardar todo tipo de
Creo que desde Clipper 5.3 existen los campos BLOB en el formato .dbf. En
esos campos se pueden almacenar imágenes.
Otra cosa distinta, es que quizá no sea muy conveniente, porque si la .dbf
se corrompe, va a ser mas dificil recomponerla, por no hablar de que la .dbf
se hará MONSTRUIOSAMENTE grande enlentenciendo el sistema.
Es mi opinión. Saludos
gaboais
Mensajes: 35
Registrado: Vie May 21, 2010 2:09 am

Guardar y extraer un grafico de un campo DBF

Mensaje por gaboais »

Gracias por sus comentarios.
Siendo un poco mas directo, necesitaria el "codigo" para manipular este tipo de archivos (JPEG), para adicionar y transformar a FILE.JPEG
Saludos
Avatar de Usuario
XeviCOMAS
Mensajes: 593
Registrado: Sab Mar 12, 2011 8:16 pm

Guardar y extraer un grafico de un campo DBF

Mensaje por XeviCOMAS »

Gabriel,
Si lo haces como te he comentado, no necesitas de ningún código!!!
En un TImage cambias el nombre de la Picture asociada en cada registro...
<Ruta>+<NombreImagen.Jpeg> y nada más.
Un Saludo,
Xevi.
"Gabriel Gonzalez A" ha escrit al missatge:510c32cc$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Gracias por sus comentarios.
Siendo un poco mas directo, necesitaria el "codigo" para
manipular este tipo de archivos (JPEG), para adicionar y
transformar a FILE.JPEG
Saludos
Un Saludo,
Xevi.
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Guardar y extraer un grafico de un campo DBF

Mensaje por juanc »

Esto me funciona, te soy sincero no recuerdo quien aporto las funciones
maskbindata() y unmaskbindata(). Lo estoy usando en una tabla pequeña,
coincido con los compañeros que quizas no sea lo mejor opcion, si usas
campos memos en dbt se haria un archivo muy grande.
Para guardar en un campo Foto5
::oDbfEquipo:Foto5 := MaskBinData( MemoRead(
::oImage1:oPicture:cName ) )
Para extraer del campo y mostrar
MemoWrit( "Temporal.Jpg", UnMaskBinData( ::oDbfEquipo:Foto5 ) )
If File( "Temporal.Jpg" )
If ::oImage1 != Nil
::oImage1:oPicture := "Temporal.Jpg"
EndIf
EndIf
Funciones auxiliares
function MaskBinData( x )
x := StrTran( x , chr(26) , '#26//' )
x := StrTran( x , chr(00) , '#00//' )
return x
*........................................................... ......*
function UnMaskBinData( x )
x := StrTran( x , '#26//' , chr(26) )
x := StrTran( x , '#00//' , chr(00) )
return x
Saludos Cordiales
"Gabriel Gonzalez A" <gaboais[at]prodigy[dot]net[dot]mx> escribió en el
mensaje news:510c32cc$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Gracias por sus comentarios.
> Siendo un poco mas directo, necesitaria el "codigo" para
> manipular este tipo de archivos (JPEG), para adicionar y
> transformar a FILE.JPEG
> Saludos
>
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Guardar y extraer un grafico de un campo DBF

Mensaje por jfgimenez »

Juan,
> x := StrTran( x , '#26//' , chr(26) )
> x := StrTran( x , '#00//' , chr(00) )
cuando se trata de DBF, es preferible utilizar hb_base64encode()
hb_base64decode(), para evitar caracteres no imprimibles (por debajo de
ASCII 32), que podrí­an ser problemáticos.
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Guardar y extraer un grafico de un campo DBF

Mensaje por jfgimenez »

Gabriel,
> Como podria guardar un archivo JPEG en el campo de un
> archivo DBF.
> Para que en cualquier momento como puedria extraerlo de ese
> campo y MANIPULARLO para tenerlo como un archivo normal de
> tipo JPEG (ARCHIVO.JPEG)
Como te ha comentado Xevi, trabajando con DBF es mejor no guardar las
imágenes directamente en campos memo. No obstante, tanto xHarbour com
Harbour son muchí­í­í­í­simo más fiables y robustos que CA-Clipper para
estos casos, pero aún así­, un simple corte de luz te podrí­a dejar
completamente irrecuperable todo un .dbf con sus correspondientes memos
(.dbt o .fpt).
El caso de los sistemas SQL es distinto, pues suelen ser "ACID
compliant", lo que los dota de una mayor estabilidad y tolerancia a
problemas como los cortes de luz. Yo, personalemente, he utilizado tanto
MySQL como SQLite para almacenar imágenes y otros documentos, y con
excelentes resultados.
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Guardar y extraer un grafico de un campo DBF

Mensaje por juanc »

Muchas gracias por la aclaracion, vamos a actualizar. Saludos Cordiales
"Jose F. Gimenez" <jfgimenezAM]"@wanadoo.es> escribió en el mensaje
news:510d0443$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Juan,
>
>> x := StrTran( x , '#26//' , chr(26) )
>> x := StrTran( x , '#00//' , chr(00) )
>
> cuando se trata de DBF, es preferible utilizar hb_base64encode()
> hb_base64decode(), para evitar caracteres no imprimibles (por debajo de
> ASCII 32), que podrían ser problemáticos.
>
>
> Un saludo,
>
> José F. Giménez
> http://www.xailer.com
> http://www.xailer.info
gaboais
Mensajes: 35
Registrado: Vie May 21, 2010 2:09 am

Guardar y extraer un grafico de un campo DBF

Mensaje por gaboais »

Gracias por su colaboracion,..
He tenido resultados favorables.
Agradesco su tiempo y ayuda.
Gabriel Glez A.
Responder