Supongamos una tabla llamada Clientes con varios campos, de los cuales uno es numérico entero largo llamado NumCliente, estableciendo que el campo sea indexado sin duplicados o bien clave principal.
En el evento Al activar registro del formulario de entrada de datos para esa tabla, insertar el siguiente código:
On Error GoTo err_Form_Current
If [NumCliente] < 1 Then
[NumCliente] = DMax("NumCliente", "Clientes") + 1
End If
exit_Form_Current:
Exit Sub
err_Form_Current:
If Err = 94 Then 'Uso no válido de Null
Resume Next
Else
MsgBox Error$
Resume exit_Form_Current
End If
En la propiedad Punto de tabulación del campo NumCliente, dentro de formulario, establecer su valor a No, ya que será un campo que no hay que rellenar manualmente.
Ha sido absolutamente necesario incluir las líneas que hacen referencia al error nº 94 (uso no válido de Null) debido a que la primera vez que se accede al formulario para introducir datos, se producirá dicho error al no existir registros. Con esas líneas de código se evita que aparezca dicho error, ya que la línea On error goto... envía el flujo de la ejecución a la parte del código donde se detecta y se envía de nuevo el flujo de ejecución a la línea siguiente, excepto en el caso de producirse un error diferente, en cuyo caso se mostraría el error producido gracias a las líneas que siguen a Else.
En el evento Al activar registro del formulario de entrada de datos para esa tabla, insertar el siguiente código:
On Error GoTo err_Form_Current
If [NumCliente] < 1 Then
[NumCliente] = DMax("NumCliente", "Clientes") + 1
End If
exit_Form_Current:
Exit Sub
err_Form_Current:
If Err = 94 Then 'Uso no válido de Null
Resume Next
Else
MsgBox Error$
Resume exit_Form_Current
End If
En la propiedad Punto de tabulación del campo NumCliente, dentro de formulario, establecer su valor a No, ya que será un campo que no hay que rellenar manualmente.
Ha sido absolutamente necesario incluir las líneas que hacen referencia al error nº 94 (uso no válido de Null) debido a que la primera vez que se accede al formulario para introducir datos, se producirá dicho error al no existir registros. Con esas líneas de código se evita que aparezca dicho error, ya que la línea On error goto... envía el flujo de la ejecución a la parte del código donde se detecta y se envía de nuevo el flujo de ejecución a la línea siguiente, excepto en el caso de producirse un error diferente, en cuyo caso se mostraría el error producido gracias a las líneas que siguen a Else.
No hay comentarios.:
Publicar un comentario