Access - CODIGO

 
Vista:

CODIGO

Publicado por Charly (113 intervenciones) el 17/09/2004 17:20:33
HOLA que tal necesito un codigo para bloquear registro en un formulario donde donde cada dia no se pueda introducir mas de 3 registro para cada hora.
por favor que este detallado soy nuevo en esto.
gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

CODIGO

Publicado por Alejandro (4142 intervenciones) el 11/05/2023 19:45:42
Para bloquear la introducción de más de 3 registros por hora en un formulario en Access, puedes utilizar el evento `BeforeInsert` del formulario junto con una consulta que verifique la cantidad de registros existentes para la hora actual. Aquí tienes un ejemplo de cómo podrías implementarlo:

1. Abre el formulario en el modo de diseño en Access.
2. Haz clic derecho en el encabezado del formulario y selecciona "Ver código".
3. En el editor de código, agrega el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub Form_BeforeInsert(Cancel As Integer)
    Dim strSQL As String
    Dim dtCurrentHour As Date
    Dim intRecordCount As Integer
 
    ' Obtener la hora actual
    dtCurrentHour = Time
 
    ' Construir la consulta para contar los registros existentes para la hora actual
    strSQL = "SELECT COUNT(*) AS RecordCount FROM NombreDeTuTabla WHERE Hour(TuCampoDeHora) = Hour(#" & dtCurrentHour & "#)"
 
    ' Ejecutar la consulta y obtener el número de registros
    intRecordCount = DCount("*", "NombreDeTuTabla", "Hour(TuCampoDeHora) = Hour(#" & dtCurrentHour & "#)")
 
    ' Verificar si se han superado los 3 registros
    If intRecordCount >= 3 Then
        MsgBox "Se ha alcanzado el límite de registros para esta hora. No se puede ingresar más.", vbExclamation
        Cancel = True ' Cancelar la inserción del nuevo registro
    End If
End Sub

Asegúrate de reemplazar "NombreDeTuTabla" con el nombre de la tabla en la que deseas realizar la verificación, y "TuCampoDeHora" con el nombre del campo que almacena la hora en cada registro.

Con este código, cada vez que intentes agregar un nuevo registro en el formulario, se verificará la cantidad de registros existentes para la hora actual y se cancelará la inserción si ya se han ingresado 3 registros.

Recuerda que debes guardar el formulario después de agregar el código para que entre en vigencia.

Espero que esto te ayude a bloquear la introducción de más de 3 registros por hora en tu formulario en Access.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar