No se genera el nro_acta automaticamente

Hola, buen día.

Estamos realizando pruebas posteriores a la migración y, al intentar generar un acta de examen, aparece el mensaje:

“No se puede generar el número de acta automáticamente”.

Revisando en el foro (ejemplo: Asignación de nro de acta - nº 5 por sebass ) vimos que esto sucede cuando existen actas con nro_acta alfanumérico (Ej: ‘515 27’,‘1049 45’).

¿Podrían orientarnos sobre cómo resolver este caso para que el número de acta pueda generarse automáticamente?

Queremos tener un libro de acta de actas de examen para todas las propuestas y uno para toda la universidad.

¡Muchas gracias!

Hola Franco, buen día!

Le compartimos dos foros en donde se plantea un caso similar para que puedan consultarlos:

Quedamos atentos ante cualquier consulta.

Saludos!

Gracias por responder me acabo de dar cuenta que esta parte quedo mal

Queremos tener un libro de acta de actas de examen para todas las propuestas y uno para toda la universidad.

Lo que queremos es tener un libro de acta de actas de examen para todas las propuestas de todas las unidades académicas (Unificado) así podemos tener números de actas numéricas.

Si se crea un Libro de Actas para examen sin discriminar por propuesta o por ubicación, ese libro queda disponible de forma unificada para todas las unidades académicas.

¿Pudieron probar eso en un ambiente de pruebas?

Saludos!

Actualmente, estamos trabajando en un ambiente de pruebas y si cree un libro que no discrimina por propuesta ni por ubicación. Yo supuse que el problema se debía a que tenemos números de acta alfanumérica.

Hola Franco! Cómo estás?

Antes que nada necesitaríamos que nos indiquen de qué institución son y en qué versión de Guaraní se encuentran.

Actualmente, estamos trabajando en un ambiente de pruebas y si cree un libro que no discrimina por propuesta ni por ubicación. Yo supuse que el problema se debía a que tenemos números de acta alfanumérica.

Exacto, para lo que desean entonces el libro de actas tiene que estar configurado dejando vacías las solapas de alcances. De esta forma el sistema entiende que el libro abarca a toda la institución.

Cómo tienen configurados los siguientes parámetros?

exa_carga_manual_nro_acta_examen

exa_carga_manual_libro_examen

exa_forma_asignacion_folio_fisico

También les solicitamos que nos envíen los logs que se generan al momento del error.

Por lo que plantean entendemos que los números de acta migrados son alfanuméricos.

La idea es continuar utilizando números alfanuméricos? o utilizar sólo numéricos?

Están utilizando un nuevo Libro de actas creado desde cero en Guaraní 3? o están utilizando el libro que migraron?

Hola Martín, somos la Universidad Nacional Del Comahue y estamos migrando de la versión 2.93 a 3.21

exa_carga_manual_nro_acta_examen está como: El número de acta de examen se genera automáticamente.

exa_carga_manual_libro_examen dice “El libro de actas se ingresa manualmente por el usuario” pero en la solapa que dice Valor por Nivel pusimos “Valor = El libro de actas de examen se asigna automáticamente” y el listado de las responsabilidades académicas(Las que tenemos cargadas).

exa_forma_asignacion_folio_fisico dice “La asignación se realizará en la impresión del acta. Actas con/sin notas”

El log dice:

[NOTICE][guarani] Valor del parámetro ‘exa_carga_manual_nro_acta_examen’ = ‘N’ obtenido desde caché.

[DEBUG][guarani] SQL con perfil de datos: SELECT COALESCE(MAX(CAST(sga_actas.nro_acta AS integer)), 0) + 1 as nro_acta

                                             FROM    sga_actas

                                             WHERE   sga_actas.origen = 'E'

[ERROR][guarani] SQLSTATE[22P02]: Invalid text representation: 7 ERROR: la sintaxis de entrada no es válida para integer: «100 1»

[ERROR][guarani] No se puede generar el número de acta automáticamente.

[ERROR][toba] guarani_error: No se puede generar el número de acta automáticamente.

[TRAZA]

    fabrica_guarani::error

Archivo: /usr/local/proyectos/guarani/php/nucleo/_lib/fabrica_guarani.php, Línea 82

    guarani_nucleo::error

Archivo: /usr/local/proyectos/guarani/php/nucleo/examenes/actas/cn_ent_acta_examen.php, Línea 591

El libro lo generamos usando Guaraní 3.

Los números de acta que migramos son alfanuméricos y queremos empezar a usar numéricos.

Gracias por los logs Franco!

Los vamos a analizar con los técnicos para ver qué sucede. Pareciera haber algún tema con la asignación del número correlativo, pareciera que deja un espacio en el medio y por eso falla.

Ustedes realizaron alguna personalización en el método generar_nro_acta de la clase co_actas.php ?

Vemos los logs con los técnicos y les comentamos los resultados del análisis.

Gracias, espero su respuesta. No personalizamos nada.

Hola Franco!

Estamos viendo el tema con el equipo técnico.

Lo que debe estar sucediendo es que las actas migradas tenían una numeración alfanumérica, por lo que ahora al querer generar un nuevo valor numérico intenta ver el valor de la última acta y sumarle 1.
El tema es que por lo visto el número da la última acta que recupera es “100 “. Como si tuviera un espacio en blanco al final. Por lo que intenta crear el valor “100 1” y ahí falla.

Podrían verificar cuál es el valor numérico de la última acta que tienen en la base?

Lo pueden recuperar con esta consulta:

SELECT nro_acta FROM negocio.sga_actas where sga_actas.origen = ‘E’ ORDER BY nro_acta DESC LIMIT 1;

Saludos!

Hola Martín,

Hice la consulta y devuelve '999 99', pero no es un valor numérico.

Estábamos pensando en personalizar la función para que, a partir de la migración, la numeración de las actas sea únicamente numérica y comience, por ejemplo, desde la 10000. Eliminando de esta manera la personalización de las 2.9.

Hola Franco!

Exacto! Ese tipo de valores con espacios en blanco no están permitidos a priori como viene por defecto el sistema.

Si van a querer utilizar valores numéricos a partir de ahora lo mejor es que hagan lo que indican:

Estábamos pensando en personalizar la función para que, a partir de la migración, la numeración de las actas sea únicamente numérica y comience, por ejemplo, desde la 10000. Eliminando de esta manera la personalización de las 2.9.

Si tienen dudas sobre cómo realizar esto nos avisan y les indicamos cómo avanzar.

Saludos!

Perfecto, muchas gracias.
¿Cómo deberíamos realizar ese cambio? ¿Es necesario modificar la función generar_nro_acta o habría que hacerlo de otra manera?

Hola Franco, es correcto que les de error si no personalizaron la generacion automatica de nro de acta, debido a que por defecto considera que las actas generadas en el sistema el dato “nro_acta” es un dato numerico, con lo cual busca el maximo asignado a un acta y devuelve el siguiente.

En estos dos casos que planteas, no es un dato numerico al tener el espacio en el medio. Eso es correcto que quede asi? Es decir el numero de acta esta conformado por dos numeros? De ser asi entonces tienen que personalizar la generacion automatica de numero de acta.

Si no debe ser asi, y ese blanco esta demas en esos numeros de actas, entonces deben corregir esos numeros para que “51727” sea un numero “51727” sin el espacio en blanco en el medio.

Si quieren personalizar a partir de la migracion, deberian:

  1. Ver cual es el maximo nro de acta (id_acta) de migracion.

  2. Personalizar el metodo que genera el numero de acta, para que solo considere actas con id mayor al maximo generado con la migracion (asi no las tiene en cuenta). Si no encuentra ninguna, que comience en 10000 sino, sumar uno como lo esta haciendo ahora.

Ver la documentacion: https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.22.0/personalizaciones/procesos_personalizables#Ex.C3.A1menes

personalizar el metodo generar_nro_acta del archivo co_actas.php

Ej: Suponiendo que el maximo dato de id_acta de las actas migradas es el 15286, entonces modificar el codigo siguiente

$sql = "SELECT COALESCE(MAX(CAST(sga_actas.nro_acta AS integer)), 0) + 1 as nro_acta

FROM sga_actas

WHERE sga_actas.origen = $origen

AND id_acta > 15286

";

Hola Alejandro,
Hicimos el cambio y ahora los números de actas se generan correctamente.
Muchas gracias

Franco, recuerden aplicar este cambio como una personalizacion. No modificar directamente el archivo original, sino dentro de la carpeta personalizaciones, agregar el archivo con el metodo personalizado.

Ver Modificar la clase de consulta en https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.22.0/personalizaciones/reporte