Consulta Becas

En este hilo se deja link a la nueva versión de becas: http://foro.comunidad.siu.edu.ar/index.php?topic=22239.msg99584
Ahora bien, luego de actualizar, y procesar los resultados al intentar subir el archivo en http://spupedidos.siu.edu.ar/aplicacion.php?fs=1 el proceso informa errores y no deja continuar.
Los errores son “No posee la cantidad correcta de campos (5)” y eso ocurre en todos los registros.Ahora bien, eso es porque el archivo que informa los errores en el nuevo script cambió la estructura…
Y luego hay 7 warnings que dicen: “Tiene mas materias aprobadas que las que cuenta el plan”

yo pensaría que el cambio de estructura de ese informe fue al propósito y que el problema esta en la web en que se suben las becas… ¿me confirman por favor?

Hola Diego, a que te referis con estemensaje:

Los errores son "No posee la cantidad correcta de campos (5)" y eso ocurre en todos los registros.Ahora bien, eso es porque el archivo que informa los errores en el nuevo script cambió la estructura...
La estructura de alumnos.php y planes_estudio.php no cambió. Vos ves que en la seccion "planes_estudio.txt" se informan mas o menos de 5 datos (columnas) por cada fila?

En ese mensaje del foro quese indica que se agregó algunos controles y si hay inconsistencias se informan al final, esto se agrega al final y no modifica la estructura que ya habia de esos dos archivos anteriores.
La función devuelve filas con el siguiente formato:

**************** Inicio archivo alumnos.txt *****************
Datos de este archivo, son 14 columnas
**************** Fin archivo alumnos.txt *****************
**************** Inicio archivo planes_estudio.txt *****************
Datos de este archivo. Son 5 columnas
**************** Fin archivo planes_estudio.txt ************
**************** Inicio archivo de Errores ************
Una columna con los problemas encontrados encontrados
**************** Fin archivo de Errores ************

Lo que tenes que hacer es tomar ese resultado, y generar el archivo alumnos.txt y planes_estudio.txt con los datos que corresponde a cada archivo. Si hay errores reportados, solucionarlos y volver a correr la funcion.

El error lo da al procesar el archivo de errores… te dejo los errores del 1er alumno (reemplazo nombre y DNI…) pero es lo mismo para todos los errores del txt:
Y me refiero a que antes el archivo de errores informaba 5 campos, el nuevo script informa una unica descripcion del error, ejemplo:

alumnos_con_error.txt:
Luis Miguel (DNI - 12345678): No se encontró el numero de documento
Luis Miguel (DNI - 12345678): No existe el código de titulo araucano (979) definido en algún título de las propuestas donde se encuentra el alumno o el alumno no tiene la inscripción a propuesta en estado aceptada o pendiente.

resultado al procesarlo:
alumnos_con_error.txt Fila 1: No posee la cantidad correcta de campos (5).
alumnos_con_error.txt Fila 2: No posee la cantidad correcta de campos (5).

Nota: Como sugerencia, si deciden corregir el SP, informar un solo error por alumno alcanza… si no existe el alumno (no se encuentra en nro de documento) el segundo error es consecuencia del primero.

Como para completar… antes, la estructura de errores eran 5 campos:
DOC|12345678|Apellido|Nombre|Descripción del Error

Los errores reportados yo no puedo corregirlos, si los alumnos se inscriben en la web de becas con un documento distinto al registrado en Guarani o eligen un titulo que no corresponde a su propuesta mucho no se puede hacer…

Diego, yo me referia a los errores que ahora reporta el proceso de Guarani 3 que es lo que se agregó en la ultima modificación del proceso.
Antes no se estaban realizando validaciones y en consecuencia no podias saber porque a ciertos alumnos no se recuperaba información. Ahora se agregó al final datos de alumnos que no se informan por algun motivo (esta mal el DNI, o el titulo araucano no existe en su propuesta, y otros)

La idea de esta información sobre errores encontrados al procesar Guarani 3 es que lo tomen para arreglar los datos que sean necesarios para poder informar la actuación academica de los alumnos, no para que lo informen al Sistema de Becas.
Igualmente para que lo puedan informar a este archivo de errores, cambiaremos el formato y subiremos el cambio a colab.siu.edu.ar

Los errores reportados yo no puedo corregirlos, si los alumnos se inscriben en la web de becas con un documento distinto al registrado en Guarani o eligen un titulo que no corresponde a su propuesta mucho no se puede hacer...
¿Comunicarse con el alumno? No informarlo, que como consecuencia no se le renovará la beca.

Entonces no estamos en sintonía. Al sistema de becas se le informan 3 archivos comprimidos en un solo zip:

  • alumnos.txt
    • planes_estudio.txt
    • alumnos_con_error.txt
      Eso siempre fue así… va más allá de si en algún caso puntual del área de becas se comunican con el alumno y le piden que haga alguna corrección.
      A mí, desde mi área, lo único que me corresponde es procesar las becas y entregar el zip conteniendo los 3 archivos de texto resultantes.
      Mi error fue asumir que habían agregado la generación del tercer archivo al proceso… por lo visto es algo muy parecido, pero esa nunca fue la intención.

Aguardaré a la próxima actualización así informamos ese ultimo archivo… gracias por la gestión!

Hola !
No es necesario enviar el archivo de alumnos con error en el zip . Si lo enviaron y les da error la importacion en ese archivo ,lo pueden eliminar del zip y subir nuevamente .
Recuerden que la importacion puede dar advertencias , pero esto no limita la subida de los archivos.
Si hay dudas sobre la subida de archivos en spupedidos.siu.edu.ar pueden remitir la consulta a infobecas@siu.edu.ar que el equipo encargado del modulo de pedidos les responderan .
Saludos
Marcela

Marcela, gracias también por esa aclaración!

Fijate de bajar nuevamente los scripts.
El archivo de errores ahora va formateado en 5 columnas para que lo puedan importar en el sistema de Becas.

Adjunto imagen.


Becas-informar-errores.png

Becas-informar-errores.png

Gracias Alejandro!

Revivo este hilo, luego de la última actualización del script me informaron errores en el cálculo de la cantidad de materias aprobadas… ¿a alguien más le pasó algo similar?

    SELECT COUNT(*)
         , SUM(CASE WHEN (fecha >= _FechaDesde AND fecha <= _FechaHasta) THEN 1 ELSE 0 END)
      INTO _cant_aprobadas, _cant_aprobadas_anio_a_evaluar
      FROM (SELECT elemento, MIN(fecha) fecha
              FROM vw_hist_academica_basica
             WHERE alumno = _arch2.alumno
               AND resultado = 'A'
          GROUP BY elemento);
renglones 249 a 256 de 03_f_int_alumnos_plan_progresar.sql (rev=51829)

Veo que la consulta que hace dicho calculo no tiene en cuenta el plan, estimo que eso podría estar generando duplicados. Una alternativa para filtrar elementos duplicados sin entrar en detalles del plan podría ser:

    SELECT COUNT(*)
         , SUM(CASE WHEN (fecha >= _FechaDesde AND fecha <= _FechaHasta) THEN 1 ELSE 0 END)
      INTO _cant_aprobadas, _cant_aprobadas_anio_a_evaluar
      FROM (SELECT elemento, MIN(fecha) fecha
              FROM vw_hist_academica_basica
             WHERE alumno = _arch2.alumno
               AND resultado = 'A'
          GROUP BY elemento);

Lo dejo para que lo analicen…

Y lo mismo que antes pero filtrando por plan_version del alumno:

    SELECT COUNT(*)
         , SUM(CASE WHEN (fecha >= _FechaDesde AND fecha <= _FechaHasta) THEN 1 ELSE 0 END)
      INTO _cant_aprobadas, _cant_aprobadas_anio_a_evaluar
      FROM (SELECT ha.elemento, MIN(ha.fecha) fecha
              FROM vw_hist_academica_basica ha
              JOIN sga_alumnos al ON al.alumno = ha.alumno AND al.plan_version = ha.plan_version
             WHERE al.alumno = _arch2.alumno
               AND ha.resultado = 'A'
          GROUP BY elemento);

Diego, la vista de historia academica recupera actividades de la version actual del plan del alumno. Podes probar cambiar la vista vw_hist_academica_basica por vw_hist_academica

Respecto a este filtro:

JOIN sga_alumnos al ON al.alumno = ha.alumno AND al.plan_version = ha.plan_version

No es correcto, porque en la vista de historia academica (ha.plan_version) se registra la version del plan de estudios en que el alumno realizó la actividad (en este caso que la aprobó) que podría ser una version de plan anterior a la verison actual o una version de plan de estudios de otro plan en el que estuvo el alumno; con lo cual no va a contar esa actividad porque es una version de plan de estudios distinta a la version actual.

Buen análisis! Yo solo miré por arriba y sugerí… Lo cierto es que todavía no hice ningún cambio.

Pensé en una subconsulta porque aveces trae 2 o más veces el mismo elemento…

¿Decís que cambiando vw_hist_academica_basica por vw_hist_academica en la primera de mis consultas alcanza?
Otra cosa que noté es que cuando hay equivalencias (a pesar de mi agregado) las cuenta 2 o más veces a cada materia porque es otro elemento.

¿Habrá un nuevo script descargable donde ya esté resuelto esto?

No realizamos ningun cambio.
Ya que tenes el caso, probaste cambiando la vista y verificando que informa menos materias y que son las que corresponden al plan actual del alumno?
Vamos a generar un caso de prueba y te avisaremos en cuanto tengamos algun resultado.
Saludos.

No, con cualquiera de las 2 vistas el resultado es similar…

SELECT 
          CASE WHEN (fecha >= '2020-04-01' AND fecha <= '2021-03-31') THEN 1 ELSE 0 END,
          *
              FROM vw_hist_academica_basica ha
              JOIN sga_alumnos al ON al.alumno = ha.alumno AND al.plan_version = ha.plan_version
             WHERE al.alumno = <ALUMNO>
               AND ha.resultado = 'A';

Esta query devuelve actividades de un plan anterior que el alumno aprobó y que esas actividades no se encuentran en el plan actual?

Esa última consulta parece que funciona correctamente pero es lo que antes hablamos que estaba mal… confirmá, agrego esa condición y listo!

Perdón, tomé el codigo que habias publicado vos, no el qu esta en la función.
Esta es la query,

 SELECT 
     CASE WHEN (fecha >= '2020-04-01' AND fecha <= '2021-03-31') THEN 1 ELSE 0 END  as aprobada_año_a_evaluar,
     *
      FROM vw_hist_academica
     WHERE alumno = <ALUMNO>
       AND resultado = 'A'
    ORDER BY fecha DESC;

Conta las que el 1er campo tiene valor 1. Fijate cual de esas no corresponde que informe. En que fecha fue aprobada, en que version de plan de estudios y si esa actividad se encuentra en la version del plan de estudios actual del alumno.
Fijte si fue aprobada en su propuesta o por otra propuesta (actividad comun entre propuestas)
Si podes enviá el resultado.