Buenas tardes, estoy trabajando con guarani gestión y 3w en la versión 2.9.4
El inconveniente es que los alumnos desde la web no pueden ver la historia académica. Le muestra la leyenda de no haber encontrado información, tal como se ve en la imagen adjuntada.
Yo realicé la prueba ingresando al 3W con el usuario gerencial y desde el mismo selecciono cualquier alumno y puedo ver su historia académica. Pero si ingreso con el usuario de un alumno no me muestra nada, solo lo que aparece en la imagen que adjunto.
Desde ya agradezco cualquier ayuda con el tema, ya que me lo están reclamando hace ya un tiempo.
Hola David, proba lo siguiente:
-
Parado en el directorio raíz de 3W corre el comando bin/guarani limpiar_cache.
-
Luego ingresa a la operación de Historia Académica y envíame los logs que se generan (que este marcado “Todos”).
saludos.
Buenas noches Leonel, te adjunto el log de guarani 3W al acceder a historia académica con el usuario de un alumno.
Perdón por la demora, tuve que borrar los datos del alumno y de la base.
En el log pude ver que trae la historia académica, lo que no encuentro es el motivo por el cual no la muestra.
log_historia_academica.zip (8.22 KB)
Hola David, gracias por los logs!!!
Si, veo que trae datos de la DB (en concreto la query alumno/get_actividad_academica), probemos lo siguiente:
-
Si tenes personalizaciones, deshabilitalas y volve a probar sin ellas (archivo instalacion/config.php).
-
En la función datos_historia_academica del archivo src/siu/operaciones/historia_academica/controlador.php, antes del return agrega la siguiente linea:
klog2("=== Datos finales ===", $datos_final);
return $datos_final;
Luego de dicha modificación (que es para que escriba en los logs), borra la cache (bin/guarani limpiar_cache), y volveme a enviar los logs que se generan. Con esto podemos ver como quedan los datos finales antes de ser pasados a la vista.
saludos.
Buen día Leonel, te adjunto el log que me pedis con el agregado de la linea de código.
Tarde porque le borre los datos del alumno. Pero me parece que es igual al anterior.
20180423_120408___8676.zip (8.04 KB)
Hola David,
Ahí esta el problema, fíjate que la query alumno/get_actividad_academica devuelve datos, pero la función datos_historia_academica del archivo src/siu/operaciones/historia_academica/controlador.php hace un proceso sobre los datos que hace que estos últimos se pierdan, fíjate en los logs:
-- ===Datos finales === ------------------------------------------------------
Array
(
[historia] => Array
(
)
[anos] => Array
(
)
[materias] => Array
(
)
)
La verdad es que en mi instalación se esta viendo bien, y no puedo reproducir el caso, fíjate si la función que te nombre arriba la tenes personalizada o modificada. De no ser así, vas a tener que Debugear dentro de dicha funciona para ver que pasa. Podes hacer uso de klog2(“Etiqueta”, $variable); para que escriba en los logs los valores.
Otra alternativa seria que nos pasen por GDS un backup de la DB anonimizada para que podamos reproducir el caso.
Cualquier cosa que encuentres no dudes en consultar.
saludos.
Buenas tardes Leonel, estuve revisando el código como me pediste. La variable $historia la devuelve con datos, el tema es cuando la procesa para armar la historia final se pierden los datos. No puedo encontrar donde se están perdiendo.
Además lo estoy comparando con una vm de prueba que tengo donde si me muestra la historia académica.
Puede ser que influya algo en el armado del aplicativo de gestión que genere el problema?
Porque no tengo nada personalizado en 3W. Esta como viene del SIU.
Hola David,
Me tome el atrevimiento de tomar los datos de los logs que me enviaste (los datos que devuelve la función alumno/get_actividad_academica, tome solo 3 registros), en mi proyecto local arme un array con dichos datos y me los esta mostrando el pantalla (ver adjunto).
Probado esto, y viendo que el código que tienen en el COLAB es exactamente igual al nuestro, restaría ver en los logs de Apache para saber que puede llegar a estar ocurriendo.
Te pediría que vuelvas a reproducir el caso y que nos envíes los logs de Apache que se generan.
saludos.
Hola David, la solución es la siguiente:
En la función datos_historia_academica del archivo src/siu/operaciones/historia_academica/controlador.php, en la linea 105 donde esta el if hay que agregar trim a los campos, quedaría:
if(in_array(trim($historia[$i]['ORIGEN']).trim($historia[$i]['RESULTADO']), $aChecks)){
Parecería ser que dichos campos están viniendo con espacios demás desde la DB, por eso hay que aplicarles la función trim, para que coincida con uno de los valores dentro de $aChecks.
saludos.
Ese mismo cambio también hacerlo en la función datos_exportar del archivo src/siu/operaciones/historia_academica/controlador.php, linea 558 aproximadamente.
saludos.
Hola leonel, gracias por la ayuda. Ya corregí el archivo controlador.php de historia académica y funciona perfecto. Gracias por el último dato. Yo ayer no probé el tema de exportar a pdf o excel. Si esa corrección arma el archivo sin datos.
Gracias. Ya esta todo funcionando perfecto!!!