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.
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.
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
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.
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.
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.
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)
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.
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:
¿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?
¿En Guarani 3 por cada plan de estudios crearon una sola version de plan?
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?
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:
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.
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.
Omito.
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
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.