Hasta aquí se ha diseñado un programa que permite acceder a una tabla de una base de datos, editar sus registros, moverse a través de ellos, eliminarlos, añadir otros nuevos, realizar búsquedas y modificarlos. La última tarea, la de modificación de registros se realiza sin más que escribir en la caja de texto correspondiente el valor de modificación, sin embargo esta no es una buena manera de realizar los cambios, es preferible y más seguro tener un botón que nos permita confirmar o rechazar los cambios que hemos ido realizando al escribir nuevos valores en la caja de texto, esto implica no obstante, una visión distinta del ejercicio que venimos realizando y que afectará en alguna medida a casi todos los botones programados en el mismo. Los cambios a realizar antes de crear el botón que se encargue de las modificaciones son:
1°).- En el diseño actual del ejercicio las cajas de texto txtPersonal(0), txtPersonal(1),....,txtPersonal(7), estaban vinculadas al control datVisitas a través de la propiedad DataSource y de DataField para así descargar en las cajas de texto de manera automática los campos de la tabla de datos, sin embargo en la nueva orientación del ejercicio esto no es adecuado, por ello se vacían de contenido las propiedades DataSource y DataField de todas las cajas de texto.
2°).- Como ya no se descargan automáticamente los datos en las cajas de texto debido al cambio producido en el punto 1°, entonces hay que realizar la descarga de otra manera, esto lo haremos mediante un procedimiento que asigne a cada caja de texto el valor correspondiente del campo al que representa en el registro actual, de esta manera, al escribir en la caja de texto no se modifica directamente en la tabla de datos, dejando esta tarea al nuevo botón que crearemos para las modificaciones. El procedimiento se puede establecer en un modulo o en el Formulario y lo llamaremos siempre que se necesite. Podríamos crearlo en el Formulario así:

Este procedimiento descarga el valor de cada campo en una caja de texto. Lo mismo se podría escribir de una forma más sencilla, ya que el valor Index que identifica las distintas cajas de texto se corresponde con el lugar que ocupan los campos en la tabla de datos, así aprovechando esta circunstancia, el procedimiento quedaría así:

En esta nueva forma de escribir el procedimiento hemos usado el bucle For para recorrer los campos de la base de datos y las cajas de texto e ir haciendo la descarga. En ocasiones los campos de las tablas de datos contienen valores Nulos, en ese caso cuando se va a descargar un valor Null en una caja de texto se produce un error, por ello, afinando más la forma anterior del procedimiento, este quedaría así:

En esta nueva forma, antes de realizar la descarga se comprueba si el valor es distinto de Null y en solo en ese caso se realiza no haciendo nada en caso contrario. Para detectar si un campo contiene un valor Null se usa el método IsNull.
|
1. Access con Visual Basic Microsoft Access con Visual Basic , aprende a crear una base de datos en Access... [01/07/09] |
13.316 | ||||
|
2. Informática. Visual Basic ¿Necesitas que tu sistema de login te recuerde tu nombre de usuario y contraseña?... [12/04/11] |
6.769 |
|
|||
|
3. Visual Basic. Programación con aplicaciones MDI Programación en Visual Basic 6.0 . Hoy tenemos un vídeo- tutorial de Visual Basic... [02/12/10] |
3.084 |
|
|||