Control de Asistencia alumnos


([N1] wmejiaro) #1

Que tal amigos:

Tengo una tabla de matrículas donde están todos los alumnos quiero efectuar el control de asistencias para lo cual tengo una tabla asistencias enlazado a matrículas habría 2 posibilidades:
1.- La tabla asistencias con los campos ID, alumnos, fecha, asistencia<asistió, tardanza, falta>
2.- La tabla asistencias con ID, alumnos, 0301, 0302, … 0331, … 1201, 1202, …1231 //donde 03=marzo, 01=el día. Con los valores <asistió, tardanza, falta>

Cual de las 2 formas es la mas acertada tanto como BD y también para los objetos visuales, o quizás cabría un enfoque diferente?

Gracias mil


([N4] Infortic) #2

Lo más sencillo es usar campo fecha, ya que podrás usar cualquier función de de fechas, control de edición de fechas con calendario, etc sin tener que hacer transformación, las ordenaciones funcionan correctamente por el tipo fecha, etc…

De todas formas puedes guardarte los dos campos, tu usas el campo fecha y el otro se autocalcula.

Campo FECHA: Fecha
Campo: FECHA_TXT: Alfabético con contenido inicial dateToString(#FECHA,“yyyyMMdd”)

Si quieres después hacer informes agrupando por mes, semana, trimestre …, es planteable crearte campos #SEM, #MES, #TRIM calculados con contenido inicial desde el campo #FECHA, ocupan más espacio, pero hará que se pueda agrupar de forma más sencilla (aunque como digo, menos optimizado en cuanto a espacio de bbdd ocupado).


([N4] victorgt) #3

Hombre, no se, pero yo lo haria asi:

  • Tabla Cursos (maestra).
  • Tabla Alumnos (maestra).
  • Tabla Matriculas.
  • Tabla Asistencias.

En Matriculas pondria los campos ID, ENLACE_ALUMNO, ENLACE_CURSO
En Asistencias pondria los campos ID, ENLACE_MATRICULA, DIA, HORA_INICIO, HORA_FIN.

Sin perjuicio de que puedas poner algun campo mas. Pero piensa con cuidado en que tabla debera ir.

Saludos.


([N1] wmejiaro) #4

Muchas gracias por responder:
victorgt: Si efectivamente así lo tengo las relaciones entre tablas, aunque por error puse alumnos en vez de matrícula
Infortic: Si me parece mas factible hacer como me indicas.

Haciendo un análisis si son 23 días cada mes y 10 meses teniendo 400 alumnos son como 92,000 registros al año frente a la opción 2 que serían solo 400 registros por año aunque las dificultades de presentar los datos y procesar son algo complicados, por eso era mi duda para una licencia vExpress.