Como Bloquear registros En Un Formulario

Buenas tardes
Tengo una Base de Datos de Un Colegio el caso es que tengo un formulario en el cual se ingresan las notas de los estudiantes.
Lo que nicesito es que no se puedan modificar las notas del primer periodo y si las del segundo periodo.
Cada period consta de 8 Materias y existen 4 periodos en el formulario.
Cada uno de los periodos tiene un campo llamado Periodo Cerrado con dos valores (1 = Abierto) y (2 = Cerrado)
Como bloque las materias ya calificadas de ese registro y poder actualizar las notas de los otros periodos sin problemas y utilizando el valor del campo Cerrado
Gracias por la Respuesta
Desde Colombia tierra Querida Pero Sufrida

1 respuesta

Respuesta
1
En el evento Al activar registro, estableces la propiedad locked de los controles del periodo en función del valor del PeriodoCerrado.
Yo utilizaris controles que permitieran saber de que periodo hablamos y, ademas los numeraria. Algo así:
TxtPer1Mat1 --> Periodo 1, Materia 1
También supongo que tienes tantos controles PeriodoCerrado como periodos y que están numerados:
PeriodoCerrado1, PeriodoCerrado2, etc
Partiendo de esa base, en el evento Current, pondría algo así:
Me!txtPer1Mat1.Locked = Iif(Me!PeriodoCerrado1 = 2, True, False)
Repite por cada Mat (8 lineas) y, después, por cada Per (4 bloques). Ello debería representar 32 lineas de código.
Un ejemplo de "acortar"
Dim i As Integer, j As Integer
For i = 1 To 4 ' los periodos
  For j = 1 To 8 ' las materias
    Me("txtPer" & i & "Mat" & j).Locked = CBool(Me("PeriodoCerrado" & i) - 1)
  Next j
Next i

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas