Estamos probando la versión 2.9.1 y nos aparece un error en “Reportes → Regularidades”. El error en cuestión es:
SQL ERROR: SQLSTATE[42000]: Syntax error or access violation: -201 [Informix][Informix ODBC Driver][Informix]A syntax error has occurred. (SQLPrepare[-201] at /tmp/PDO_INFORMIX-1.2.7/informix_driver.c:131) SELECT descripcion FROM sga_det_escala WHERE escala_notas = AND nota = ‘’
Estuve analizando los logs y el mismo proviene de …db/alumno.php en la función get_nota_descripcion, esto me pasa solo con alumnos que tienen equivalencia parcial, la misma al no tener escala de notas (no es un vacío, sino que no tiene valor) produce el error.
SELECT descripcion FROM sga_det_escala WHERE escala_notas= and nota=‘’ esto es lo que está ocurriendo en esos casos.
Aguardo apreciaciones.
Saludos!
Ezequiel Molina
Facultad de Ciencias Agrarias - UNJu
Hola Ezequiel!!!
Habría que agregar a la función get_nota_descripcion una validación de los parámetros ‘escala_notas’ y ‘nota’ por null y string vacío.
Probá lo siguiente:
PHP: modelo/datos/db/alumno.php
Función: get_nota_descripcion
/**
* parametros: escala_notas, nota
* cache: memoria
* filas: n
*/
function get_nota_descripcion($parametros)
{
if(is_null($parametros[escala_notas]) OR $parametros[escala_notas] == "" OR is_null($parametros[nota]) OR $parametros[nota] == "" )
{
return "";
}
$sql = "SELECT descripcion
FROM sga_det_escala
WHERE escala_notas = {$parametros['escala_notas']}
AND nota = {$parametros['nota']}";
$datos = kernel::db()->consultar_fila($sql, db::FETCH_NUM);
return $datos[0];
}
En la función ‘get_nota_descripcion’ se agrega la validación de los parámetros que te comentaba.
En la función ‘regularidades’ se agregó una validación por la nota_descripción, si viene vacía, no muestra los paréntesis.
Este arreglo estará incluido en la version 2.9.2.
Probalo y avisanos si se resolvió el problema.
Saludos!