** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - No me guarda registro, si inserto automaticamente
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoNo me guarda registro, si inserto automaticamente

 Responder Responder
Autor
Mensaje
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Tema: No me guarda registro, si inserto automaticamente
    Enviado: 16/Noviembre/2023 a las 23:52

Hola y Saludos.

Tengo un formulario independiente en el cual insertos datos personales, hay un campo llamado Documento, donde selecciono la clase de documento puede ser: Dni, Nie o Indocumentado y otro campo llamado Dni., donde inserto el número correspondiente, al Dni, Nie. El campo Dni es clave principal.

El problema lo tengo cuando la persona esta indocumentada, para lo cual he creado la siguiente instrucción:

If Documento.Value = "Indocumentado" Then

 Dni.Value = "00.000.000" & "-" & CodIndocumentado

 'Inserta en la Tabla Indocumentados un nuevo valor numérico

 CurrentDb.Execute ("UPDATE TIndocumentados SET NumIndocumentado = NumIndocumentado + 1")   

 

Explico un poco la instrucción, he creado una tabla llamada TIndocumentados y dentro he creado un campo llamado NumIndocumentado, el cual se va incrementado.

En el formulario en la opcion al cargar tengo lo siguiente instrucción:

CodIndocumentado = DLookup("NumIndocumentado", "TIndocumentados")

El  campo CodIndocumentado (oculto) donde se va guardando el registro que correspondería.

Por ejemplo, selecciono en clase de documento Indocumentado y a continuación se rellena automáticamente el campo Dni 00.000.000-1 y continúo insertado los datos, el problema me surgen cuando intento guardar el registro, no me guarda el registro.

En cambio, si inserto el registro manualmente 00.000.000-1 si me lo guarda.

Me podíais decir el motivo por el cual no me guarda el registro cuando se inserta automáticamente y en cambio sí me lo guarda cuando lo inserto manualmente. O me podéis decir como podría replantearme el asunto.

Un Saludo.

 

Arriba
emiliove Ver desplegable
Administrador
Administrador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 5688
Enlace directo a este mensaje Enviado: 17/Noviembre/2023 a las 00:09
Y cuando o en que evento se ejecuta tu CurrentDb.Execute.

Saludos.
Arriba
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Enviado: 17/Noviembre/2023 a las 15:03
En el evento después de actualizar
Private Sub Documento_AfterUpdate()

Saludos.
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 13867
Enlace directo a este mensaje Enviado: 17/Noviembre/2023 a las 15:25
En el evento después de actualizar ya ha hecho (o por lo menos lo ha intentado) insertar el registro ... tendrías que hacerlo antes.
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
Antonio Pedro Ver desplegable
Asiduo
Asiduo


Unido: 13/Diciembre/2005
Estado: Sin conexión
Puntos: 308
Enlace directo a este mensaje Enviado: 17/Noviembre/2023 a las 22:40

Gracias a emiliove y Mihura por vuestro interés, al final lo he solucionado. Viendo detenidamente la instrucción que os envié, había un dato que faltaba:  CodigoAlta.Value = 0, este campo lo tengo en el formulario y cuando el valor es 0 me indica que el registro no está dado de alta y por este motivo no me daba  el registro de alta.

Gracias y se puede cerrar el hilo.

Saludos.

Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable