Vincular fotos a formularios e informes en access

Soy un usuario bastante familiarizado con access, pero en esta ocasión se me plantea el siguiente problema:
Necesito crear una B.D. Con una tabla en la que ademas de otros datos debo de incluir al menos una fotografía en formato JPG, el problema fundamental surge porque el volumen de registros va ha ser muy grande, por lo que considero que lo mejor sera vincular las imágenes desde una carpeta fuera de la propia B.D.
He probado mil maneras a través de varios comentarios encontrado en diversos foros pero soy incapaz, haber si podéis darme una pista.

1 Respuesta

Respuesta
-1
Efectivamente la mejor solución es vincular las imágenes. Lo habitual en estos casos es utilizar un simple campo de texto dónde se guarde la ruta a la imagen.
Aunque parece muy sencillo, lo malo viene a la hora de tomar las decisiones...
Primera: ¿Dónde están las fotos? En función de la respuesta (servidor, local en directorio fijo, local en ruta variable en función de la base de datos, pendrive, totalmente variable) deberemos tratar de una u otra forma la información que guardaremos.. En los 2 primeros ejemplos podríamos guardar esa ruta en una constante de la propia aplicación y dejar para el campo sólo el nombre del archivo. En los otros casos existen alternativas varias (pero no avancemos antes de tiempo)
Segundo: ¿Cómo guardo las rutas? Pues utilizando un FileDialog. En la versión 2007 de Office ya puedes utilizar directamente el Office si marcas la referencia adecuada. Si utilizas una versión anterior, Happy tiene uno idéntico (http://accessvbafaq.mvps.org)
Tercero: ¿Cómo las muestro? En un formulario simple es fácil. En el evento Current evaluamos la ruta (función Dir) y, se existir, la asignamos a un control imagen. EN un formulario continuo no se pueden mostrar imágenes por registro. El truco en ese caso es colocar un control imagen en el encabezado o pie y, en el mismo evento Current, mostrar la imagen correspondiente al registro actualmente seleccionado.
Aunque es probable que me esté avanzando demasiado...
Xavi
Parece ser que tengo menos conocimientos de lo que pensaba, porque me has perdido del todo.
Las fotos las podemos poner en donde queramos y sea más fácil su vinculación
si no te importa te agradecería que intentaras explicármelo más paso a paso
gracias
Es que dependerá mucho de lo que entiendas por "donde queramos".
Lo primero es definir como va a trabajar tu aplicación.
Si vas a trabajar en un entorno multiusuario se supone que ya habrás dividido tu aplicación (¿verdad?) Instalando la BackEnd en un servidor y las copias de la FrontEnd en cada ordenador.
En ese caso yo utilizaría una carpeta que cuelgue de aquella dónde está alojada la BackEnd.
Dado que, para procesos de revinculación, deberás saber la ruta a la BackEnd (\\servidor\carpeta) y que eso habitualmente se tiene almacenado en una tabla (al menos yo lo hago), seria tan 'facil' como utilizarla como ruta base a la que añadiríamos el nombre de la carpeta "colgante".
Como puedes ver se están utilizando rutas lógicas, ya que sirven para todos los ordenadores de la red. El problema podría complicarse si, en lugar de eso, se utilizan conexiones de unidad de red. En ese caso, lo que para mi seria z:, para ti podría ser y:
Ya ves que no es fácil guiarte si no se sabe cual es la "arquitectura" que se aplica al sistema. Puede ser desde (más o menos) simple hasta extremadamente complejo.
Xavi

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas