tem um vídeo com este assunto do FDD de 2008 no meu link de download, pode 
ajudar tb.

HTTP://cc.codegear.com/author/795118

abs

BL

From: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] On 
Behalf Of Daniel Sobrinho Laporte
Sent: domingo, 7 de junho de 2009 23:49
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Re: 3 Camadas - Master/Detail - A luta continua





Olá Carlos,

Isso é bem simples, funciona assim:

Mestre:
SELECT
ID,
CAMPO
FROM
TABELA1
WHERE
TABELA1.ID =:ID

Detalhe:
SELECT
ID,
ID_DETALHE,
CAMPO_DETALHE,
FROM
TABELA2
WHERE
TABELA2.ID = :ID

É extremamente importante que você configure os providerFlags nos campos do
SQLDataSet. Ligando os campos corretamente, o campo DataSetField será criado
no master, dai é só vinculá-lo ao detail. Tenha certeza de que o seu Detalhe
possui chave com seu mestre conforme o exemplo acima.

Um abraço,
Daniel.
2009/6/7 Carlos <gcm3...@yahoo.com.br<mailto:gcm3102%40yahoo.com.br>>

>
>
> Boa tarde meu camarada!
> Estou usando D2007 com TSqlConnection, SqlDataSet + DataSetProvider bo
> Server e no Client estou usando ClientDataSet com DataSetField.
> Já revisei a aplicação, mas devido a minha inexperiência neste tipo de
> aplicação pode ser que esteja faltando algum parâmetro.
> Tenho:
> 3 SqlDataset com a propriedade SqlConnection ligado ao TSqConnection;
> 1 DataSetProvider com as propriedades poIncFieldProps, poCascateDeletes,
> poCascadeUpdates, poPropogateChanges e poUseQuoteChar como True e sua
> propriedade DataSet Linkada ao SqlDataSet Mestre
> 1 DataSource com a propriedade DataSet linkada com a mesma SqlDataSet do
> DataSetProvider(sdsServidor);
> 1 SqlDataSet detail (sdsCnh) com a propriedade DataSource linkada com o
> DataSource Mestre;
> 1 SqlDataSet detail (sdsCredenc) com a propriedade DataSource linkada com o
> DataSource Mestre;
>
> As instruções Sql de cada uma:
> Mestre: 'select * from servidor where rg = :rg';
> Detail 1: 'select * from cnh where rg = :rg';
> Detail 2: 'select * from credenc where rg = :rg';
>
> Configurei as propriedades ProviderFlags dos SqlDataSet para:
> pfInUpdate, pfInWhere e pfInKey para True nos campos chave e pfInUpdate
> como true para os demais campos;
>
> Configurei os parâmetros;
>
> No Client inseri um TDComConnection com as propriedades ServerGuid e
> ServerName configuradas;
> 1 ClientDataSet com as propriedades RemoteServer e ProviderName
> configurados e nele os 02 DataSetFields que irei usar nos 2 ClientDataSet
> restantes;
>
> Como pode conferir, aparentemente ta tudo certo mas...sempre tem um
> mas...apenas os dados da SqlDataSet mestre (servidores)são exibidos e as
> outras 2 não aparece nada. Creio que o erro está no server, haja vista que o
> Client só exibe os dados.
>
> Caso possa detectar uma falha e me informar, ficarei muito agradecido!
> Fraterno abraço a todos,
> Carlos
>
> os campos
>
>
>

--
Daniel Sobrinho Laporte
Analista de Sistemas e Desenvolvedor Delphi + Firebird.
Colunista e Editor Técnico ClubeDelphi - DevMedia.

[As partes desta mensagem que não continham texto foram removidas]



[As partes desta mensagem que não continham texto foram removidas]

Responder a