Necesito si me pueden guiar para que en vez de mostrar la "localidad" de la UA, muestre la [b]sede[/b] del alumno, de esta manera podemos dejar como finalizado el certificado de alumno regular.
Por lo que vi, se podría cambiar en el archivo "controlador.php" en la línea 471: "$parametros['parametros']['localidad'] = guarani::ua()->get_localidad_institucion();" por algo así: "$parametros['parametros']['localidad'] = $carrera_activa['sede'];
teniendo en cuenta esto en “src/pers/udc/operaciones/solicitud_certificado/controlador.php”:
linea 448: $carrera_activa = guarani::persona()->get_info_carrera_activa();
Ésto ya lo probé igualmente, pero no salió, se genera el PDF pero con ese campo vacío (porque evidentemente no lo esta buscando en la base de datos). La verdad que no se bien por donde empezar para poder cambiar la SEDE en el certificado de alumno regular, espero una guia o posibles soluciones, desde ya muchas gracias!
Hola Guillermo, lamentablemente guarani::ua()->get_localidad_institucion() termina llamando al procedure sp_unidadAcademica el cual no trae datos sobre la sede.
Ahora voy a armar una query para que la agreguen, la cual traerá las sedes de una determinada UA.
Tu ejemplo me guió bastante. Le hice una modificación: En tu ejemplo, la consulta devuelve todas las sedes de la UA (quizas me exprese mal en el Asunto del mensaje), yo necesito la [b]sede del alumno[/b].
Igualmente, realicé los pasos que pusiste, aunque en el modelo [b]alumno[/b] (src/pers/udc/modelo/datos/db/alumno.php), agregando la función sede_by_legajo():
/**
* parametros: legajo
* cache: memoria
* filas: n
*/
function sede_by_legajo($parametros)
{
$sql = "SELECT sga_sedes.nombre
FROM sga_alumnos, sga_sedes
WHERE
sga_alumnos.sede = sga_sedes.sede AND
sga_alumnos.legajo = {$parametros['legajo']}"; //el sql lo probé con un nro de legajo con el SQLEditor y funciona
return kernel::db()->consultar($sql);
}
Ejecuto el comando PathProyecto3W/bin ./guarani generar_catalogo des01 (des01 es nuestro acceso) => devuelve OK.
y en el archivo personalizado "src/pers/udc/operaciones/solicitud_certificado/controlador.php" agrego las líneas:
$sede = catalogo::consultar('alumno','sede_by_legajo',$parametros);
if(!empty($sede)){
$parametros['parametros']['localidad'] = $sede;
}else{
$parametros['parametros']['localidad'] = guarani::ua()->get_localidad_institucion()."_".$sede."_"; //el "_$sede_" es para ver si agrega algo
}
y a pesar de todas las pruebas, me genera el PDF con la palabra "Array" como si la sacara de la base de datos. Adjunto captura de pantalla del certificado.
Realmente no se cual es el error. Supuse que la función del archivo [b]alumno.php[/b] no estaba funcionando con el legajo como parametro, asi que al $sql le agregue un nro de legajo válido, y me sale el mismo resultado.
También probé solo ejecutando el $sql en el [b]controlador.php[/b], como para hacer la consulta ahí directamente, sin embargo queda la variable vacía en el PDF.
Espero alguna idea, saludos!