Estamos en una implementación atípica (no es una universidad) y por un desconocimiento del negocio inicialmente, se usaron períodos lectivos de 1 mes (Marzo 2013, Abril 2013 y Mayo 2013) para los cursos a dictar, pero rápidamente se verificó que eso no era conveniente y si bien los cursos son breves (1 semana, 1 mes, etc.) se decidió usar 2 períodos lectivos en el año, 1er. Semestre y 2do. Semestre.
Ahora se desea borrar esos períodos cargados de 1 mes, luego de haber pasado los cursos (comisiones) con sus alumnos inscriptos, de los períodos mensuales al período 1er. Semestre.
Es obvio que esto solo se puede hacer por SQL. En Guaraní 2 solo sería necesario modificar el período lectivo en la tabla sga_comisiones y luego borrar el período lectivo. En Guaraní 3, que es lo que debo modificar? Que tablas están involucradas?
Crearlos periodos lectivos que vas a asignar a las comisiones
Cambiar el periodo lectivo en las comisiones (sga_comisiones.periodo_lectivo)
Borrar los periodos lectivos que ya no usas mas (Tablas: sga_periodos_lectivos, sga_periodos). Podes buscar los ids consultando la vista vw_periodos_lectivos.
Si crearon periodos de inscripcion a esos periodos lectivos tambien deberias borrarlos asi te permite borrar los periodos lectivos (sga_periodos_inscripcion, sga_periodos_inscripcion_fechas, … ). Tal vez esto lo puedas hacer por sistema.
Los periodos lectivos erroneos se cambiaron sin problema en la tabla sga_comisiones, pero cuando intento borrarlos en las tablas “sga_periodos” y “sga_periodos_lectivos” me da el sgte. error:
ERROR: update o delete en «sga_periodos» viola la llave foránea «fk_sga_periodos_inscripcion_sga_periodos» en la tabla «sga_periodos_inscripcion»
DETAIL: La llave (periodo)=(1) todavía es referida desde la tabla «sga_periodos_inscripcion».
Cuando quiero borrar los periodos de inscripcion invalidos de la tabla “sga_periodos_inscripcion” no me permite:
ERROR: update o delete en «sga_periodos_inscripcion» viola la llave foránea «fk_sga_per_insc_modalidad_sga_periodos_inscripcion» en la tabla «sga_per_insc_modalidad»
DETAIL: La llave (periodo_inscripcion)=(2) todavía es referida desde la tabla «sga_per_insc_modalidad».