Error al generar datos de SIU-Araucano

Buen día, estamos teniendo el siguiente mensaje al intentar generar datos de SIU-Araucano
Actualmente estamos en la versión 3.19.1

CODIGO: 7

MENSAJE: ERROR: no existe la función get_dependencia_araucano_propuesta_ubicacion(integer, integer)\nLINE 20: get_dependencia_araucano_propuesta_ubicacion(sga_propu...\n ^\nHINT: Ninguna función coincide en el nombre y tipos de argumentos. Puede ser necesario agregar conversión explícita de tipos.

SQL: INSERT INTO int_arau_nominal_oferta (anio_academico, alumno, persona, unidad_academica_araucano, titulo_araucano, certificado, anio_academico_ingreso, forma_ingreso, fecha_inscripcion, tipo_ingreso, fecha_egreso, fecha_pasivo, dependencia_ingreso)\n SELECT "2021" as anio_academico,\n sga_alumnos.alumno,\n alu_ara.persona,\n get_ra_inst_araucano_propuesta(sga_alumnos.propuesta, "IA") as unidad_academica_araucano,\n sga_certificados.titulo_araucano,\n sga_certificados.certificado,\n get_anio_academico_ingreso_alumno(sga_alumnos.alumno, 3) as anio_academico_ingreso, -- Año academico de ingreso en el ciclo basico o sino en la propuesta\n get_forma_ingreso_araucano_nominal(sga_alumnos.alumno) as forma_ingreso,\n sga_propuestas_aspira.fecha_inscripcion,\n sga_propuestas_aspira.tipo_ingreso,\n CASE \n WHEN sga_certificados_otorg.fecha_egreso > to_date("31/03/2022", "DD/MM/YYYY") THEN cast(NULL as date) -- es egresado despues de la fecha fin del año academico.\n ELSE sga_certificados_otorg.fecha_egreso\n END as fecha_egreso,\n CASE sga_alumnos.calidad\n WHEN "P" THEN (SELECT MAX(fecha) FROM sga_alumnos_hist_calidad as c WHERE c.alumno = sga_alumnos.alumno AND c.calidad = sga_alumnos.calidad)\n ELSE cast(NULL as date)\n END as fecha_pasivo,\n get_dependencia_araucano_propuesta_ubicacion(sga_propuestas_aspira.propuesta, sga_propuestas_aspira.ubicacion) as dependencia_ingreso\n FROM int_arau_nominal_alumnos as alu_ara\n JOIN sga_alumnos ON (sga_alumnos.persona = alu_ara.persona)\n JOIN sga_planes_certificados ON (sga_planes_certificados.plan_version = sga_alumnos.plan_version)\n JOIN sga_propuestas_aspira ON (sga_propuestas_aspira.persona = sga_alumnos.persona AND sga_propuestas_aspira.propuesta = sga_alumnos.propuesta)\n JOIN sga_situacion_aspirante ON (sga_situacion_aspirante.situacion_asp = sga_propuestas_aspira.situacion_asp)\n JOIN sga_certificados ON (sga_certificados.certificado = sga_planes_certificados.certificado)\n LEFT JOIN sga_certificados_otorg ON (sga_certificados_otorg.alumno = sga_alumnos.alumno AND sga_certificados_otorg.certificado = sga_planes_certificados.certificado AND sga_certificados_otorg.anulado = 0)\n WHERE alu_ara.anio_academico = "2021" AND\n sga_propuestas_aspira.anio_academico <= "2021" AND\n sga_situacion_aspirante.resultado_asp IN ("A", "P") AND\n sga_certificados.titulo_araucano IS NOT NULL AND\n sga_certificados.informar_araucano = "S" AND \n (sga_certificados.modalidad_araucano IS NULL OR sga_certificados.modalidad_araucano = sga_alumnos.modalidad ) AND \n -- No obtuvo el titulo o lo obtuvo en el año a informar o lo obtuvo pasada la fecha fin (en este caso se informa como reinscripto)\n (COALESCE(sga_certificados_otorg.fecha_egreso, to_date("01/04/2021", "DD/MM/YYYY")) BETWEEN to_date("01/04/2021", "DD/MM/YYYY") AND to_date("31/03/2022", "DD/MM/YYYY") OR\n sga_certificados_otorg.fecha_egreso IS NOT NULL AND sga_certificados_otorg.fecha_egreso > to_date("31/03/2022", "DD/MM/YYYY"));\n\n -- Saco de la tabla de oferta aquellos alumnos que estan en calidad Pasivo con fecha anterior al inicio del año academico a evaluar. \n DELETE FROM int_arau_nominal_oferta \n WHERE anio_academico = "2021"\n AND fecha_pasivo IS NOT NULL\n AND fecha_pasivo < to_date("01/04/2021", "DD/MM/YYYY");\n\n -- Se actualiza el dato "pais_titulo_anterior".\n -- Toma el 1er título que encuentra del alumno que va a informar (podría informar un título intermedio y uno final o titulos de diferentes propuestas)\n UPDATE int_arau_nominal_alumnos\n SET pais_titulo_anterior = CAST(( SELECT COALESCE(negocio_pers.get_titulo_institucion_habilitante(int_arau_nominal_oferta.alumno, 7), "99999")\n FROM int_arau_nominal_oferta\n WHERE int_arau_nominal_oferta.anio_academico = int_arau_nominal_alumnos.anio_academico AND\n int_arau_nominal_oferta.persona = int_arau_nominal_alumnos.persona\n ORDER BY int_arau_nominal_oferta.fecha_inscripcion\n LIMIT 1) as integer)\n FROM mdp_personas\n WHERE int_arau_nominal_alumnos.anio_academico = "2021" AND\n mdp_personas.persona = int_arau_nominal_alumnos.persona;\n \n -- Se actualiza el dato "cue_escuela_origen".\n -- Se tiene en cuenta que hay casos en que una persona tiene más de una inscripción a propuesta (puede tener diferentes tipos de ingreso) y más de un estudio secundario cargado.\n UPDATE int_arau_nominal_alumnos\n SET cue_escuela_origen = ( SELECT CASE\n WHEN mdp_personas.nacionalidad = 2 THEN 888888888\n WHEN int_arau_nominal_oferta.tipo_ingreso = 3 THEN 777777777\n ELSE COALESCE(( SELECT sga_colegios_secundarios.cue\n FROM mdp_datos_estudios\n JOIN sga_colegios_secundarios ON mdp_datos_estudios.colegio = sga_colegios_secundarios.colegio\n WHERE mdp_datos_estudios.persona = mdp_personas.persona AND\n mdp_datos_estudios.nivel_estudio = 3\n ORDER BY mdp_datos_estudios.fecha_egreso DESC\n LIMIT 1), 999999999)\n END\n FROM int_arau_nominal_oferta\n JOIN mdp_personas ON int_arau_nominal_oferta.persona = mdp_personas.persona\n WHERE int_arau_nominal_oferta.anio_academico = int_arau_nominal_alumnos.anio_academico AND\n int_arau_nominal_oferta.persona = int_arau_nominal_alumnos.persona\n ORDER BY int_arau_nominal_oferta.fecha_inscripcion\n LIMIT 1)\n WHERE int_arau_nominal_alumnos.anio_academico = "2021";\n \n -- Regenero los indices de la tabla. \n REINDEX TABLE int_arau_nominal_oferta; \n REINDEX TABLE int_arau_nominal_alumnos; \n -- toba_log: 1972389 

Al buscar en los archivos de la instalación encontramos que la función (get_dependencia_araucano_propuesta_ubicacion) se encuentra definida en:

personalizacion/php/nucleo/administracion/araucano/act_araucano.php

Agradecemos desde ya, cualquier ayuda en la resolución de éste inconveniente

Hola Fernando,

El problema está en esta personalización: https://colab.siu.edu.ar/trac/guarani3/changeset/59160. Entiendo que la idea era utilizar la función ‘negocio_pers.get_titulo_institucion_habilitante’ pero se modificaron otras cosas en las sentencias SQL de los métodos ‘generar_nominal_alumnos_oferta’ y ‘generar_nominal_actividades’ de la clase ‘act_araucano’. Deberían revisar la personalización. Si tienen inconvenientes para corregirla no duden en consultar.

Saludos, Florencia.