estoy haciendo un proceso que me devuelva a todos aquellos alumnos que deben n materias. En nuestro caso lo usaremos para saber cuantos estarían en condiciones de recibirse (en este caso n sería igual a un número arbitrario que no superaría los valores 3 o 4, pero para el caso es lo mismo).
El tema es que, usando de base el SP que calcula el % de avance en la carrera, donde tomo una carrera y ciclo por los alumnos, tirando esa consulta en tiempo real (lanzada desde un formulario) tarda muchísimo y además se come todo el procesamiento del equipo. En definitiva, el usuario cerrará la aplicación pensando que se colgó y lo cierra.
La pregunta es: ¿cómo puedo lanzar un proceso (de este tipo, un SP) en batch para que quede corriendo fuera de línea y me devuelva el resultado en alguna tabla o archivo para poder ser recolectado en otro momento? ya que este proceso lo debo hacer para todas las carreras de la universidad y para todos sus alumnos.
De paso, si alguno estuvo trabajando en el desarrollo de un script similar, agradecería que lo comparta conmigo
Hola Juan, nosotros habiamos pensado en armar una tabla auxiliar, que se actualice con cada cierre de acta de promoción, examen y equivalencia y rectificativas, para que lleve la cantidad de materias que tiene aprobadas cada alumno, opr carrera.
Este proceso lo que haría sería tomar la cantidad de materias del plan de estudios y tomar de esta tabla los que superan esa cantidad.
Nosotros pensamos desarrollarlo para la versión 2 a través de los triggers de update e insert de las tablas de detalle asociadas.
Esta idea por ahí te sirve
Saudos
Paola
la solución a priori me parece factible. Voy a analizarla bien. Y respecto del unload a un archivo la había pensado, pero el tema era como poner el proceso en el cron del equipo.
Hay algún SP que se usa en la operaciòn de solicitud de tìtulo que te devuelve las materias que le faltan aprobar a un alumno para recibirse (se muestran y se puede imprimir un listado).
No sé que diferencias tendrà con el SP de % de avance, pero capaz que es un poco màs ràpido. Para que lo tengas en cuenta, o te fijes si tienen diferencia …