buenos días!
Se presento el siguiente problema, el alumno puede inscribirse a la materia sin problema alguno desde el 3w, pero cuando genera su comprobante de inscripción, termina entregando los datos de otro alumno que puede corresponderse con un alumno que se migro del viejo sistema o de un alumno que se inscribió en otra materia y de otra carrera.
Cual puede ser el problema?
Creemos que el error se esta dando en el procedimiento que genera los números de transacciones, el procedimiento está generando números que ya se están utilizando. Cual es el procedimiento que realiza esto?
Gracias!!!
El proceso que se utiliza en todos los lugares que se necesita registrar un numero de transaccion se llama sp_nroTransaccAG(:
Este proceso lo unico que hace es insertar un registro en la tabla aca_nros_transacc el cual tiene un campo autoincremental, de donde se devuelve ese valor, por lo cual no deberia haber datos duplicados.
Esa tabla puede ser que la hayan borrado y vuelto a crear?
Si es asi, entonces deberias ver cual es el ultimo valor de transacciones usado e insertar un registro con un valor mas grande en esa tabla, asi la secuencia se actualiza y sigue a partir de ese numero.
Estos nros de transacciones se usan en inscripciones a carrera, materias, examenes, reinscripciones, bajas de inscripciones a cursadas y examenes, …
– Proba ejecutando esto:
EXECUTE PROCEDURE sp_nroTransaccAG( )
Hola!
Gracias por responder!
Te comento que realice una actualización en lo que hace al valor del número de transacción en cuestión, se dio un valor mucho mayor al que existía con la intención de generar nuevos comprobantes a partir del dicho número y lo realiza bien tabla “aca_nros_transacc”.
Pero sigue generando comprobantes erróneos, sigue generando comprobantes con datos de chicos de otra carrera.
Es como que está faltando actualizar otro dato, en otra tabla.
Se realizo la baja de la inscripción a la materias y posteriormente se lo daba de alta y eso genero, un comprobante con número de transacción distinto al anterior pero con datos de otro alumno de otra carrera.
Lo que si notamos es que todos absolutamente todos los comprobantes que se están generando son de una carrera especifica, son todos comprobantes a la carreras de Geología plan 74.
Cual puede ser el motivo de este error?
Que otras tablas son consultadas para generar este comprobante?
Gracias!
Es la unica tabla.
Si insertas un numero grande en esa tabla, uno que no haya sido utilizado y luego registras una inscrpciòn a cursada, el nro de transacciòn que se registra no es el nro que le sigue al que insertaste a esa tabla?
¿Verificaste el nro de transaccion que se guarda en la tabla de inscripcion a cursada?
Esto para ver si es que esta guardando mal el nro de transaccion alli o es un problema de visualizaciòn del comprobante de inscripcion o bjaa de inscripcion a cursada.
¿Si corres esto, se actualiza en 1 el valor de ese campo?
select max(nro_transaccion) FROM aca_nros_transacc;
execute procedure sp_nroTransaccAG();
select max(nro_transaccion) FROM aca_nros_transacc;
¿Cual es la version del sistema? Asi vemos de hacer una prueba para verificar si hay un problema.
Solucionado muchas gracias!
Era problema de nro_transacción. En la tabla sga_insc_cursadas se disponía de un valor muchísimo mayor al que figuraba en la tabla aca_nros_transacc.
Se corrió esta consulta SELECT max(NVL(nro_transaccion,0)*1) FROM sga_insc_cursadas y luego se actualizo el número por el correcto en aca_nros_transacc.
Recorda que ese nro de transaccion no solo se usa alli sino en otras tablas, deberias sacar el mayor valor de todas estas tablas para setear correctamente el maximo valor en la tabla de nros de transaccion:
sga_insc_cursadas
sga_insc_cur_bajas (nro_transaccion y nro_trans_baja)
sga_insc_cur_recha (nro_transaccion y nro_trans_recha)
sga_insc_examen
sga_insc_exa_bajas (nro_transaccion y nro_trans_baja)
sga_insc_exa_recha (nro_transaccion y nro_trans_recha)
sga_certif_pedidos
sga_reinscripcion
Muchas gracias por la aclaración!
Error corregido!!!