clases, docentes, asignaciones y calendario

Estoy tratando de auto-cargar los datos de las clases de los docentes…

En grandes rasgos tengo estas tablas:

  • sga_asign_clases (comision, asignacion, tipo_clase, periodicidad, cantidad_horas)
  • sga_tipo_clase (tipo_clase, descripcion)
  • sga_tipo_clase_com (tipo_clase, comision, obligatoria)
  • sga_docentes (legajo, unidad_academica, nro_inscripcion)
  • sga_docentes_com (comision, legajo, responsabilidad, hs_consulta, hs_tutoria, hs_clases_teoricas, hs_clases_practica, hs_examen, hs_preparacion, hs_campo, hs_campo)
  • sga_docentes_clase (clase, legajo, responsabilidad)
  • sga_calendcursada (clase, comision, asignacion, fecha, valido, motivo, tema, tema_previsto, horas_dictadas, legajo_doc_resp)

estoy viendo si es posible que a partir de las asignaciones, si cuando agregamos los docentes se puede autogenerar el calendario de cursada y cargar la info básica de las clases de manera automática.

pero no me cierra el concepto responsabilidad… en algunas tablas se define de tipo integer y en otras de tipo char(1).

¿hay documentación de esto? ¿alguien me puede dar una mano guía?

Que queres decir con “autogenerar el calendario de cursada” cuando se agrega un docente a la comision?
Si un docente se agrega a la comisión, esto no tiene impacto en las clases de la comisión es decir en las bandas horarias definidas en esa comision. Solo se registra en la tabla sga_docentes_com. La responsabilidad representa la funcion que cumple ese docente en esa cursada. La tabla de responsabilidades docentes es sga_responsab_doc y el dato es de tipo integer. Uds pueden dar de alta responsabilidades docentes y quitar aquellas que no usen solo en el caso que no hayan sido usadas en ninguna comision.

no me queda en claro cual es la diferencia de las responsabilidades definidas integer y las responsabilidades definidas char(1)… estas últimas no se donde están definidas.

char(1): sga_docentes_cated, sga_docentes_dpto, sga_docentes_clase
integer: sga_responsab_doc, sga_docentes_com

con lo de auto-cargar me refiero a llenar la tabla sga_docentes_clase (y toda otra tabla que haga falta para que pueda cargarla) con los datos mínimos y necesarios…

Creo que fue una definicion de esa tabla que quedo mal definida, tenia que ser integer y se definió como char(1).

por favor… así actualizo el tipo de datos y corrijo la referencia de todas con sga_responsab_doc. ¿me podrán confirmar que todas las tablas mencionadas se refieren a lo mismo?

no lo actualizo hasta que no me confirmen que se refieren al mismo tipo de responsabilidad… pero si está OK les dejo la modificación:

ALTER TABLE sga_docentes_cated MODIFY responsabilidad INTEGER NOT NULL;
ALTER TABLE sga_docentes_dpto MODIFY responsabilidad INTEGER NOT NULL;
ALTER TABLE sga_docentes_clase MODIFY responsabilidad INTEGER NOT NULL;

ALTER TABLE sga_docentes_cated ADD CONSTRAINT (FOREIGN KEY (responsabilidad) REFERENCES sga_responsab_doc CONSTRAINT fk_doc_cat_respon);
ALTER TABLE sga_docentes_dpto ADD CONSTRAINT (FOREIGN KEY (responsabilidad) REFERENCES sga_responsab_doc CONSTRAINT fk_doc_dpto_respon);
ALTER TABLE sga_docentes_clase ADD CONSTRAINT (FOREIGN KEY (responsabilidad) REFERENCES sga_responsab_doc CONSTRAINT fk_doc_clase_respon);