Tengo una aplicación en access 2007 con el control DBPix que me permite escanear un documento en tiempo de ejecución, quiero que cuando termine de ingresar la info referente al documento escaneado me guarde la ruta donde quedo la imagen en un cuadro de texto y este a su vez sirva como hipervínculo que abra la carpeta donde se almaceno el documento.
1 Respuesta
Respuesta de josecmf
1
1
josecmf, Access. Monopuesto y multipuesto. Más de 13 años de experiencia
Aunque no me llamo Alex. ;-) No tengo experiencia con ese control, sinceramente, pero por lo visto en los tutoriales, es sencillo. Pero te planteo algunas cuestiones: a) Si tu escaneas directamente desde el DBPix, el fichero se almacena teóricamente como un stream en la propia base de datos, salvo que te de opción (no lo he podido probar) a guardarlo además en tu disco duro. b) Si por lo indicado al final de a), o porque escaneas antes, tienes tu imagen en una ruta válida, lo que yo haría es crear en la tabla un campo que se llame ruta y donde almacenes el lugar donde está el fichero, y NO almacenes la imagen en la Base de datos. c) Una vez que tienes la ruta almacenada, puedes visualizar en el control en un formulario o en un informe, utilizando el evento del formulario (Al activar registro), una función parecida a lo siguiente (donde Ruta es el campo de texo donde tiene la ruta completa): Private Sub Form_Current() If IsEmpty(Me!Ruta) Or IsNull(Me!Ruta) Then DBPixThumb.ImageViewBlob (Null) DBPixMain.ImageViewBlob (Null) Else DBPixMain.ImageViewFile (Me!Ruta) End If End Sub d) En cuanto a que sea un hipervínculo, mejor que liarte con ese tipo de datos, como ya lo tienes introducido como texto, basta con que le des a ese campo formato color azul y subrayado (para que parezca un hipervínculo), y en el evento AlHacerClick de ese control coloques un codigo para abrir el fichero en cuestion. Queda todo mucho más sencillo. Espero haberme explicado. Si no, dime y vamos paso a paso.
Hola Jose, disculpa haberte cambiado el nombre... bueno muchas gracias por tu respuesta y el tiempo que has dedicado. Mira que el control me guarda la imagen como un stream en la base de datos, cuando yo le pido que digitalice el documento, no me muestra opción de dejarla guardada en alguna parte del disco, de igual manera, este control también tiene la posibilidad de cargar la imagen si ya la tengo escaneada, lo que me escribes me serviría para cuando tenga la imagen guardada en el Disco Duro. De pronto no se si exista otro control que me permita realizar lo que deseo en la aplicación que es escanear un documento en tempo de ejecución y que me quede ligada la ruta con el cuadro de texto que al darle clic me abra la carpeta donde quedo almacenada. La verdad consultado mucho y no he encontrado la solución, aunque la tuya es una buena posibilidad pero si ya tengo la imagen escaneada y almacenada en el disco duro. Muchas gracias por tu ayuda...
Como te dije, no tengo exalguno que permitperiencia con este tipo de control y tampoco se si hay a las dos cosas (almacenar stream y grabar en disco duro). Lo más que se me ocurre es que grabes el stream y luego, en uno de los eventos (doble click) del control o en un botón anejo que pongas, lo intentes exportar al disco duro, lo grabes es un lugar y a la vez, guardes la ruta. No se si es más complicado que escanear al disco duro, y luego importar todo, la verdad.
Hola Jose, bueno pues finalmente el control tiene la opción de digitalizar y guardar como.. para después pasarla al disco, voy a dejarlo así. Muchas gracias. Por otro lado si me puedes colaborar, quisiera que cuando un usuario ingrese a la aplicación luego de haberse identificado con su usuario y contraseña, se cree un archivo de texto, como un log de inicio de sesión en el cual se muestre que usuario ingreso, en que fecha y hora. Muchas gracias por tu ayuda..
Ok. Por supuesto te contesto en seguida, pero para favorecer las consultas para otros usuarios más adelante, te pediría que cierres esta pregunta y me hagas otra, directamente, con otro titulo. Al fin y al cabo, hay mucha gente que aprende/aprendemos de respuestas a otros.