Grabar IMAGEN en campo de ADS Server

Grabar IMAGEN en campo de ADS Server

Postby Ariel » Mon Mar 22, 2010 7:24 pm

Hola a todos,
he comprobando que en la version 1.2.1 rev. 4096 de xharbour al grabar una imagen JPG en un campo BINARY de una tabla ADT, da error cuando en versiones anteriores podia guardar cualquier cosa en ese campo, estoy usando ads server 9.1, a alguien le sucedió algo parecido ? hay solucion ?

Gracias!

Salu2, Ariel.
Ariel
 
Posts: 374
Joined: Wed Nov 29, 2006 1:51 pm
Location: Rosario - Argentina

Re: Grabar IMAGEN en campo de ADS Server

Postby compubrion » Tue Mar 23, 2010 3:47 pm

Ariel, yo lo uso de esta forma sin problemas

IF ! AdsFile2Blob( cFileImg, ( aFilesAdt[ 2 ] )->("Logotipo"), ADS_IMAGE )
MSGINFO( "Error Grabando Imagen", oApp:cSistema )
ENDIF

Cruz Oses
Harbour / Bcc / MinGW / Fwh 13.9
User avatar
compubrion
 
Posts: 130
Joined: Thu Mar 08, 2007 6:12 pm
Location: Miranda - Venezuela

Re: Grabar IMAGEN en campo de ADS Server

Postby nageswaragunupudi » Tue Mar 23, 2010 4:59 pm

Much simpler way is :

FIELD->IMAGEFLD:= MemoRead( <imagefile> )

works if the field IMAGEFIELD is created as IMAGE type.

xHarbour 1.2.1 Rev 6406
Code: Select all  Expand view
#include 'fivewin.ch'
#include 'ads.ch'
#include 'xbrowse.ch'

// xharbour 1.2.1 Rev 6406 & FWH 10.2

function Main()

   SET DATE ITALIAN
   SET CENTURY ON

   RddRegister( "ADS", 1 )
   AdsSetServerType( ADS_LOCAL_SERVER )
   RDDSetDefault( 'ADT' )

   DbCreate( 'ADTIMG', { ;
      { 'ID',     'NUMERIC',     2, 0 }, ;
      { 'FIMAGE', 'IMAGE',       9, 0 } }, 'ADT' )

   USE ADTIMG
   APPEND BLANK
   FIELD->ID      := 1
   FIELD->FIMAGE  := MemoRead( '\fwh\bitmaps\olga1.jpg' )
   APPEND BLANK
   FIELD->ID      := 2
   FIELD->FIMAGE  := MemoRead( '\fwh\bitmaps\AlphaBmp\world.bmp' )
   GO TOP

   XBROWSER 'ADTIMG'

   CLOSE ADTIMG

return nil
 

Result:
Image
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10329
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: Grabar IMAGEN en campo de ADS Server (SOLUCIONADO)

Postby Ariel » Wed Mar 24, 2010 8:10 pm

Gracias x sus comentarios,

les comento que solucioné el tema de grabar una imagen JPG en un campo BINARY de una tabla .adt, aunque muchos digan que no se puede..., bueno yo si pude, el tema era volver a convertir el archivo con la misma extension que tenia, pues lo solucioné creando un campo con la extension del archivo (gracias Patricio) que estoy levantando, entonces al volcar el contenido del campo a disco le añado la extension. Luego tambien a tener en cuenta es el nombre del campo en la funcion adsfile2blob(), lo puse en MAYUSCULAS, y el tercer parametro ADS_BINARY. Nada mas, asi de simple.

Espero le sirva a alguien mas.

Mis dos granitos.

Salu2, Ariel.
Ariel
 
Posts: 374
Joined: Wed Nov 29, 2006 1:51 pm
Location: Rosario - Argentina

Re: Grabar IMAGEN en campo de ADS Server

Postby JavierVital » Thu Mar 08, 2012 5:51 pm

Ariel, una pregunta.
Que tan grande se hiso tu tabla agregando las imagenes
yo tengo una tabla de 4000 productos y querian que se le spuriera imagen.

Saludos.
User avatar
JavierVital
 
Posts: 105
Joined: Thu Feb 26, 2009 4:08 pm

Re: Grabar IMAGEN en campo de ADS Server

Postby nnicanor » Fri Mar 09, 2012 2:22 am

Para que la tabla no se agrande demasiado las imágenes se pueden grabar en otra tabla relacionada, y solo las cargas cuando las necesites.


Slds
Nicanor Martinez M.
Auditoria y Sistemas Ltda.
MicroExpress Ltda.
FW + FWH + XHARBOUR + HARBOUR + PELLES C + XDEVSTUDIO + XEDIT + BCC + VC_X86 + VCC_X64 + MINGW + R&R Reports + FastReport + Tdolphin + ADO + MYSQL + MARIADB + ORACLE
nnicanor@yahoo.com
nnicanor
 
Posts: 295
Joined: Fri Apr 23, 2010 4:30 am
Location: Colombia


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 137 guests