Power Builder - Problema Curioso

 
Vista:

Problema Curioso

Publicado por carlos_lg (19 intervenciones) el 14/01/2004 23:38:09
desarrolle una aplicacion en PB 7 .. en donde trabajo con fotos de empleados....

resulta que en la vantana donde tengo que asignar la foto tengo un Dw y dentro de el esta un objecto picture (es como un barner) el cual diseñe para darle un aspecto mas profesional a mi aplicacion pero resulta que cuando voy a insertar la foto lo hace bien, la inserta y guarda correctamente.. el problema esta en que cuando cierro la ventana y abro nuevamente la ventana u otra que tenga este dw que funciona como Barner ... el objecto picture del dw desaparece... es como si perdiera el Path..y en la propiedad File name de este picture esta como header.bmp

Nota( la foto es insertada en un dw que se encuentra en la ventana en un compute BITMAP ( nombre_foto ) y solo se guarda la direccion en donde se encuentra la foto a insertar)

de ante manos gracias por 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:Problema Curioso

Publicado por Ricardo (1957 intervenciones) el 15/01/2004 16:52:54
Si el dato del path esta almacenado debe de aparecer la imagen, checa si el campo tiene asignada la ruta de la foto.

Los demas datos si los trae?

Talvez el problema este en el objeto picture que creaste, ya que el puro compute debe de funcionarte para visualizar la foto.

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

Continua el Problema Curioso

Publicado por carlos_lg (19 intervenciones) el 15/01/2004 17:44:20
..Imaginate que tienes una ventana en donde se encuentra todos los datos de un trabajador con su respectiva foto.. y se te ocurrio colocar otro dw en donde le pones un picture (ejemplo el logo de tu aplicacion o de la empresa )

El problema no es con la foto y los datos del trabajador.. todo eso funciona correctamente. el problema es con el dw que esta en esa misma ventana.. y tiene el objecto picture ( el logo de tu aplicacion o de la empresa) ) ... pues ese objecto pierde path ya que desaparece cuando tu insertas la foto.....
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:Continua el Problema Curioso

Publicado por Ricardo (1957 intervenciones) el 16/01/2004 16:58:21
Ok, tienes la ventana con los datos del empleado, y un dw con un picture.

Solo checa cuando haces la insercion, es decir cuando haces el retrieve, ya que si busca el dato del registro que estas dando de alta y este todavia no existe para el retrieve no te dara la imagen.

Es decir necesitas que el registro este completamente actualizado, para que al hacer el retrieve encuentre dicha informacion.

Esta muy raro, como comentas es un problema curioso, pero parece ser al momento de cargar la imagen del dw, es decir, al hacer el retrieve o el insert, dependiendo lo que estes utilizando.

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:Problema Curioso

Publicado por artemio (2 intervenciones) el 16/01/2004 18:47:38
Este problema curioso con el bitmap(nombre_foto) quizas no sea el camino para hacer un retrive en el datawindow .
Existe otra forma de hacer que un achivo en JPG o BITMAP para hacer que funcione y que haga se vea la foto del trabajador en este aspecto hay un Componente que puede hacer que funcione en OCX que se lla PictureView en Ole de KEN HOME que hace que haga un retrieve si quiere un ejemplo de como funciona se encuentra en www.pbdr.com tip Powerbuilder.
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

Problema Curioso mejor explicacion

Publicado por carlos_lg (19 intervenciones) el 16/01/2004 20:15:47
quizas no me supe explicar bien..el problema no es con la foto olviden la foto..... el problema es que existe otro dw dentro de la misma ventana que tiene un logo de la empresa (osea otro objecto picture) resulta que este picture es el del problema .. explico por pasos

1.- Tengo una ventana con dos dw uno con la foto de trabajor con sus datos y otro con el logo de la empresa.....
2.- cuando quiero insertar o cambiar una foto del trabajor que seleciono el boton insertar que contiene el comando

GetFileOpenName (con su sintaxis)

el insertar bien la foto, si la quiero volver a cambiar lo hace tranquilamente siempre y cuando no cierre la ventana donde esta los datos de trabajador..

3 .. problema es que si cierro esta ventana y la vuelvo abrirla... el dw donde esta el logo de la empresa pierde el logo osea el logo no se ve mas... y si abro otra ventana que contenga este dw con el mismo logo tampoco se ve ... es como si se perdiera el path del picture.....

de veraz que necesito ayuda con esto... por que he hecho todo lo que se me ha ocurrido y no lo he podido resolver....

gracias de verdad por dedicarle un poco de su valioso tiempo a los problemas que se presentan en este foro....

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:Problema Curioso mejor explicacion

Publicado por ulises (15 intervenciones) el 21/01/2004 17:57:25
tu problema es GetFileOpenName ...cuando tu levantas esa ventana y escojes la imagen el path cambia ..me explico digamos que tengas tu aplicacion en esta ruta c:\mi aplicacion.....pero si tu buscas la imagen y digamos que se encuentre en c:\mi aplicacion\mis imagenes el path automaticamente se encuentra en esa ruta y la hora que cambias de ventana se pierde...a mi me paso lo mismo .....y tuve que usar CopyFileA(ls_ruta_image,ls_ruta_destino,lb_flag) este comando despues de levantar el GetFileOpenName ...me imagino que guardas en tu bd como ruta...con ese comando copia la imagen en una carpeta predetermina donde se encuentren todas las imagenes y si existe solo lo modifica..y asi nunca se pierde.....espero que me hayas entendido ..en todo caso espero tu respuesta si ya te salio..ahhh me olvidaba en tu aplicacion en declaraciones /Global external Funtions pones esto
function boolean CopyFileA(ref string cfrom, ref string cto, boolean flag) LIBRARY "kernel32.dll"....para que haga referencia en tu codigo el CopyFileA ...porque si no pones eso no se ejecutara
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:Problema Curioso mejor explicacion

Publicado por carlos_lg (19 intervenciones) el 22/01/2004 20:24:12
ok.. ulises de verda muchas gracias por la informacion,,, pero no me sirvio .. hice todo pero no me funciono quizas no lo estoy utilizando de la forma correcta..

coloque la funcion external ok....

llamo a la funcion GetFileOpenName
despues llamo ala funcion que me dice:

CopyFileA(ruta_de la_imagen,ruta_destino, true)

mi observacion es que la variable lb_flag es bbollena pero que valor toma true o false...

espero respuesta de esto ... nuevamente gracias..

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:Problema Curioso mejor explicacion

Publicado por ulises (15 intervenciones) el 21/01/2004 17:57:30
tu problema es GetFileOpenName ...cuando tu levantas esa ventana y escojes la imagen el path cambia ..me explico digamos que tengas tu aplicacion en esta ruta c:\mi aplicacion.....pero si tu buscas la imagen y digamos que se encuentre en c:\mi aplicacion\mis imagenes el path automaticamente se encuentra en esa ruta y la hora que cambias de ventana se pierde...a mi me paso lo mismo .....y tuve que usar CopyFileA(ls_ruta_image,ls_ruta_destino,lb_flag) este comando despues de levantar el GetFileOpenName ...me imagino que guardas en tu bd como ruta...con ese comando copia la imagen en una carpeta predetermina donde se encuentren todas las imagenes y si existe solo lo modifica..y asi nunca se pierde.....espero que me hayas entendido ..en todo caso espero tu respuesta si ya te salio..ahhh me olvidaba en tu aplicacion en declaraciones /Global external Funtions pones esto
function boolean CopyFileA(ref string cfrom, ref string cto, boolean flag) LIBRARY "kernel32.dll"....para que haga referencia en tu codigo el CopyFileA ...porque si no pones eso no se ejecutara
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