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 Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-11-2004
castroruiz2001 castroruiz2001 is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 15
Poder: 0
castroruiz2001 Va por buen camino
IBDataSet Detalle

Saludos a todo el foro.

Tengo un par de IBDataSet Maestro-Detalle

Etos serian los registros de un detalle
>>> 1 >>> Rojo >>> 2.4
>>> 2 >>> Azul >>> 3.4
>>> 3 >>> Cafe >>> 1.6

Si yo modifico o inserto un registro en el detalle p.e.
>>> 2 >>> Verde >>> 2.4

Me actualiza por completo los registros del detalle
>>> 1 >>> verde >>> 2.4
>>> 2 >>> verde >>> 2.4
>>> 3 >>> verde >>> 2.4

creo haber hecho bien la relacion maestro detalle con los componentes pues en la sentencia SelectSQL del detalle tengo lo siguiente...
Select * from Detalle where Clave_det = :Clave_Foranea

en la propiedad DataSource del detalle pongo el dataSet del maestro.

Si alguien pudiera decirme el error que cometo Gracias.
Pero... porfavor contestenme.
__________________
Cesar Ruiz
Responder Con Cita
  #2  
Antiguo 17-11-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
Intenta esto....

Una pregunta... lo estas haciendo con campo LookUp para hacer referencia de la Descripcion a otra tabla???? si no es te pongo este ejemplo del Detalle:
Código SQL [-]
Select Fac.Bodega,Fac.TipoMov,Fac.Folio,Fac.Indice,Fac.ClaveArt,
Fac.Cantidad,Fac.Descto,Fac.Pventa,Fac.DesglosaI,Fac.ImpSIva,
Fac.ArtIva,Fac.ImpCIva,Fac.ArtDesc,Fac.ImpDescto,Fac.Servicios,
Inv.ClaveArt,Inv.DesArt
from TFAC_DFACTURAS Fac
Join TINV_ARTICULOS Inv on (Fac.ClaveArt=Inv.ClaveArt)
where Fac.bodega=:bodega and
Fac.tipomov=:tipomov and
Fac.folio=:folio
Con el JOIN te hace referencia a otra tabla y aprovechar para mostrar la Descripcion....

Yo intente usar Campos LookUp en el Detalle haciendo referencias a la tabla de Articulos para que me visualizara la DESCRIPCION pero me hacia un santo despapaye como te sucede a ti, por lo que mejor opte por un JOIN.

Realice pruebas con los componentes FibPlus y lo mismo me hacia un despapaye, Si de tanto buscarle lo corriges usando campos LOOKUP te agradecería mucho que me dijeras como le hicistes.

Saludos.

Última edición por AGAG4 fecha: 17-11-2004 a las 02:57:33. Razón: Corrección
Responder Con Cita
  #3  
Antiguo 17-11-2004
castroruiz2001 castroruiz2001 is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 15
Poder: 0
castroruiz2001 Va por buen camino
Unhappy

creo que dentro de la desesperacion que me aqueja cite las cosas mal... por lo que no estoy utilizando campos lookup

la actualizacion que trato de explicar que me hace es la siguiente...
>>> 2 >>> verde >>> 2.4
>>> 2 >>> verde >>> 2.4
>>> 2 >>> verde >>> 2.4


ahora la estructura de mis tablas es la siguiente...

CREATE TABLE ETIQUETAS (
ETIQUETA_ID ETIQUETA_DEF NOT NULL,
ETIQUETA_IMAGEN BLOB SUB_TYPE 0 SEGMENT SIZE 512,
ETIQUETA_DESCRIPCION VARCHAR(60),
ETIQUETA_CLIENTE_ID CLIENTE_DEF NOT NULL,
ETIQUETA_MATERIAL VARCHAR(60),
ETIQUETA_ANCHO DOUBLE PRECISION,
ETIQUETA_ALTO DOUBLE PRECISION,
ETIQUETA_EJE SMALLINT,
ETIQUETA_CENTROS VARCHAR(15),
ETIQUETA_ROLLOS VARCHAR(15),
ETIQUETA_TINTAS SMALLINT,
ETIQUETA_ESTADO CHAR(1) NOT NULL,
CONSTRAINT PK_ETIQUETA_ID PRIMARY KEY (ETIQUETA_ID)
);

CREATE TABLE ETIQUETAS_DET (
ETIQUETA_ID ETIQUETA_DEF NOT NULL CONSTRAINT ETIQUETAS_REF
REFERENCES ETIQUETAS(ETIQUETA_ID)
ON UPDATE CASCADE ON DELETE CASCADE;
ETIQUETA_ESTACION VARCHAR(5) NOT NULL,
ETIQUETA_TINTA_UV BOOLEAN_DEF,
ETIQUETA_PANTONE VARCHAR(20),
ETIQUETA_ANIFLOX DOUBLE PRECISION,
ETIQUETA_RASQUETA BOOLEAN_DEF,
ETIQUETA_BCM DOUBLE PRECISION
);
__________________
Cesar Ruiz
Responder Con Cita
  #4  
Antiguo 18-11-2004
castroruiz2001 castroruiz2001 is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 15
Poder: 0
castroruiz2001 Va por buen camino
Te agradesco Alfredo por tu comentario ya que al igual que tu tuve que agregar un campo condicionante mas dentro del where...

update ETIQUETAS_DET
set
ETIQUETA_ID = :ETIQUETA_ID,
ETIQUETA_ESTACION = :ETIQUETA_ESTACION,
ETIQUETA_TINTA_UV = :ETIQUETA_TINTA_UV,
ETIQUETA_PANTONE = :ETIQUETA_PANTONE,
ETIQUETA_ANIFLOX = :ETIQUETA_ANIFLOX,
ETIQUETA_RASQUETA = :ETIQUETA_RASQUETA,
ETIQUETA_BCM = :ETIQUETA_BCM
where (ETIQUETA_ID = :OLD_ETIQUETA_ID) and
(ETIQUETA_ESTACION = :OLD_ETIQUETA_ESTACION)

La clave fue el segundo condicionante "= :OLD_Etiqueta_Estacion"

Gracias.
__________________
Cesar Ruiz
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 11:34: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