Imprimir página | Cerrar ventana

Alcance sobre "Doble Ingreso de Registro"

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=84004
Fecha de impresión: 19/Junio/2019 a las 12:55


Tema: Alcance sobre "Doble Ingreso de Registro"
Publicado por: Javier_Flores
Asunto: Alcance sobre "Doble Ingreso de Registro"
Fecha de publicación: 11/Octubre/2018 a las 14:09
mensaje original:

******************************
Mihura Ver desplegable 
http://www.mvp-access.com/foro/member_profile.asp?PF=1850" rel="nofollow -
http://www.mvp-access.com/foro/pm_new_message_form.asp?name=Mihura" rel="nofollow -
http://www.mvp-access.com/foro/search_form.asp?USR=Mihura" rel="nofollow -
http://www.accessaplicaciones.com/" rel="nofollow -
http://www.mvp-access.com/foro/pm_buddy_list.asp?name=Mihura" rel="nofollow -

Administrador 
Administrador 
Avatar 

Unido: 06/Mayo/2005 
Localización: España 
Estado: Sin conexión 
Puntos: 10346
http://www.mvp-access.com/foro/forum_posts.asp?TID=83996&PID=505549&title=doble-ingreso-de-registro#505549" rel="nofollow">Enlace directo a este mensaje  Enviado: 05/Octubre/2018 a las 23:23
Ahora ya me he perdido ...

A mi, esto:         (=SiInm(EsNulo(DMáx("[N_GPS]","[GPS]")+1),'1',DMáx("[N_GPS]","[GPS]")+1))

me suena a falso autonumérico LOL


Una manera de salvarlo es que cuando entres en el registro lo crees realmente, con lo que el otro usuario tendrá un número distinto, claro que esto tiene el problema de los registros que se creen en blanco porque entran y vuelven a salir.

Otra forma es no crear número hasta justo el momento de guardar el registro.

Pero de todas formas yo usaría un contador propio:
http://www.mvp-access.com/foro/topic83996.html" rel="nofollow - http://www.accessaplicaciones.com/ejemplos.html#rt05">Crear 'autonuméricos' personales


Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com/" rel="nofollow - Access Aplicaciones
http://www.tecsys.es/" rel="nofollow - Tecsys.es
******************************

Don Jesús, esta nota es para darle las gracias e indicar que tenia razón respecto a su recomendación de estudiar y leer el link que me dejo.

Ahora le comento, lo que hice:
cree Tabla TContadores
acomodé los campos que necesitaba
el código modificado quedó de la siguiente manera:
**********************************************************************
'---------------------------------------------------------------------------------------------
' Autor : JESUS MANSILLA CASTELLS -Mihura-
'---------------------------------------------------------------------------------------------

Public Function RT_Modulo_Contadores(codigo As String, Numero As Variant) As Long

Dim i As Double, Mitabla As DAO.Recordset
Set Mitabla = CurrentDb.OpenRecordset("SELECT * FROM [TContadores] WHERE Codigo_con = '" & codigo & "'")
If Mitabla.RecordCount = 0 Then
         MsgBox "Error tabla contadores. Codigo : " & codigo, vbCritical, "TECSYS"
         RT_Modulo_Contadores = 0
     Else
         On Error GoTo Error_rut
         Mitabla.LockEdits = True
         Mitabla.Edit
         Mitabla("Valor_con") = Mitabla("Valor_con") + 1
         Numero = Mitabla("Valor_con")
         Mitabla.Update
         RT_Modulo_Contadores = Mitabla("Valor_con")
End If
Mitabla.Close
Exit Function

Error_rut:
For i = 1 To 50000: Next
Resume
Return

End Function
**********************************************************************
En el formulario principal, un campo que recibe el enfoque (gotfocus), "gatilla" la ejecución de este modulo, con la siguiente instrucción:
************************************************
Private Sub N_GPS_GotFocus()
Me.N_GPS.Value = RT_Modulo_Contadores("gps_n", 0)

End Sub
************************************************

En conclusión, genial su recomendación, solo quería agradecer su gentil y desinteresada ayuda




-------------
Javier Flores

Un Saludo desde Coquimbo, IV Region, Chile



Imprimir página | Cerrar ventana