Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #8  
Antiguo 24-08-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Una forma genérica de asignar maestro/detalle con la estructura que pusiste arriba seria:

Supongamos que tenés declarado
Código SQL [-]
CREATE GENERATOR G_MAESTRO;
CREATE GENERATOR G_DETALLE;

CREATE TABLE MAESTRO (
  IDMAESTRO INTEGER NOT NULL,
  FECHA_1 DATE,
  IDUSUARIO INTEGER,
  TOTAL NUMERIC(15,2),
  CONSTRAINT MAESTRO_PK PRIMARY KEY (IDMAESTRO),
);

CREATE TABLE DETALLE (
  IDDETALLE INTEGER NOT NULL,
  REFMAESTRO INTEGER NOT NULL,
  IDCLIENTE INTEGER NOT NULL,
  IDPRODUCTO INTEGER NOT NULL,
  CONSTRAINT MAESTRO_PK PRIMARY KEY (IDDETALLE),
  FOREIGN KEY(REFMAESTRO) REFERENCES MAESTRO(IDMAESTRO)
);

Triggers para generators:
Código SQL [-]
SET TERM ^;
CREATE TRIGGER MAESTRO_BI FOR MAESTRO ACTIVE BEFORE INSERT OR UPDATE
AS
BEGIN
  IF (NEW.MAESTRO_ID IS NULL) THEN
     NEW.MAESTRO_ID = GEN_ID(G_MAESTRO,1);
END^

CREATE TRIGGER DETALLE_BI FOR DETALLE ACTIVE BEFORE INSERT OR UPDATE
AS
BEGIN
  IF (NEW.DETALLE_ID IS NULL) THEN
     NEW.DETALLE_ID = GEN_ID(G_DETALLE,1);
END^
SET TERM ;^

Y esté asignado en 'MAESTRO':

Cita:
.IBDataSetMaestro -> TABLE MAESTRO
.dsMaestro -> IBDataSetMaestro
.GeneratorField -> G_MAESTRO

Y en 'DETALLE':

Cita:
.IBDataSetDetalle -> TABLE MAESTRO
.dsDetalle -> IBDataSetDetalle
.GeneratorField -> G_DETALLE

Debería funcionar si:

Cita:
.IBDataSetDetalle.SelectSQL:= 'SELECT * FROM DETALLE WHERE REFMAESTRO = :IDMAESTRO';
.IBDataSetDetalle.DataSource:= dsMaestro;

Saludos.

Última edición por ecfisa fecha: 24-08-2010 a las 18:58:06.
Responder Con Cita
 



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta maestro-detalle, DBExpress con MySQL Josepo Conexión con bases de datos 6 30-11-2007 17:59:06
Consulta maestro detalle. jplj SQL 5 30-05-2007 20:24:14
Consulta sobre maestro detalle ilichhernandez Conexión con bases de datos 0 18-05-2007 19:13:06
Problema con consulta en Maestro-Detalle TrUnkS SQL 2 11-10-2006 00:20:47
Consulta Maestro Detalle Acker SQL 1 10-07-2006 19:25:58


La franja horaria es GMT +2. Ahora son las 04:23:24.


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