Solapa Planes de Estudio [SOLUCIONADO]

Hola!
Estoy probando versión G3W2 2.8.0. Al conectarme con perfil Gerencial, en la solapa Planes de Estudio, cuando la versión del plan es = 0 no arroja resultados, en el resto de los casos sí.
Cuál puede ser el problema? La consulta anda bien por fuera.
Lo último del log es:

– cargar PERSONA ------------------------------------------------------------

006-0202

–F<1>:E<0>:W<0>:T<4.893 s>:M<4.19 Mb>–
–REXCAT_CMET<version_base_valida>MEDAT<0.000>–
–REXCAT_C<unidad_academica>METMEDAT<0.000>–
–REXCAT_CMET<datos_basicos>MEDAT<0.000>–
–REXCAT_CMET<get_estado_perfil>MEDAT<0.000>–
–REXCAT_CMETMEDAT<0.000>–
–REXCAT_CMETMEDAT<0.000>–
–REXCAT_CMETMEDAT<0.000>–
–REXCAT_CMETMEDAT<0.004>–

== FIN =============================================

Natalia Recabarren

Que significa que la version del plan es 0 ?
Si es el código que le pusiste, no deberia haber problemas con ello.

Sí, el código de la versión es cero. Por lo que ví, valida que sea alfanumérico, pero me da error, cuando selecciono las otras versiones del combo (1, 2, 3.0, 3,1, etc) no tengo problema, pero cuando elijo 0 sí. Por eso no sé cuál puede ser el problema ni dde mirar porque la consulta por fuera no me da error.

Hola Natalia,

        La versión es 2.8.3 no? (esa operación salió en esa versión) , podrías enviar los últimos 3 archivos de log de la aplicación, justo después que aparece el error? 

Gracias!!
Sergio

Hola Natalia, el problema esta en el archivo src/siu/operaciones/planes_estudio/controlador.php linea 53, la cual contiene la siguiente sentencia:

if($carrera && $plan && $version){

el problema esta en que si ya sea la carrera, el plan o la versión tienen el valor 0 (cero) no entra a este if, porque PHP trata a los 0 (ceros) como FALSE cuando se usan en una sentencia condicional como ser un if.

la solucion seria reemplazar ese if por este otro:

if(($carrera != "") && ($plan != "") && ($version != "")){

en las próximas versiones de G3W ya va a salir corregido.

proba con eso y cualquier cosa decime.

saludos, Leonel.

Sí Leonel, anduvo bien.
Gracias!

De nada Natalia, saludos.

Hola!

Quería saber qué pasó con esta modificación que estaba hasta la v290 y en la v291 la sacaron??
Sin ese cambio me da error cuando la versión del plan es “0”…

Natalia

Buen día Natalia, tenés razón, se nos pasó replicarlo en la 2.9.1.
Por favor realizá la modificación comentada, vamos a incluir el arreglo correspondiente en la 2.9.2.
Por favor disculpanos por este inconveniente.
¡Gracias y saludos!

Hola Natalia, se había agregado dicha corrección pero luego accidentalmente se deshizo, esto va a salir solucionado en la 2.9.2 como comentaba Emilse.

Te sugeriría que por ahora lo modifiques a mano, pero en lugar de reemplazar por:

if(($carrera != "") && ($plan != "") && ($version != "")){

lo reemplaces por:

if(!is_null($carrera) && !is_null($plan) && !is_null($version)){

disculpa por las molestias, saludos.

Oki gracias!!! Todo bien!!
Saludos,

Natalia