Docentes duplicados en Guarani 3.18.0

Hola buenos días, tenemos algunos casos de docentes duplicados, estuvimos indagando aquí en el foro para ver si había casos parecidos a lo cual encontramos pero ninguno con resolución podrían compartirnos la solución? Ademas requeriría acceso al GDS de Guarani.

Desde ya muchas gracias

Buenos días Marcos!

El problema es el mismo que publicaste en este hilo? Si es así lo seguimos por allí. Ale ya les hizo algunas consultas.

Respecto a los permisos de GDS, la idea es que la comunicación por dicha vía sea con el equipo de trabajo central, por lo que en principio su uso solo se habilita para el responsable de proyecto y los referentes. Si requieren que les brindemos permisos de uso del GDS a algún otro usuario debe solicitarlo el responsable del proyecto o algunos de los referentes.

Saludos!

2

Hola Marcos, agrego a lo de Martín:

Desde la versión 3.16.2 (https://redmine.siu.edu.ar/redmine/issues/21809) ya no permite docentes duplicados, muestra el error “Ya existe un docente asociado a la persona seleccionada.” en la operación Administrar Docentes.

¿quedaron duplicados por algún proceso de migración?

Proba las soluciones que propone Ale en el foro que paso Martín.

Un docente puede tener registro de mas de un legajo docente, pero solo uno puede estar Activo, los demás legajos deben estar dados de Baja.

saludos.
2

Hola buenos días los datos duplicados fueron descubiertos después de una migración. Asique ahora reviso los hilos que me indican asi veo esos casos pero son al rededor de 215 docentes que están duplicados.

En cuanto al GDS que indican voy a hablar con mi responsable de proyecto.

Hola Marcos, mas de un registro con el mismo “legajo” y “persona” en la tabla sga_docentes?
No hay script, pero se puede hacer

Te había contestado en el otro Hilo :

es este el caso, el docente existe dos veces en la tabla sga_docentes y estamos viendo como hacer una función porque son al rededor de 215 docentes que tenemos con el mismo caso. La idea que teníamos era actualizar en las tablas la identificación mas baja del docente y una vez modificado eso borrar el registro del docente con la identificación mas alta, pero nos arrojaba errores en Forening key con otras tablas, asique estamos viendo bien la relación de las tablas, por eso mismo consultamos por el script que hablan en los hilos para hacer ese proceso o al menos usar de referencia.

Te adjunto información con la función que estamos queriendo hacer.


FuncionesSQL-sola.sql (2.44 KB)

Marcos, tenemos una funcion (util_cambiar_docente) para cambiar un docente por otro, es decir si un docente tiene dos registros de legajos (docente = 20 y docente = 25), poder reemplazar en todas las tablas de la base donde se use el docente 25 por el 20).
Esto te soluciona el tema de las fk. Luego deberias dejar solo el registro del docente 20 con el estado activo y el docente 25 lo borras o le cambias el estado a Baja.

Genial y como solicito el script ?

Carga una solicitud haciendo referencia a este foro. Pedi el script de la funcion util_cambiar_docente.sql
Esta funcion la debes correr por cada docente y elegir previamente cual de los ids de docentes dejas.
Podrias armar la ejecucion de esta funcion con lo siguiente:


SELECT 
'SELECT * FROM util_cambiar_docente (' || t.docente_max::text || ',' || t.docente_min::text || ',true);'
FROM mdp_personas as p 
JOIN 
  (SELECT min(docente) as docente_min, max(docente) as docente_max , persona
  FROM sga_docentes 
  GROUP BY persona
  HAVING COUNT(*) > 1
  ) as t  ON t.persona = p.persona 

se continua via gds 55475, donde se envia script.