Pregunta: | 12183 - COMO CODIFICAR UN CAMPO DE TIPO |
Autor: | JOSE ROLANDO QUINTERO PAZ |
Hola
Mi pregunta es, como tengo que codificar un campo de tipo "GENERAL" para luego desde un ejecutable insertar documento de Word, y cuando yo haga doble clic este active al programa con el cual se creo, permintiendo de esa manera hacer todo tipo de modificaciones. Esperando que alguien me responda, ok?. Gracias |
Respuesta: | Jose rolando Quintero Paz |
Resondiendome a mí mismo
¡Hola! Les escribo para decirles que yo había realizado esta pregunta hace mucho tiempo y sólo había obtenido esta respuesta que Uds. pueden observar, que si bien no está mal no era lo que yo esperaba, es decir no me permitían hacer lo mismo que yo hacia con Access en un campo de tipo General. Sin embargo he logrado descubrir por mí mismo cómo hacerlo y sin tener que codificar absolutamente nada, es decir, puedo insertar en un campo de tipo General, cualquier tipo de objetos que aparecen como predeterminados en mi PC, por ej. Planillas de calculo, Documentos Word, Mapa de bits, Archivos de sonidos, de Vídeos, Fotos, etc. Y, haciendo doble clic sobre ese objeto abrir por ej. El Word si el objeto es un Documento de Word o el Excel si es un Archivo de Excel, pero hay que tener en cuenta que no se puede insertar un objeto en un registro en blanco, por lo tanto primero agrego un registro (suponiendo que no haya ninguno), lo grabo y posteriormente procedo a insertar el objeto, se puede insertar uno por registro. Para empezar les diré que para el ejemplo utilizaré una tabla llamada Alumnos, la cual contiene entre otros un campo de tipo General llamado Observación. 1º Lo primero que tengo que hacer es insertar un Objeto ole dependiente en el formulario. 2º En el modo edición, haga clic con el botón derecho del Mouse sobre el objeto ole, y elija “Propiedades” 3º En el evento Autoactivate 2 – DoubleClick 4º AutoVerbmenu .T. Verdadero 5º Seleccione la solapa Datos y, en ControlSource Alumnos.Observacion 6º Stretch 1- Isométrico 7º Crear una opción en el menú principal de esta manera: Menú Principal Indicador Acción Opciones \<Insertar Objeto Nº de barra o comando _med _insob Ya en el ejecutable hacer clic una vez sobre el objeto para tener el foco, luego ir al menú principal y seleccionar insertar objeto y esperar a que aparezca el cuadro de diálogo que me pedirá que seleccione qué tipo de objeto quiero insertar. Es aconsejable seleccionar desde archivo y Vinculado, de ese modo se almacenará dentro de la base de dato independientemente del que se encuentre en el disco. También podrían crear un mensaje que me avise cuando el objeto tenga el foco, ya que de no tenerlo cuando yo seleccione insertar objeto desde el menú principal este no activará al cuadro de diálogo que supuestamente debe aparecer. Hay que tener en cuenta el tamaño de los archivos que inserto porque incrementarán considerablemente el tamaño de la tabla y como consecuencia se hará mucho más lenta. Si tienen alguna duda escríbanme y les daré más detalles, ok? |
Respuesta: | Antonio Estrada |
Una forma sencilla (sin tener que acceder a datos del registro), es crear un fichero en blanco (blanco.doc) y, desde tu programa, hacer un
APPEND GENERAL campo_general FROM blanco.doc esta sentencia NO AÑADE un registro a la tabla, sino que añade el fichero al registro actual. Para acceder a ese campo, tienes que poner en el formulario un objeto OLE dependiente (OLEBoundControl). Cuando pinches en él, automáticamente se abrirá el programa con el que se creó el fichero (en este caso, el WORD) Espero haberte ayudado |