Hola,
estamos personalizando la operacion ABM de Comisiones, porque necesitan que las comisiones tengan dos atributos nuevos. Los datos de la comisión los guarda y modifica bien, pero al querer Agregar un docente, da el siguiente error: “Uno de los campos contiene un valor que no figura en la tabla original. Referencia dba.fk_doc_com_comis”.
Que puede ser? No modificamos nada de la dw de agregar de docente.
La ventana que comanda esa operación, primero graba los cambios de las comisiones.
En ese proceso se debería recuperar el serial que se generó.
Luego, con el serial reemplaza el campo en la dw de docentes.
O no se está recuperando el serial, o algo falla.
Fijate en el evento confirmar de la ventana a ver que pasa.
Hola Emilio,
Cuando hago la traza, lo que veo es que no recupera el serial, sino que toma valor 0.
Volví a hacer la personalización paso a paso e iba probando.
Copié w_comision, w_detalle_mesa_examen_comision, d_comision, d_comision_det como w839_comision, w839_detalle_mesa_examen_comision, d839_comision, d839_comision_det y modifiqué d839_comision, d839_comision_det para que actualice la tabla personalizada u839_comisiones con ABM Múltiple y al probar crear una comisión con un docente da el error que et comento arriba.
No logro entender que es lo que hace que no se tome el valor serial que corresponde.
Los datos del dca son
cur00002, 1, w_filtro_comision, uo_dw,dp_periodos_comisiones,uo_tab_filtro,FILT_MAT,dks_materias_comision
cur00002, 2, w839_comision, uo_dw,dks_materias_comision,uo_asignador,uo_dw_autoinc,d839_comision,d_bandahoraria,2,d_docentes_x_comision,d_docentes_busq,d_asignaciones_por_periodo,7,d_esc_not_mat_cur
lo puse así:
TABLA=sga_comisiones;IDENTITY=comision;CAMPOS=comision,sede,unidad_academica,materia,anio_academico,periodo_lectivo,nombre,catedra,escala_notas,carrera,plan,grupo_carrera,turno,letra_desde,letra_hasta,capacidad,insc_habilitada,estado;KEY=comision;
pero al confirmar no me dice nada, ni error ni que fue exitoso y al volver a entrar en la operación no está la comisión.
Lo puse en d839_comision y d839_comision_det
Lo del serial te funcionará si no hay impedimentos para cargar registros en la tabla personalizada.
En el caso tuyo tenes una verificacion en el trigger, lo cual provoca que se cargue el registro en sga_comisiones y no en tu tabla.
El rollback volverá todo para atras pero los seriales quedarán desincronizados.
Es un escenario bastante particular pero el uo_dw_autoinc en alguna situación te fallará.
Volvé atras el cambio de la tabla para poner comision como integer y probá el uo que te mandé.