Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-12-2004
Arturo Arturo is offline
Miembro
 
Registrado: sep 2004
Posts: 91
Poder: 20
Arturo Va por buen camino
error de violation of foreign key constraint... en ibx

Hola
Tengo una duda de intebase 6.0, tengo dos tablas en la cual una esta Regvta y DetVt y las demas tablas dependientes comos son las de Clien, prods...
me da un error al insertar datos desde el programa en delphi en el detalle que dice: violation of foreign key constraint "Id_vta_ref" on table "Detvt".
los campos de Regvta son: vta_id, fecha, Id_clie, total, iva
los campos de Detvt son: Det_id, No_vta, idProd, cant, prec

Para la tabla de detvta tengo una llave foranea: after table detvta add constraint Id_vta_ref foreign key (No_vta) references Regvta(vta_id) on update cascade on delete cascade;

las inserciones y modificaciones lo consigo con los ibx de los componentes Ibdataset, los cuales ya los relacione para tener la relacion uno-muchos (prop. dataset del detalle). Y en el evento del componente Ibdtdetvta onnewrecord coloque el codigo:
modulo.ibdtdetvtaNo_vta.value:=modulo.ibdtvtavta_id.value;
Cuando inserto datos en el detalle es ahi donde me da el error, alguien podria decirme una solucion por lo que sucede.
les agradesco

bye.
Responder Con Cita
  #2  
Antiguo 07-12-2004
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Te recomiendo....

Te recomiendo usar la variable CopyMasterFieldToDetail := true; esta misma se encuentra en la ultima versión de los IBX, D6=Ver. IBX 6.08 y
D7=Ver. IBX 7.08, esta variable lo que hace es que antes de guardar el Detalle su llave primaria, le asigna Automaticamente lo que contiene la Llave del Maestro y por lo tanto no tienes que preocuparte de asignarle los datos de la llave primaria al detalle, esta variable la tienes que poner al iniciar la captura del Maestro detalle.

Espero te sirva.
Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:48:25.


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
Copyright 1996-2007 Club Delphi