Error al imprimir acta de cursado pos migracion de 2.9.2 a 3.13.0

Buen día,

Luego de utilizar los script de migración a la versión 3.13.0 desde Guaraní 2.9.2, haciendo un control de datos migrados nos topamos con el siguiente ERROR al querer imprimir un acta de cursado en Guaraní 3.13.0. Adjunto imagen.

Intentamos debuguearlo por medio de Toba Editor pero no tuvimos éxito, no logramos encontrar donde arma esa consulta para ver la calidad de los datos y poder detectar el error.

Alguna idea de por donde buscar???

Gracias


Error_migracion_2.9.2_3.13.0.png

Error_migracion_2.9.2_3.13.0.png

Buenos días, podrías contarnos como fue que llego esté error?

Apenas ingresas a la operación ya sale el error.?
Podes fijarte en el los logs de apache y también adjuntar una captura pero mostrando que info trae cuando das click en el link mas info…

Con eso podemos ayudarte en la respuesta que podamos brindarte.

Saludos.

Buen dia,

Revienta justo en la pantalla donde deberiamos previsualizar el acta, los errores en el log son:

[Fri Jun 30 09:26:52.939714 2017] [:error] [pid 966] [client 10.0.2.2:51078] SQLSTATE[42601]: Syntax error: 7 ERROR:  error de sintaxis en o cerca de \xab)\xbb\nLINE 3:     WHERE  sga_propuestas_ra.propuesta IN () -- toba_log: 22...\n                                                   ^, referer: http://localhost:8896/guarani/aplicacion.php?ah=st59564382696a93.22945103&ai=guarani%7C%7C34000021
[Fri Jun 30 09:26:52.956084 2017] [:error] [pid 966] [client 10.0.2.2:51078] toba_error_db: <p><b>SQLSTATE:</b> db_42601</p><p><b>CODIGO:</b> 7</p><p><b>MENSAJE:</b> ERROR:  error de sintaxis en o cerca de \xab)\xbb\nLINE 3:     WHERE  sga_propuestas_ra.propuesta IN () -- toba_log: 22...\n                                                   ^</p><p><b>SQL:</b> SELECT \tDISTINCT responsable_academica\r\n\t\t\t\tFROM \tsga_propuestas_ra\r\n\t\t\t\tWHERE \tsga_propuestas_ra.propuesta IN () -- toba_log: 221077203 </p>\n\n[TRAZA]exception 'toba_error_db' with message 'Un car\xe1cter, s\xedmbolo o cl\xe1usula no es v\xe1lida o no se encuentra.' in /usr/local/siu/guarani/lib/toba/php/lib/db/toba_db.php:394\nStack trace:\n#0 /usr/local/siu/guarani/php/nucleo/_lib/guarani_db_nucleo.php(28): toba_db->consultar('SELECT \\tDISTINC...', 2)\n#1 /usr/local/siu/guarani/php/nucleo/ug/responsables_academicas/responsables_academicas/co_responsables_academicas.php(370): guarani_db_nucleo::consultar('SELECT \\tDISTINC...')\n#2 /usr/local/siu/guarani/php/nucleo/cursadas/actas/cn_ent_acta_cursada.php(18): co_responsables_academicas->get_pro...SIGUE..., referer: http://localhost:8896/guarani/aplicacion.php?ah=st59564382696a93.22945103&ai=guarani%7C%7C34000021
[Fri Jun 30 09:26:53.018866 2017] [:error] [pid 966] [client 10.0.2.2:51078] guarani_error_params: Los atributos para el nivel <strong>Propuesta</strong> no han sido especificados \n\n[TRAZA]exception 'guarani_error_params' with message 'Los atributos para el nivel <strong>Propuesta</strong> no han sido especificados' in /usr/local/siu/guarani/php/nucleo/_lib/guarani_nucleo.php:137\nStack trace:\n#0 /usr/local/siu/guarani/php/nucleo/_lib/cache/cache_parametros.php(285): guarani_nucleo::error_params('Los atributos p...')\n#1 /usr/local/siu/guarani/php/nucleo/_lib/guarani_parametros_nucleo.php(222): cache_parametros->get_atributos_operacion('800SIUCUR019', 4)\n#2 /usr/local/siu/guarani/php/operaciones/cursadas/actas/imprimir/ci_nav_imprimir_actas_comision.php(268): guarani_parametros_nucleo->get_valor('cur_carga_manua...')\n#3 [internal function]: ci_nav_imprimir_actas_comision->conf__previsualizacion(Object(pant_impresion))\n#4 /usr/local/siu/guarani/lib/toba/php/nucleo/componentes/toba_componente.php(221): call_user_func_array(Array, Array)\n#5 /usr/local/siu/guarani/lib/toba/php/nu...SIGUE..., referer: http://localhost:8896/guarani/aplicacion.php?ah=st59564382696a93.22945103&ai=guarani%7C%7C34000021

Quedo a la espera. Gracias

Creo que ya encontré tu error.
Entra en los parámetros del sistema, y busca el parámetro cur_carga_manual_libro_promocion.
Este parámetro por lo que entiendo tiene que ser definido.
Setealo para que puedas ver si el error se debe a ello. En la última línea de lo que me posteaste esta esa info.

[Fri Jun 30 09:26:53.018866 2017] [:error] [pid 966] [client 10.0.2.2:51078] guarani_error_params: Los atributos para el nivel Propuesta no han sido especificados \n\n[TRAZA]exception ‘guarani_error_params’ with message ‘Los atributos para el nivel Propuesta no han sido especificados’ in /usr/local/siu/guarani/php/nucleo/_lib/guarani_nucleo.php:137\nStack trace:\n#0 /usr/local/siu/guarani/php/nucleo/_lib/cache/cache_parametros.php(285): guarani_nucleo::error_params(‘Los atributos p…’)\n#1 /usr/local/siu/guarani/php/nucleo/_lib/guarani_parametros_nucleo.php(222): cache_parametros->get_atributos_operacion(‘800SIUCUR019’, 4)\n#2 /usr/local/siu/guarani/php/operaciones/cursadas/actas/imprimir/ci_nav_imprimir_actas_comision.php(268): guarani_parametros_nucleo->get_valor(‘cur_carga_manua…’)\n#3 [internal function]: ci_nav_imprimir_actas_comision->conf__previsualizacion(Object(pant_impresion))\n#4 /usr/local/siu/guarani/lib/toba/php/nucleo/componentes/toba_componente.php(221): call_user_func_array(Array, Array)\n#5 /usr/local/siu/guarani/lib/toba/php/nu…SIGUE…, referer: http://localhost:8896/guarani/aplicacion.php?ah=st59564382696a93.22945103&ai=guarani||34000021

En la llamada a ese ci también se ve que está usando otros parámetros, válida que estén definidos. Te adjunto todos los parámetros que se van a utilizar en la operación, en la barra celeste arriba a la derecha del titulo del ci haciendo click en el link de parámetros podes verlos.

Espero te sirva
Saludos.


parametros.png

parametros.png

Probe jugar con distintas combinaciones de los parametros pero el problema persiste, adjunto log de postgres por si te resulte familiar:

2017-06-30 12:11:24 ART [1545-1] postgres@guarani3_db ERROR:  error de sintaxis en o cerca de «)» en carácter 113
2017-06-30 12:11:24 ART [1545-2] postgres@guarani3_db SENTENCIA:  SELECT 	DISTINCT responsable_academica
					FROM 	sga_propuestas_ra
					WHERE 	sga_propuestas_ra.propuesta IN () -- toba_log: 221077364

Buenas, por lo que veo estás en desarrollo corriendo esto. Lo que te recomendaría para probar si te andan esos parámetros es ver de definirlos para toda la institución, o todas las propuestas para ver si el problema persiste.

Ese error es por ello que te comente en lo anterior.

Saludos.

Para mi no tiene que ver con los parámetros, porque hay algunas actas que si nos imprimen. Si fuese por parámetros no imprimiría ninguna.

Estamos siguiendo el rastro de las diferencias de datos entre estas actas que imprime y que no, para ver donde podria estar el problema.

Desde ya muchas por tus consejos Jose, los fuimos probando.

Buen día José,

Quería avisarte que encontré el problema que me estaba originando ese error al imprimir las actas.

La cuestión es que nosotros no migramos planes de estudios tal cual como están en Guaraní 2, sino que los cargamos de cero en Guaraní 3 y luego en los script hago un mapeo de los planes, propuestas y materias, pero hacia el mapeo entre las versiones de los planes de estudios y no entre los planes en si, por lo tanto al ejecutar el script 35_Calendario_Academico/15_sga_comisiones_propuestas.sql en la función que se encuentra dentro no hacia inserciones en esa tabla y por ese motivo al querer imprimirlas cuando intentaba buscar la propuesta vinculada a la comisión no la encontraba y reventaba.

Bueno finalmente hice las inserciones en la tabla correspondiente y se soluciono el problema.

Desde ya muchas gracias por tu predisposición y pronta respuesta.

Saludos

Donde hiciste el mapeo?

Debiste hacerlo en la tabla de conversion de planes de estudios y versiones de planes de estudios
mig.cnv_pk_planes = Setear el campo plan con el id del plan de G3 (sga_planes.plan)
mig.cnv_pk_versiones_plan = Setear el campo plan_version con el id de la version del plan de G3 (sga_planes_versiones.plan_version)


tablas_conversion_planes_versiones_de_plan.jpg

tablas_conversion_planes_versiones_de_plan.png

Buen día Alejandro, hice exactamente eso.

En la versión migrada antes 3.11.2, solo había hecho el mapeo en la tabla mig._cnv_pk_versiones_plan y no tenia este problema. Pero bueno, en esta versión lo hice tal cual como lo sugerís.

Muchas gracias!

Gabriel, te consulto por que tomaron la decision de cargar los planes de estudios desde Guarani 3 y no migrar la estructura de cada plan y version de plan desde Guarani 2.
Consulto esto para que pueda ayudar a quienes estan en proceso de migración de Guarani 2 a Guarani 3 y tener que decidir si migrar los planes o cargarlos por Guarani 3.
Te hago algunas preguntas:

  1. ¿Tenian muchas versiones de cada plan de estudios en Guarani 2?
    ¿Migraron mas de una base de Guarani 2 donde habia las mismas carreras y planes de estudios?

  2. ¿En Guarani 3 por cada plan de estudios crearon una sola version de plan?

  3. Si en el punto 2 la respuesta es SI: ¿Tenian diferencias en cuanto a las actividades entre versiones de un mismo plan de estudios en Guarani 2? (Es decir que en la version 1 tenian 40 actividades y en la version 2 se agregó una actividad mas…)
    Si tenian diferencias entre las actividades de las versiones de un mismo plan de estudios: ¿Como cargaron ese plan de estudios en G3? ¿Con todas las actividades de todas las versiones de ese plan de estudios, no?

  4. Las actividades las migraron o tambien las cargaron todas por el sistema y luego hicieron el parseo en la tabla de conversion de pk de la tabla de actividades (mig.cnv_pk_elementos) y no las migraron?

Exacto Alejandro, la decisión se tomo porque la respuesta a casi todas tus preguntas es si:

  1. Si teníamos muchas versiones de los planes de estudios en Guaraní 2 (mas de 50 en algunos), y había nombre de planes de estudios y códigos de materias que se repetían, y no eran siquiera las mismas materias.

  2. En los planes que tienen muchas versiones vamos a crear una versión de “soporte” digamos para poder darle las materias aprobadas a los alumnos con los nombres de materias que tenían en las versiones originales, porque en varios casos se versiono porque cambio el nombre de la materia. Y la otra versión va a ser la vigente, esa es la idea aun no estamos evaluando una unidad académica con esos casos como para probar.

  3. Omito.

  4. Las actividades las cargamos en Guaraní 3, y luego hice el mapeo en la tabla de conversión que mencionas, en estos casos unificamos materias que tenían mismo nombre y contenido que en Guaraní 2 estaban con distintos códigos.

Espero les sirvan las respuestas, cualquier otra consulta estoy a disposición.
Saludos

Gracias Gabriel por responder.

Me queda la duda respecto de que tenian planes con muchas versiones (alrededor de 50). Deberiamos entender porque se versionaron tanto esos planes de estudio, si eran realmente cambios estructurales en el plan o cambios menores que no se podia realizar desde Guarani 2 y que los llevó a que tuvieran que versionar muy seguido el plan (casi en cada nuevo cuatrimestre…).
Si podes detallarnos los cambios que hacian que tuvieran que versionar los planes como para ver de que esto no vuelvan a repetirlo en Guarani 3. Ver si hay que hacer ajustes al sistema donde se deban permitir ciertos cambios en el plan sin necesidad de versionarlo con todo lo que implica tener que versionar un plan de estudios.

La gran mayoría de los cambios eran sencillos, creo que en versiones anteriores no permitía modificar los parámetros de promediable, obligatoria y sale listado sin versionar, pero también había bastantes cambios de correlativas y materias que cambiaban de nombre.
Incluso se han llegado a intercambiar los cuatrimestres en los que se dictaban las materias y luego se volvían a como estaban originalmente.

Por todo esto es que nos estamos tomando el trabajo de limpiar los planes actuales junto con secretaria académica y reviendo en conjunto las resoluciones de los mismos.