Agregar nombre de usuario que creo el acta

Hola, quería consultar como puedo hacer para agregar, tanto al acta de regulares como el de examen, el nombre de usuario de quien la crea.

Muchas gracias!
Saludos!

Hola Sergio,

¿vos te referís a agregarlo al PDF del acta? En tal caso vas a tener que personalizar las impresiones.

Fíjate que tenes los archivos expotaciones/jasper/ActaRegulares.jrxml y expotaciones/jasper/ActaExamenes.jrxml, esos se compilan a expotaciones/jasper/ActaRegulares.jasper y expotaciones/jasper/ActaExamenes.jasper respectivamente.

el nombre de usuario de quien la crea
Te averiguo bien como se obtiene la persona que crea el acta, mientras te adjunto el modelo de datos: https://colab.siu.edu.ar/modelo/031900/MImageB.html#ERD_88

saludos.
2

Hola Sergio, podes hacer lo siguiente:

  1. Crear un campo en la tabla sga_actas, para registrar el id de usuario que crea el acta (ejemplo: undec_persona_alta, dato relacionado con la tabla “mdp_personas.persona”) y luego consultar este dato haciendo join con la tabla mdp_personas

Para ello deberias completar este dato para las actas que ya estan creadas.


SET search_path = negocio;
UPDATE sga_actas 
  SET undec_persona_alta = 
(SELECT p.persona
   FROM negocio_auditoria.logs_sga_actas as aud
   JOIN mdp_personas as p ON p.usuario = aud.auditoria_usuario
 WHERE aud.id_acta = sga_actas.id_acta 
   AND aud.auditoria_operacion = 'I'
 LIMIT 1);

Y como recuperas el nombre del usuario que dio de alta:
SELECT sga_actas.nro_acta, sga_actas.fecha_generacion,
(SELECT p.apellido || ’ ’ || p.nombres
FROM mdp_personas as p
WHEREp.persona = sga_actas.undec_persona_alta
) as usuario_creacion_acta
FROM sga_actas
WHERE sga_actas.id_acta = 155143

  1. Teniendo activado el esquema de auditoría, es obtener ese dato del esquema de auditoria cuando se recuperan los datos de la cabecera del acta, agregando una columna con la siguiente query:

Ejemplo:
SET SEARCH_PATH = negocio;
SELECT sga_actas.nro_acta, sga_actas.fecha_generacion,
(SELECT p.apellido || ’ ’ || p.nombres
FROM negocio_auditoria.logs_sga_actas as aud
JOIN mdp_personas as p ON p.usuario = aud.auditoria_usuario
WHERE aud.id_acta = sga_actas.id_acta
AND aud.auditoria_operacion = ‘I’
LIMIT 1
) as usuario_creacion_acta
FROM sga_actas
WHERE sga_actas.id_acta = 155143

4

Hola Sergio, agrego a lo de Ale:

1) Crear un campo en la tabla sga_actas, para registrar el id de usuario que crea el acta (ejemplo: undec_persona_alta, dato relacionado con la tabla "mdp_personas.persona") y luego consultar este dato haciendo join con la tabla mdp_personas

Para obtener el ID de persona logueada en Gestión podes usar lo siguiente:


$datos_persona = toba::consulta_php('co_personas')->get_persona_x_usuario(toba::usuario()->get_id());
$persona = $datos_persona['persona'];

Para obtener el ID de persona logueada en Autogestión podes usar lo siguiente:


$persona = kernel::persona()->get_id();

saludos.
2

Excelente!!! muchas gracias, era lo que necesitaba.