Ayuda con datos duplicados

Hice un programa de historias clínicas en visual basic y los datos los guardo en tablas de access..
El programa lo están utilizando 5 médicos pero a veces me aparece el siguiente error.
Los cambios solicitados no se realizaron correctamente porque crerian valores duplicados en el indice o clave principal, cambie los datos en el campo que contiene los datos duplicados o quite el indice para que permita la entrada de datos duplicados..
1.El único campo que tengo para que no me permita datos duplicaodos es una columna que me va contando el numero de registros y esta en autonumérico.
Todos los otros permiten datos duplicados.. Ahora el numero de registro que aparece en la ficha que se esta llenando lo hice mediante un código que me cuenta cuantos registros hay en la base de datos y me asigna el numero de registro siguiente.. El problema seria cuando dos o más usuarios abren el mismo formulario, ahí quien quedaría con el registro siguiente...
Como puedo hacer para eliminar este error y que si todos tienen abierto el mismo formulario al mismo tiempo y los datos vayan para la misma tabla no me genere este tipo de error de datos duplicados, pero también que me permita ir contando la cantidad de registros que llevo..

1 respuesta

Respuesta
1
Lo que podrías hacer es validar mediante programación. Captura el error, y con el mismo código que usas para asignar el siguiente numero lo usas para crear el que sigue, y dándole una especificación al usuario de que se va a asignar otro numero.
Yo hice algo parecido respecto a folios que se deben ver a varios usuarios y que se asignen hasta que se de guardar y así me resulto. Si quieres más detalles, escríbeme nuevamente, pero espero que esto te pueda servir.
Hola amigos hice un programa de historias clínicas en visual basic y los datos los guardo en tablas de access..
El programa lo están utilizando 5 médicos pero a veces me aparece el siguiente error.
Los cambios solicitados no se realizaron correctamente porque crerian valores duplicados en el indice o clave principal, cambie los datos en el campo que contiene los datos duplicados o quite el indice para que permita la entrada de datos duplicados..
1.El único campo que tengo para que no me permita datos duplicaodos es una columna que me va contando el numero de registros y esta en autonumérico.
Todos los otros permiten datos duplicados.. ahora el numero de registro que aparece en la ficha que se esta llenando lo hice mediante un código que me cuenta cuantos registros hay en la base de datos y me asigna el numero de registro siguiente.. el problema seria cuando dos o más usuarios abren el mismo formulario, ahí quien quedaría con el registro siguiente...
Como puedo hacer para eliminar este error y que si todos tienen abierto el mismo formulario al mismo tiempo y los datos vayan para la misma tabla no me genere este tipo de error de datos duplicados, pero también que me permita ir contando la cantidad de registros que llevo..
De antemano gracias por la atención.
Gracias por la colaboración, si me gustaría tener un poco de información más precisa de como haría este,, lo que entiendo es que si voy a guardar todos os datos de un formulario y el numero de registro ya esta,, entonces en lugar de que me aparezca el mensaje del error,, me de la posibilidad de volver a guardar con el numero de registro siguiente... la verdad soy novate en programación y lo que he hecho ha sido gracias ustedes los expertos... que condiciones utilizaría donde la pondría etc.
También como en algunos momentos el switch se congestiona y se bloquea tener alguna posibilidad de que esto no me genere un error si no que me aparezca un mensaje indicándome el error, y que tenga la posibilidad de tener los datos cargados en el formulario hasa que sea reparada la conexión.. seria algo como una verificación en la base de datos,, de que toda la información pudo ser guardada.
De antemano muchas gracias por la orientación
Primero que todo, te lo debí preguntar, ¿qué version de Visual Basic es?
La version que vengo utilizando es 6.0
Ok, mira, por lo que entiendo, ese error no lo has capturado; Visual Basic maneja un capturador de error:
On Error
             Código
Goto
             Código después del error (tu procedimiento que genera el numero)
De esa manera, al momento de que se detecte ese error, en lugar de sacarte del código, te va a mandar a la linea después del Goto y te va a generar el siguiente numero.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas