Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problemas master detail (https://www.clubdelphi.com/foros/showthread.php?t=3108)

rafadrover 21-08-2003 21:11:21

Problemas master detail
 
Hola, tengo un pequeño problemas con dos tablas, maestro detalle, en modo browsing todo funciona perfectamente, se filtran las filas de la tabla detalle segun voy moviendome sobre la maestra, el problema viene cuando inserto un nuevo registro el el maestro, lo inserto, hago un post, luego cuando quiero insertar un registro en el detalle, funciona, pero cuando hago el post del detalle me da un error en el foregin key, el problema es que yo asigno mediante programacion el codigo del maestro, y esto tocaria funcionar.

Luego, si inserto un registro en el master, me muevo sobre el master, vuelvo al registro que acabo de insertar, e inserto lineas en el detalle, todo me funciona perfectamente, no se, me podriais echar un cable.
Gracias.

delphi.com.ar 21-08-2003 21:22:33

Indudablemente la base de datos está recibiendo primero los datos del Detail que del Master o estas relacionándolos por valores incorrectos, y esto si hay una relación está bien que produzca un error.
Como norma general siempre el primer dato a ingresar es el del Master, y el ID del master se la debes pasar al campo que lo relaciona en el Detail, si tienen valores diferentes estos registros nunca estarán relacionados o se relacionará el Detail con otro master.

Mi único consejo es que seas prolijo, ya que esto no es nada difícil y menos imposible.

Saludos!

rafadrover 21-08-2003 21:43:32

Correcto, siguiendo el hilo de lo que me has comentado, he visto el problema, antes de insertar en el detalle no aseguraba que habia hecho un post del maestro, por eso no encontraba el codigo del maestro :D , lo que hago ahora es que cuando van al boton de insertar en el detalle, si el maestro esta en dsInsert, obligar un post.

Muchísimas Gracias.

Cabanyaler 26-08-2003 14:13:14

... si , es una solución, pero debes de huir tambien de realizar las Foreign Key con campos autoincrementativos, ya que sólo se graban en la maestro cuando se ha realizo e post y al grabarse antes el esclavo esa clave ajena aún no tiene valor en el maestro.


La franja horaria es GMT +2. Ahora son las 18:02:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi