Página 1 de 1

[RESUELTO] Mostrar imagenes en formulario mediante ruta

Publicado: Mar Feb 22, 2011 6:38 pm
por wili7508
Cordial Saludo,
Compañeros del foro, solicito su amable ayuda ya que he tratado de mostrar varias imagenes en un formulario mediante ruta y no he podido lograrlo.
ya he visto en el foro que se puede lograr con éxito vincular una imagen, pero en este caso requiero hacerlo con varias, y estas se encuentra en una carpeta compartida de un servidor (Ejemplo unidad H:).
cabe anotar que para cada imágen manejo un campo independiente en la tabla, ya he podido visualizarlas sin problemas ubicando las imágenes en la misma carpeta de la BD, pero como les comento requiero que las imágenes estén disponibles en una ubicación diferente.
Muchas gracias por su ayuda,

Re: Mostrar varias imagenes en formulario mediante ruta

Publicado: Mar Feb 22, 2011 7:53 pm
por RMG
Hola,

Aclopate esta macro del amigo Mauricio a tus necesidades, es de ruta fija.

Sub CambiaImagen( Evento )
Dim sDirectorioActual As String
Dim sRuta As String
Dim sImagen As String
Dim txtImagen As Object
Dim icImagen As Object

'La libreria global de macros de OOo
GlobalScope.BasicLibraries.LoadLibrary("Tools")
'Obtenemos el directorio actual de la base de datos
sDirectorioActual = "C:\RMG\Imagenes"
'El control donde esta el nombre de la imagen
txtImagen = Evento.Source.getByName("fmtId")

'El control para mostrar la imagen
icImagen = Evento.Source.getByName("icImagen")

'Obtenemos el nombre de la imagen
sImagen = txtImagen.Text & ".jpg"

'Contruimos la ruta completa de la imagen
sRuta = ConvertToURL( sDirectorioActual & GetPathSeparator & sImagen)
'Mostramos la imagen
icImagen.ImageURL = sRuta

End Sub

Saludos

Re: Mostrar varias imagenes en formulario mediante ruta

Publicado: Jue Feb 24, 2011 6:13 pm
por wili7508
Cordial saludo,

Amigo RMG, muchas gracias por el tiempo que ha dedicado en ayudarme con este problema, tengo una pregunta sobre la macro, a que envento y que objeto la debo asignar, yo la he asignado al objeto formulario con el evento "al cambiar registro", no funciona correctamente ya que cuando comienzo a navegar dentro de los registros, la macro me cambia el valor del campo que contiene el nombre de la imagen y lo daña.
Otra pregunta se puede hacer algo para utilizar varias imágenes en el mismo formulario (varios campos de nombre imagen y varios objetos de imagen).
Muchas gracias,

Re: Mostrar varias imagenes en formulario mediante ruta

Publicado: Jue Feb 24, 2011 7:39 pm
por RMG
Hola,
Te adjunto el ejemplo de Mauricio para que lo veas.

Saludos

Re: Mostrar varias imagenes en formulario mediante ruta

Publicado: Vie Mar 04, 2011 3:11 pm
por marceloo
Estoy utilizando esta macro en Ooo 3.3 ya reformé las rutas y nombres de campo en mi base y me tira el siguiente error en la linea sImagen = txtImagen.Text & ".jpg"
Error de ejecucion de BASIC Propiedad o método no encontrado: Text.
a qué puede deberse?
[RESUELTO]
Mi campo Id estaba como "numerico" en lugar de "formateado"
GRACIAS
RMG escribió:Hola,

Aclopate esta macro del amigo Mauricio a tus necesidades, es de ruta fija.

Sub CambiaImagen( Evento )
Dim sDirectorioActual As String
Dim sRuta As String
Dim sImagen As String
Dim txtImagen As Object
Dim icImagen As Object

'La libreria global de macros de OOo
GlobalScope.BasicLibraries.LoadLibrary("Tools")
'Obtenemos el directorio actual de la base de datos
sDirectorioActual = "C:\RMG\Imagenes"
'El control donde esta el nombre de la imagen
txtImagen = Evento.Source.getByName("fmtId")

'El control para mostrar la imagen
icImagen = Evento.Source.getByName("icImagen")

'Obtenemos el nombre de la imagen
sImagen = txtImagen.Text & ".jpg"

'Contruimos la ruta completa de la imagen
sRuta = ConvertToURL( sDirectorioActual & GetPathSeparator & sImagen)
'Mostramos la imagen
icImagen.ImageURL = sRuta

End Sub

Saludos

Re: Mostrar varias imagenes en formulario mediante ruta

Publicado: Vie Mar 04, 2011 4:07 pm
por wili7508
Muchas gracias por su ayuda ya organicé mi formulario, estaba cometiendo un error en el código.
Doy gracias a RMg por su ayuda.
Doy el asunto por concluido.

Re: [RESUELTO] Mostrar imagenes en formulario mediante ruta

Publicado: Lun Sep 05, 2016 10:48 am
por cabcabe
Buenas retomo el caso anterior puesto que estoy usando ese archivo como ejemplo y no soy capaz de conseguirlo funcionar adaptando a mi Bd jejeje.

Estoy leyendo el manual de Mauricio y he llegado hasta el capitulo que empieza a trabajar con Hojas de cálculo ...

He creado una minibase de datos y lo que he hecho es copiar el cuadrado donde se tiene que mostrar la foto y ajustar todas los cuadros de texto y controles con los nombres de mi base de datos.
Lo que busco es que el DNI del cliente (aparecera en el campo DNI) se muestre la imagen correspondiente en el recuadro. Se supone que debería ir con letra pero en las pruebas solo he puesto "Entero [Integer]" y no me deja poner la letra .... daría igual poner un campo texto o me afectaría a la vinculación de las imágenes?.

Tengo el problema en la línea

'El control donde esta el nombre de la imagen
txtImagen = Evento.Source.getByName("fmtId")

En este modficio el "fmtld" y lo renombro con el control que tengo en mi base de datos"fmtDNI". He revisado mil veces y comparado las 2 bases de datos y no sé porque no me funciona.

Como he comentado antes tengo un conocimiento demasiado básico para esa línea de código ...

Gracias a quien pueda ayudarme.

Re: [RESUELTO] Mostrar imagenes en formulario mediante ruta

Publicado: Lun Sep 05, 2016 8:31 pm
por Ypsilon
mirando un poco en el adjunto enviado tienes el control icImagen en un subformulario que cuelga del principal....
y con el nombre de fmtID tienes una etiqueta y el campo (no se si influye....pero seria conveniente que renombres)
el procedimiento deberias adjudicarlo al evento "al cambiar registro" del formulario.

saludos

Re: [RESUELTO] Mostrar imagenes en formulario mediante ruta

Publicado: Lun Sep 05, 2016 8:55 pm
por cabcabe
Gracias, ya me lo habían comentado en el post que puse. Lo de la etiqueta fue haciendo pruebas por si podía ser eso. Mi problema era el subformulario jeje.

Graaaaacias