FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
mal funcionamiento maestro detalle con ADO
hola como estan.. les escribo porque tengo un problema no tan grave si se quiere pero me esta costando mucho saber cual es la solucion a ver si me pueden ayudar. tengo una aplicacion en delphi 7 con la base de datos hecha en access, que son estas:
Cliente: CUIT------------ClavePrimaria Nombre y Apellido Domicilio Fecha de Compra: CUIT Fecha Detalle de Compra: Fecha Codigo Descripcion Cantidad Precio Total El problema es este, en delphi la relacion maestro-detalle se establece perfectamente a traves de los componentes ADO que los tengo en un modulo de datos.. las relaciones serian: CUIT (Cliente) --> CUIT (Fecha de Compra) Fecha (Fecha de Compra)--> Fecha (Detalle de compra) Pero cuando agrego un registro en la tabla Fecha de Compra que tiene la misma fecha de compra que la de otro cliente pero distinto CUIT... este registro me aparece repetido en el cliente que tenia la misma fecha tambien o sea no puedo repetir la fecha de compra.. por mas que el cliente sea distinto porque me pone como que el otro que compro en esa fecha tambien compro lo que el ultimo compro. No se si me han entendido.. pero ojala me puedan ayudar. gracias. Ariel |
#2
|
||||
|
||||
Fecha de Compra y Detalle de compra no tienen claves primarias, intentalo de nuevo al ponerles una
|
#3
|
||||
|
||||
Cliente:
CUIT------------ClavePrimaria Nombre y Apellido Domicilio Detalle de Compra: IdDetalle (autoincremento, clave primaria) idCUIT (integer, y que hará referencia a la tabla Cliente) Fecha Codigo Descripcion Cantidad Precio Total El campo Fecha vas a usarlo mucho, sobre todo en las búsquedas, sería conveniente añadir un índice secundario a dicho campo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#4
|
|||
|
|||
me ayudaron mucho sus aportes.. y les hice algunos cambios a las tablas, asi:
Cliente: CUIT------------ClavePrimaria Nombre y Apellido Domicilio Fecha de Compra: Nº Factura (texto 10 caracteres)-----------ClavePrimaria CUIT Fecha Detalle de Compra: Nº Factura (texto 10 caracteres) Fecha Codigo-----------ClavePrimaria Descripcion Cantidad Precio Total Entonces las relaciones maestro detalle quedarian: CUIT ------> CUIT Nº Factura -------> Nº Factura Todo anda bien, pero cuando intento establecer la relacion en delphi con los componentes ADO con respecto al Nº Factura me sale un error que dice: Argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros. La verdad no se que es porque en la relacion con el campo CUIT la hace bien. Utilizo tres tablas ya que el cliente puede comprar mas de una cosa en una misma factura no se si me explico... y la relacion es sencilla nada mas que me sale ese error, ojala pueda resolverse. gracias |
#5
|
||||
|
||||
Supongo que código, será el código de producto que se ha comprado, al ponerlo de clave primaria, solo podrá comprarse ese producto una sola vez en toda la vida del programa.
Un consejo: el número de Factura tiene todas las papeletas para ser clave primaria de tu tabla "Fecha de compra", pero aviso que no es buena idea, ya que si el número de factura cambia de formato, afectará al diseño de la base de datos. Por este mismo motivo, creé el campo IdDetalle. Como resulta que estas intentando hacer una factura, entonces sí necesitas 3 tablas: Cliente: CUIT------------ClavePrimaria Nombre y Apellido Domicilio Factura IdMaestro (autoincremento, clave primaria) Nº Factura (texto 10 caracteres) CUIT Fecha Detalle de Factura: Fecha IdMaestro (integer, clave ajena de Factura) idDetalle (autoincremento, clave primaria) Codigo Descripcion Cantidad Precio Total Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
|||
|
|||
gracias por sus concejos la verdad que funciono todo a la perfeccion. gracias de vuelta
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes | akinom38 | Varios | 1 | 09-11-2007 19:27:44 |
Respecto a la relacion maestro detalle detalle | ilichhernandez | Conexión con bases de datos | 0 | 15-05-2007 18:13:54 |
Numerar el detalle Maestro / detalle en secuencia | josejose | SQL | 5 | 10-02-2007 00:27:38 |
Reporte Maestro/Detalle/Detalle de 4 Tablas | jovehe | Impresión | 2 | 23-03-2005 01:25:02 |
Maestro-Detalle ;Actualizar detalle a partir de un DBgrid | norberto_larios | Conexión con bases de datos | 1 | 11-09-2004 18:17:34 |
|