Crear ruta desde un reg. Seleccionado en un form columna con objeto ole a una jpg de carpeta

Tengo un programa en access de zapateria, tengo una pequeña tienda, soy autodidacta y lo hago todo mediante chuletas copiando y pegando. No soy capaz de conseguir que al seleccionar en un formulario en columna un articulo mediante un cuadro combinado, aparte de los datos que haya metido en la tabla, me salga su imagen jpg almacenada en una carpeta del disco C. El formulario espera la foto en un objeto ole independiente. La ruta seria disco C ; Proveedor ; Temporada y la imagen jpg ya estaria rebautizada con el modelo del articulo seleccionado. De un anterior programa que perdi porque me robaron el portátil y no tenia copia, tenia una chuleta que en ese momento funcionaba bien, el texto era :

Private Sub Form_Current()
On Error GoTo Err_Form_Current
Dim strRuta As String
strRuta = "c:\Pedidos_" & DLookup("Temporada", "Temporadas", "IdTemporadas = " & Me.IdTemporadas)
strRuta = strRuta & "\" & DLookup("NombreComercial", "ProveedoresDatos", "NumeroProveedor = " & Me.NumeroProveedor)
strRuta = strRuta & "\" & Me.Modelo & ".jpg"
Me.Foto.Picture = strRuta
'Set Me.Foto = LoadPicture(strRuta)
Exit_Form_Current:
Exit Sub
Err_Form_Current:
'MsgBox Err.Description
Me.Foto.Picture = ""
Resume Exit_Form_Current
End Sub

Todo esto me lo hizo un amigo que sabia de esto, pero que se ha ido al extranjero y yo he intentado mediante chuletas que tenia recomponer todo lo que he podido, pero como he cambiado muchas cosas no funciona.

1 respuesta

Respuesta
1

A simple vista, me da la sensación de que ese código te va a funcionar si sustituyes el objeto OLE independiente por uno del tipo Imagen (que tiene una propiedad Picture donde puedes asignar la ruta de un archivo de imagen)

Tienes razon, me he equivocado, el objeto ole no es independiente sino de imagen. El problema es que al cambiarlo todo no entiende el codigo. Ahora la tabla no tiene nada que ver con lo anterior. Te explico, la tabla actual tiene todos los datos que se necesitan, antes no, habia que hacerle varias aclaraciones a la ruta con otras tablas. Actualmente la tabla Articulos tiene el id del proveedor, el id de la temporada y el modelo, por lo que supongo que sabiendo hacer una ruta mas sencilla que la que habia antes se podria conseguir (lo cual yo no se hacer). ¿Podrias elaborar una ruta basandote en lo que habia antes y lo que te acabo de decir?. Te agradeceria muchisimo que consiguieras que funcionara.
Un cordial saludo :adolfo bedmar

Ok, vamos a ver si hay suerte.

El código que estás usando, busca la imagen en la carpeta:

c:\Pedidos_<TEMPORADA>\<PROVEEDOR>\<MODELO>.jpg

Los valores de <TEMPORADA> y <PROVEEDOR>, por lo que veo, corresponden a las descripciones de esos elementos, obtenidos de las tablas Temporadas y ProveedoresDatos, basándose en el código localizado en el propio formulario (asumo que tabla de artículos).

Ahora dices que la tabla de Artículos dispone del id del proveedor, de la temporada y del modelo... ¿dónde está la diferencia, entonces? El código que tenías ya hacía exactamente lo mismo...

Antes funcionaba uniendo varias tablas pero ahora todo ha cambiado. con tus comentarios me estas haciendo pensar sin la desesperación que tenia ya que no es lo mismo estar solo y sin tenerlos los conocimientos necesarios que sentirte respaldado por alguien como tu. lo que he conseguido es exponerte lo que quiero de forma mas clara y sin que al compilar el código me de error, pero aun así no logro atraer la foto. es lo siguiente :

Private Sub Form_Current()
On Error GoTo Err_Form_Current
Dim strRuta As String
strRuta = "c:\PedidosRuta_" & ("IdTEMPORADA = " & Me.IdTemporada)
strRuta = strRuta & "\" & ("IdProveedor = " & Me.IdProveedor)
strRuta = strRuta & "\" & Me.ModeloProveedor & ".jpg"
Me.Foto.Picture = strRuta
'Set Me.Foto = LoadPicture(strRuta)
Exit_Form_Current:
Exit Sub
Err_Form_Current:
'MsgBox Err.Description
Me.Foto.Picture = ""
Resume Exit_Form_Current
End Sub

Porque resumiendo es así. ir al disco c , a la carpeta PedidosRuta , dentro esta la carpeta con el nombre 14 que es el id de la temporada del articulo que he seleccionado con el cuadro combinado, dentro de la carpeta 14 esta la carpeta con el nombre 2 , que es el id del proveedor del articulo seleccionado y por ultimo, dentro esta la imagen j.p.g con el nombre A132 que es el ModeloProveedor. Me devano los sesos preguntándome porque no me hace caso y seguro que es por cualquier signo o punto o coma mal escrito. no sabes lo muchísimo que aprecio tu interés y el grandísimo favor que me estas haciendo ayudándome. me siento mucho mejor sabiendo que me respaldas.

Un cordial saludo : Adolfo Bedmar

"Porque resumiendo es así. ir al disco c, a la carpeta PedidosRuta, dentro esta la carpeta con el nombre 14"

Aaaaah, nooooooo! No es eso lo que hace el código.

Tal como lo hace el código, se supone que hay una carpeta PedidosRuta por temporada:

c:\PedidosRuta_Temporada1\

c:\PedidosRuta_Temporada2\

c:\PedidosRuta_Temporada3\

(Fíjate en el código que no hay un "\" entre PedidosRuta y la temporada, sino un "_".

Además, ahora has eliminado las búsquedas de los nombres de temporada y proveedor (los DLookup). Por tanto, las carpetas ahora deberán tener los CÓDIGOS de temporada y proveedor, en lugar de sus nombres. Si ya te parece bien, entonces construye la ruta:

strRuta = "c:\PedidosRuta\" & Me.IdTemporada & "\" & Me.IdProveedor & "\" & Me.ModeloProveedor & ".jpg"

Si la quieres con descripciones, deja los DLookup.

¡Funcioooooooonaaaaaaaa! ¡Eres un pedazo de maquina! ; te estaré eternamente agradecido. Si pasas por bilbao estas invitado a comer un buen chuleton. Mi nombre es Adolfo bedmar y tengo una tienda de calzado en la calle carmelo nº5 de bilbao. Mi teléfono móvil es 606122424 y si alguna vez te pasas por aquí llamame, que aunque solo tengo libre el mediodía por lo menos podríamos tomar unos zuritos con unos pintxos. Aunque posiblemente te vuelva a molestar, ya que estoy intentando recomponer el programa y no estoy muy puesto.

un fuerte abrazo de alguien a quien acabas de hacer feliz.

Jajajajaja pues no sabes cuánto me alegro! Y no le haría un feo a un buen txuletón :)

Pues mira, no voy mucho por Bilbao, pero estuve hace 2 veranos.

Mi mujer es vasca de familia y nacimiento (de Las Arenas), aunque lleva casi toda su vida en Barcelona.

Bueno, majete, un abrazo y ya sabes dónde encontrarme!

Aúpa!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas