GeneXus - CARGAR IMAGEN A UNA REGISTRO

 
Vista:

CARGAR IMAGEN A UNA REGISTRO

Publicado por gattusso (16 intervenciones) el 12/12/2006 22:36:16
!!Hola a todos, soy nuevo en esto de programacion, y no se como cargar una imagen a un registro he visto en el foro, que muchos presentan opciones basadas en load btmap, pero pero no me funciona,
a continuacion le muestro lo hecho bajado desde el foro y modificado para la aplicacion.
esto en la regla
Foto.Bitmap=LoadBitmap(emp_foto);

Event 'verfoto'
Foto.Bitmap=LoadBitmap(emp_foto) //Para que me permita verlo en la TRN en modo 'INS' antes de presionar <Enter>, talvez no sea necesario.
EndEvent // 'verfoto'

Event 'cargarfoto'
&initPath = 'C:\Documents and Settings\Stanly\Escritorio\proyectocodigodebarra\imagenes\Fondos'
&extens = 'jpg'
&caption = 'Fotos'
&buttCap = 'cargarfoto'
Call('gxSelPict', emp_foto, &initPath, &extens,
&caption, &buttCap)
EndEvent // 'cargarfoto'

sialguen me puede explicar el segundo evento

!!!!me tira un error de foto not found!!!!
y como en el foro aparece, se la cambie ala foto la pegue en el form y no me salio de verdad agradecere su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por Patricio Ojeda V (194 intervenciones) el 13/12/2006 12:53:36
Para entender mejor y poder ayudarte unas preguntas:

Quieres tan solo visualizar una imagen que selecciones??, o deseas grabar la imagen en un atributo de tipo Blob y despes verla desde la Trn correspondiente??

Saludos...

Patricio Ojeda V
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por Patricio Ojeda V (194 intervenciones) el 13/12/2006 12:57:31
Tambien deberias indicar siempre sobre que version de Gx, Generador, DBMS y parches estas trabajando, porque quizas tu problema puede que sea un bug, pero por lo visto no es tu caso..

Saludos

Patricio Ojeda V
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por gattusso (16 intervenciones) el 13/12/2006 14:47:33
Hola foro mi version de genexus es la 8 genero para visual basic 6 y bases de datos de access
Estoy trabajando en el desarrollo de un sistema de control de empleados en el que dicho sistema debe tener la informacion de los enmpleados y una fotografia de cada uno.

mi problema es que quiero crear el registro de un empleado y en este se guarden sus datos y una foto del mismo. pero no se, como se guarda una foto de un empleado por cada registro. pueden ayudarme por favor.

se los agradecere mucho.

att.gattusso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por Patricio Ojeda V (194 intervenciones) el 13/12/2006 16:32:22
No estoy seguro si en acces puedes guardar archivos, eso lo desconozco asi que tendrias que probar.

Por otra parte, yo de ti usaría otro dbms ya que guardar archivos en una "Base de Datos" si es que se le puede llamar a Access asi, no lo veo como recomendable, es algo asi como querer sacarle 300 Km/h a una Citroneta. Pero bueno, es tan solo una recomendacion.

Para ver una imagen tienes 2 opciones:

1.- Tener un Folder con las imagenes y cargar las fotos con el LoadBitmap(). Si bien es cierto esto muchas veces se hace y funciona, no te lo recomiendo porque tiene la gran desventaja de que los archivos se encuantran fisicamente en el Equipo, y basta con que se pierda o alguien borre la carpeta y todas tus fotos se perderan.

2.- Guardar el archivo utilizando un atributo tipo Blob. Es la mejor forma que tienes de guardar fotos, documentos, etc., ya que estos quedan en tu Base de Datos.

Bueno, en todo caso, para guardar una imagen lo debes hacer creando un atributo de tipo Blob y se hace de la sig. manera:

Call('gxSelFile', &prodfoto,'c:\micarpeta','(Archivos de Imagenes)|*.jpg','Anexar Archivo','Anexar imagen')
&lcadena=len(&prodfoto) - 2
&ext = substr(&prodfoto,&lcadena,3)
if upper(&ext) <> 'JPG' and upper(&ext) <> 'BMP'
msg('El Archivo debe ser una Imagen (extensión .jpg o .bmp)')
&Anexafoto='N'
else
&Anexafoto = 'S'
msg('Se anexará la imagen '+ &prodfoto)
call(PAgrega_foto, prodcod, &prodfoto)
&foto = loadbitmap(&prodfoto)
endif

El código del PRC es el siguiente:

for each
where prodcod = &prodcod
prodfoto = &prodfoto
endfor

Donde:

&lcadena : es una variable numerica de 10.2
&ext : es una variable carácter de 50
&prodfoto : es una variable basada en el atributo Blob
&Anexafoto : es una variable Character(1)

Si deseas cargar la foto con el Loadbitmap(), tienes que colocar tan solo:

&foto = loadbitmap(larutademifoto);

&foto : es una variable de tipo Blob

Saludos y suerte...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por Luis Alberto (119 intervenciones) el 14/12/2006 00:45:00
Access no sopporta Tipo de Datos Blob, Sql si, debes guardar fisicamente el path de la foto en el registro y el archivo en sí en una carpeta del disco duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por nn (1 intervención) el 15/12/2006 15:59:07
todo muy lindo el comentario y la ayuda, el ejemplo de la citroneta, pero acces no es una Base de Datos, y no digas probar con otra dbms-->RDBM's¿??¿
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CARGAR IMAGEN A UNA REGISTRO

Publicado por Luis Alberto (119 intervenciones) el 16/12/2006 01:43:07
No es por entrar en polemica ni mucho menos pero si se dice DBMS, DATA BASE MANAGER SYSTEM.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar