ADF tips: Forzar orden de commit en maestro-detalle

En este tip explicaré cómo evitar problemas a la hora de hacer commit de una transacción en la que se han creado registros dependientes por “foreign key” en base de datos.

Algunas veces por motivos de negocio nos vemos forzados a crear primero los registros dependientes y después el registro padre. Para evitar que a la hora de enviar los datos a base de datos tengamos problemas de que el registro hijo no encuentra su “parent key” tenemos dos opciones.

La primera opción, la más elegante: hacer uso de las asociaciones en modo “composition” entre las entities que forman el maestro-detalle.

ADF Entity Composition

Aún así, algunas veces nos vemos obligados a forzar programáticamente el envío de los registros “padre” para evitar problemas. En este caso la mejor opción es sobreescribir el método post-changes de la o las entities “hijas” y forzar el envío del padre antes que el suyo propio.

De esta forma obligamos a enviar a base de datos en el orden correcto de dependencias, con lo que nunca tendremos problemas del tipo “parent key no found”.

Evolución, innovación y transformación
35 especializaciones avaladas por Oracle
Oportunidades ilimitadas
El equipo marca la diferencia
Posts 100% Oracle
Sigue nuestro día a día