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)
-   -   campos anidados (https://www.clubdelphi.com/foros/showthread.php?t=88686)

alexglez1255 16-07-2015 00:27:19

campos anidados
 
Hola amigos como estan todos, que mi Dios Jehova los colme a todos de bendiciones....tengo ya varios meses trabajando con campos anidados, pero por una razon que desconozco no han podido funcionar, son tres tablas 1.-Clientes 2.-Contratos 3.-Articulos de contrato. cuando doy de alta puedo dar de alta contratos pero nunca he podido dar de alta articulos de contrato...por lo que use otra tabla independiente para poder dar de alta....sin embargo ahora que estoy queriendo consultar los contratos, segun lo que he entendido al solo jalar el cliente automaticamente me deberia de jalar todos los contratos y a su ves tambien todos los articulos de cada contrato...me explico ...pero en teoria solo me jala todos los contratos pero no me jala ninguno de los articulos de cada contrato... alguien tendra un ejemplo sencillo y que funcione para saber que me esta faltando o algun manual que explique como funcionan exactamente....muchas gracias....estoy usando firebird con delphi 6 enterprise, y uso el ibexpert....las tablas las cree con interbase...adjunto el programa ... las tablas anidadas son uncliente, contuncliente y articcontuncliente...son de clientes, contratos y articulos de cliente.....

AgustinOrtu 16-07-2015 01:24:15

No nos has dicho que componentes usas para conectarte

También deberías indicar como los tienes conectados o el código que usas para eso

Por otro lado también la estructura de las tablas y las relaciones también.

Casimiro Notevi 16-07-2015 01:39:57

La cara oculta de Delphi

alexglez1255 16-07-2015 21:39:48

manejo las tablas Clientes, contratos y articulosdecontrato
bien mira casimiro... en el modulodatos manejo 3 querys y dos datasource

1.-Qryuncliente. con todos los campos del cliente...
Sql de Qryuncliente
Código Delphi [-]
select *  from CLIENTES
where  COD_CLIENTE =:cod_cliente

2.-UN DATASOURCE Dsuncliente tiene como DATASET: Qryuncliente

3.-un QUERY Qryuncontra el cual maneja como DATASOURCE:Dsuncliente
Sql de Qryuncontra
Código Delphi [-]
select  *  from CONTRATOS
where cod_cliente=:cod_cliente

4.-UN DATASOURCE Dsuncontr que tiene como DATASET: Qryuncontra

5.-un QUERY Qryunarticontra que tiene como DATASOURCE: Dsuncontr
Sql de Qryunarticontra

Código Delphi [-]
select * from ARTICULOSDECONTRATO
where cod_contrato=:cod_contrato

Y en El modulo de Logicanegocio....
tengo
1.-un DATASETPROVIDER DSPuncliente
donde el DATASET ES modulodatos.qryuncliente

2.- un CLIENDATASET: Cdsuncliente para el cliente que se va a escoger
donde el PROVIDERNAME ES:DSPuncliente y tiene un params = cod_cliente

3.-un CLIENDATASET: cdscontratuncliente para los contratos
NO tiene PROVIDERNAME sino que DATASETFIELD:cdsunclienteqryuncontra param =cod_contrato

4.-y por ultimo un CLIENDATASET : cdsarticConunCliente para los articulos de contratos
NO tiene PROVIDERNAME sino que DATASETFIELD:cdscontraunclienteqryunarticontra param =cod_contrato

ESO ES TODO ALGUNA SUGERENCIA..?


La franja horaria es GMT +2. Ahora son las 23:37:06.

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