[Php-avanzado] Normalizacion

pablo beroiza beroiza.pablo en gmail.com
Mar Dic 13 12:02:45 ART 2011


Leo! Aca te mando las correcciones de la BD. Esta estaba con motor InnoDB
por que era la opcion por defecto, tambien lo cambie a MyISAM.
Te hago dos consultas. En la tabla "planes" el campo de hora_por_dia tiene
que ser "TIME" o "DATETIME"?. Estaba como "INT" pero no se podria ingresar
1:20. La otra consulta es por las siguientes fechas para rendir el examen
recuperatorio. ¿15 y/o 20 de Diciembre?

Saludos,

El 12 de diciembre de 2011 23:16, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:

> Hola Pablo,
>
>        recién puedo ver esto.
>
>        Te paso unas correcciones:
>
> - en asistencias, si bien tal y como pusiste hace falta guardar el
> nombre del taller y del plan, también guardá los IDs de ambas cosas,
> porque si no no se pueden distinguir homónimos.
>        Las horas y las fechas, si no entiendo mal lo que estás planteando,
> te
> va a dar problemas así (además de que no respeta la normalización.
> Deberías tener un campo hora_entrada y otro hora_salida de tipo
> datetime, y no extra de tipo fecha.
>        Si después no lo querés mostrar así, lo parseás y lo mostrás
> diferente... la visualización de la información siempre es acomodable.
>
> - en faltas_justificadas te falta el id_evento, y te sobra nombre y
> apellido del alumno: como los registrás, no se pueden borrar, y como en
> "asistencias" no tiene sentido el campo.
>
> - en planes, renombrá el campo hora_por-dia a hora_por_dia... ese guión
> te va a traer 4 dolores de cabeza...
>
>        El resto se ve bien!
>
>         Para qué usás formato InnoDB si no definís ninguna integridad
> referencial ?
>
>
>        Saludos!
>
>
> El vie, 02-12-2011 a las 11:33 -0300, pablo beroiza escribió:
> > Leo! Te adjunto el archivo .sql.
> >
> >
> > Saludos!!!
> >
> > El 30 de noviembre de 2011 16:17, Leonardo Tadei - Pegasus Tech Supply
> > <leonardot en pegasusnet.com.ar> escribió:
> >         Hola Pablo,
> >
> >         El dom, 27-11-2011 a las 17:34 -0300, pablo beroiza escribió:
> >         > Hola Leo! Te envio las correcciones. Reemplace el nombre de
> >         la entidad
> >         > "CURSO" por "PROMOCION" nose si es la adecuada, si no,
> >         tirame unos
> >         > nombres y la cambio.
> >
> >
> >                "Promoción" a mi me suena mucho mejor que "Curso".
> >                Tal vez revolviendo un poco surja una palabra mejor,
> >         pero no manejo
> >         tanto el lenguaje escolar para sugerir una ahora :(
> >
> >
> >                La Normalización se ve bien y acorde con la SRS.
> >                La guardo para futura referencia.
> >
> >                Adelante con las pantallas y con la lógica de la
> >         aplicación!
> >
> >
> >         PD: si querés, enviame una exportación de las tablas creadas
> >         para ver
> >         los tipos de campos que usaste.
> >
> >
> >         > Saludos!
> >         >
> >         >
> >         > Control de entrada y salida
> >         >
> >         >
> >         > Este sistema se realiza con el fin de optimizar el proceso
> >         de
> >         > recoleccion, actualizacion y administracion de los datos de
> >         hora
> >         >
> >         >
> >         > de entrada y hora de salida de cada taller.
> >         > La realizacion de este sitema se basa en la creciente
> >         necesidad de
> >         > gestionar la informacion desde cualquier pc en la intranet.
> >         > Los usuarios finales obtendran al usar este producto la
> >         ventaja de
> >         > tener la informacion de las horas trabajadas en el momento
> >         >
> >         >
> >         > y lugar que se requiera por intermedio de una aplicacion
> >         web.
> >         >
> >         >
> >         > Requerimientos funcionales
> >         >
> >         >
> >         > 1 - El sistema debe gestionar jefes.
> >         > 2 - El sistema debe gestionar talleres con su jefe[1].
> >         > 3 - El sistema debe gestionar planes.
> >         > 4 - El sistema debe gestionar promocines
> >         > 5 - El sistema debe registrar alumnos con sus talleres[2] ,
> >         su
> >         > plan[3], su promocion[4].
> >         > 6 - El sistema debe modificar alumnos con sus talleres[2] ,
> >         su
> >         > plan[3], su promocion[4].
> >         > 7 -  El sistema debe gestionar dias no laborables.
> >         > 8 - El sistema debe gestionar periodos de tiempo.
> >         > 9 - El sistema debe registrar asistencia de los alumnos.
> >         > 10 - El sistema debe mostrar las horas trabajadas por
> >         alumno.
> >         > 11 - El sistema debe gestionar eventos.
> >         > 12 - El sistema debe registrar las faltas justificadas con
> >         su
> >         > evento[10], por alumno.
> >         > 13 - El sistema debe manejar promocion de un curso.
> >         >
> >         >
> >         > Requerimientos no funcionales
> >         >
> >         >
> >         > 1 - El ingreso al sistema estara restringido por usuario y
> >         contraseña.
> >         >
> >         >
> >         > Diccionario
> >         >
> >         >
> >         > JEFESTALLERES (nombre, apellido, fecha_nac)
> >         > TALLERES (nombre, jefe)
> >         > PROMOCIONES (nombre) Nivel de secundario (Ej.1º,2º, 5°,
> >         pase,
> >         > egresadoetc)
> >         > PLANES (nombre, hora_por_dia) Los alumnos cumplen horas
> >         independiente
> >         > de los talleres que asisten.
> >         > PERIODOS (fecha_inc, fecha_fin) Fecha predefinida para una
> >         consulta
> >         > (Ej. 01/02/211 - 30/05/2011)
> >         > FERIADOS (fecha,nombre) Dias que no se sumarian
> >         > ALUMNOS (nombre, apellido, fecha_nac, taller, fecha_ingreso,
> >         plan,
> >         > curso, alumno_activo)
> >         > ASISTENCIAS (alumno, taller, plan, hora_entrada,
> >         hora_salida,
> >         > comentario,)
> >         > EVENTOS (nombre) Nombre de la falta (Ej. campamento, salida
> >         coro, etc)
> >         > FALTAS_JUSTIFICADAS (alumno, fecha, evento)
> >         >
> >         >
> >         >
> >         >
> >         > Cardinalidad
> >         > TALLERES 1------1 JEFESTALLERES
> >         > TALLERES N------M ALUMNOS
> >         > CURSOS 1--------N ALUMNOS
> >         > PLANES 1--------N ALUMNOS
> >         > EVENTOS 1------1 FALTAS_JUSTIFICADAS
> >         >
> >         >
> >         > Normalizacion:
> >         >
> >         >
> >         > EVENTOS (id_evento, nombre)   FALTAS_JUSTIFICADAS
> >         (id_falta_just,
> >         > nombre_evento, alumno, fecha )
> >         >
> >         >
> >         > PERIODOS (id_periodo, fecha_inc, fecha_fin)   FERIADOS
> >         (id_feriado,
> >         > fecha, nombre)
> >         >
> >         >
> >         > JEFESTALLERES (id_jefe_taller, nombre, apellido, fecha_nac)
> >          TALLERES
> >         > (id_taller, id_jefe_taller, nombre )
> >         >
> >         >
> >         > PROMOCIONES  (id_curso, nombre)  PLANES (id_plan, nombre,
> >         > hora_por_dia)
> >         >
> >         >
> >         > TALLER_ALUMNO (id_taller_alumno, id_taller, id_alumno)
> >         Entidad que une
> >         > "alumnos" y "talleres"
> >         >
> >         >
> >         > ALUMNOS (id_alumno, nombre, apellido, fecha_nac,
> >         fecha_ingreso,
> >         > id_plan, id_curso, alumno_activo)
> >         >
> >         >
> >         > ASISTENCIAS(id_asistencia, id_alumno, taller, nombre_plan,
> >         > Horas_por_dia, hora_entrada, hora_salida, comentario)
> >         >
> >         > El 25 de noviembre de 2011 22:16, Leonardo Tadei - Pegasus
> >         Tech Supply
> >         > <leonardot en pegasusnet.com.ar> escribió:
> >         >         Hola Pablo,
> >         >
> >         >         El vie, 25-11-2011 a las 12:29 -0300, pablo beroiza
> >         escribió:
> >         >         > Hola Leo! Mando la normalización con los cambios
> >         que
> >         >         charlamos el
> >         >         > Jueves. Hay una cosa que no entendi con respecto a
> >         las
> >         >         promociones de
> >         >         > los alumnos, si había que ponerle un atributo mas
> >         a la
> >         >         entidad
> >         >         > "ALUMNO". Si me lo podes explicar lo hago.
> >         >
> >         >
> >         >                No era un atributo más al alumno. Lo que
> >         charlamos fue
> >         >         sobre
> >         >         generalizar (y ponerle un nombre más adecuado) a la
> >         tabla
> >         >         Cursos para
> >         >         que puedan contener 1ro, 2do, 3ro, 4to, 5to, Pase y
> >         Egresado,
> >         >         de manera
> >         >         tal de poder mantener el registro de las horas de
> >         los talleres
> >         >         incluso
> >         >         para alumnos que egresen o que cambien de escuela.
> >         >
> >         >                Pasando a la normalización, a la tabla
> >         Alumnos le sobra
> >         >         el campo
> >         >         id_taller: si es una relación N-M se almacena tal y
> >         como
> >         >         hiciste en una
> >         >         tabla aparte, ergo el campo no tiene sentido en la
> >         tabla
> >         >         Alumnos.
> >         >
> >         >                El resto se ve bien!
> >         >
> >         >                Con estos ajustes, la versión que viene
> >         debería ser la
> >         >         última!!
> >         >
> >         >
> >         >         >
> >         >         > Control de entrada y salida
> >         >         >
> >         >         >
> >         >         > Este sistema se realiza con el fin de optimizar el
> >         proceso
> >         >         de
> >         >         > recoleccion, actualizacion y administracion de los
> >         datos de
> >         >         hora de
> >         >         > entrada y hora de salida de cada taller.
> >         >         > La realizacion de este sitema se basa en la
> >         creciente
> >         >         necesidad de
> >         >         > gestionar la informacion desde cualquier pc en la
> >         intranet.
> >         >         > Los usuarios finales obtendran al usar este
> >         producto la
> >         >         ventaja de
> >         >         > tener la informacion de las horas trabajadas en el
> >         momento y
> >         >         lugar que
> >         >         > se requiera por intermedio de una aplicacion web.
> >         >         >
> >         >         >
> >         >         > Requerimientos funcionales
> >         >         >
> >         >         >
> >         >         > 1 - El sistema debe gestionar jefes.
> >         >         > 2 - El sistema debe gestionar talleres con su
> >         jefe[1].
> >         >         > 3 - El sistema debe gestionar planes.
> >         >         > 4 - El sistema debe gestionar cursos.
> >         >         > 5 - El sistema debe registrar alumnos con sus
> >         talleres[2] ,
> >         >         su
> >         >         > plan[3], su curso[4].
> >         >         > 6 - El sistema debe modificar alumnos con sus
> >         talleres[2] ,
> >         >         su
> >         >         > plan[3], su curso[4].
> >         >         > 7 -  El sistema debe gestionar dias no laborables.
> >         >         > 8 - El sistema debe gestionar periodos de tiempo.
> >         >         > 9 - El sistema debe registrar asistencia de los
> >         alumnos.
> >         >         > 10 - El sistema debe mostrar las horas trabajadas
> >         por
> >         >         alumno.
> >         >         > 11 - El sistema debe gestionar eventos.
> >         >         > 12 - El sistema debe registrar las faltas
> >         justificadas con
> >         >         su
> >         >         > evento[10], por alumno.
> >         >         > 13 - El sistema debe manejar promocion de un
> >         curso.
> >         >         >
> >         >         >
> >         >         > Requerimientos no funcionales
> >         >         >
> >         >         >
> >         >         > 1 - El ingreso al sistema estara restringido por
> >         usuario y
> >         >         contraseña.
> >         >         >
> >         >         >
> >         >         > Diccionario
> >         >         >
> >         >         >
> >         >         > JEFESTALLERES (nombre, apellido, fecha_nac)
> >         >         > TALLERES (nombre, jefe)
> >         >         > CURSOS (nombre) Nivel de secundario (Ej.1º,2º,
> >         etc)
> >         >         > PLANES (nombre, hora_por_dia) Los alumnos cumplen
> >         horas
> >         >         independiente
> >         >         > de los talleres que asisten.
> >         >         > PERIODOS (fecha_inc, fecha_fin) Fecha predefinida
> >         para una
> >         >         consulta
> >         >         > (Ej. 01/02/211 - 30/05/2011)
> >         >         > FERIADOS (fecha,nombre) Dias que no se sumarian
> >         >         > ALUMNOS (nombre, apellido, fecha_nac, taller,
> >         fecha_ingreso,
> >         >         plan,
> >         >         > curso, alumno_activo)
> >         >         > ASISTENCIAS (alumno, taller, plan, hora_entrada,
> >         >         hora_salida,
> >         >         > comentario,)
> >         >         > EVENTOS (nombre) Nombre de la falta (Ej.
> >         campamento, salida
> >         >         coro, etc)
> >         >         > FALTAS_JUSTIFICADAS (alumno, fecha, evento)
> >         >         >
> >         >         >
> >         >         >
> >         >         >
> >         >         > Cardinalidad
> >         >         > TALLERES 1------1 JEFESTALLERES
> >         >         > TALLERES N------M ALUMNOS
> >         >         > CURSOS 1--------N ALUMNOS
> >         >         > PLANES 1--------N ALUMNOS
> >         >         > EVENTOS 1------1 FALTAS_JUSTIFICADAS
> >         >         >
> >         >         >
> >         >         > Normalizacion:
> >         >         >
> >         >         >
> >         >         > EVENTOS (id_evento, nombre)   FALTAS_JUSTIFICADAS
> >         >         (id_falta_just,
> >         >         > nombre_evento, alumno, fecha )
> >         >         >
> >         >         >
> >         >         > PERIODOS (id_periodo, fecha_inc, fecha_fin)
> >         FERIADOS
> >         >         (id_feriado,
> >         >         > fecha, nombre)
> >         >         >
> >         >         >
> >         >         > JEFESTALLERES (id_jefe_taller, nombre, apellido,
> >         fecha_nac)
> >         >          TALLERES
> >         >         > (id_taller, id_jefe_taller, nombre )
> >         >         >
> >         >         >
> >         >         > CURSOS  (id_curso, nombre)  PLANES (id_plan,
> >         nombre,
> >         >         hora_por_dia)
> >         >         >
> >         >         >
> >         >         > TALLER_ALUMNO (id_taller_alumno, id_taller,
> >         id_alumno)
> >         >         Entidad que une
> >         >         > "alumnos" y "talleres"
> >         >         >
> >         >         >
> >         >         > ALUMNOS (id_alumno, nombre, apellido, fecha_nac,
> >         id_taller,
> >         >         > fecha_ingreso, id_plan, id_curso, alumno_activo)
> >         >         >
> >         >         >
> >         >         > ASISTENCIAS(id_asistencia, id_alumno, taller,
> >         nombre_plan,
> >         >         > Horas_por_dia, hora_entrada, hora_salida,
> >         comentario)
> >         >         >
> >         >         >
> >         >
> >         >         > _______________________________________________
> >         >         > Php-avanzado mailing list
> >         >         > Php-avanzado en pato2.fi.mdp.edu.ar
> >         >         >
> >         >
> >         http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >         >
> >         >         --
> >         >         Leonardo Tadei
> >         >         leonardot en pegasusnet.com.ar
> >         >         Blog: http://blog.pegasusnet.com.ar
> >         >         Firma pública:
> >         >
> >         http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> >         >
> >         >         _______________________________________________
> >         >         Php-avanzado mailing list
> >         >         Php-avanzado en pato2.fi.mdp.edu.ar
> >         >
> >         http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >         >
> >         > _______________________________________________
> >         > Php-avanzado mailing list
> >         > Php-avanzado en pato2.fi.mdp.edu.ar
> >         >
> >         http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >         --
> >         Leonardo Tadei
> >         leonardot en pegasusnet.com.ar
> >         Blog: http://blog.pegasusnet.com.ar
> >         Firma pública:
> >         http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> >
> >         _______________________________________________
> >         Php-avanzado mailing list
> >         Php-avanzado en pato2.fi.mdp.edu.ar
> >         http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >
> >
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
> --
>
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> Pegasus Tech Supply
> Tel: (+54)(+223) 471-2880
> La Salle 1131 - Mar del Plata - Argentina
> http://www.pegasusnet.com.ar / http://blog.pegasusnet.com.ar
> http://www.prometeustech.com.ar / http://www.grupopegasus.com
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20111213/8f4972b2/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: asistencia.sql
Type: application/octet-stream
Size: 6623 bytes
Desc: no disponible
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20111213/8f4972b2/attachment-0001.obj>


Más información sobre la lista de distribución Php-avanzado