Fórum Sobre Mestre-Detalhe com ClientDataSet #275976

07/04/2005

0

pessoal tenho um ClientDataSet (Pai) conectado com a seguinte estrutura
Alunos
------------
CodAluno
Nome
CodPai
CidMae
e outros Dois (Filhos) com a seguinte estrutura
Pais
----------
CodPai
Nome
Tipo // Se é pai ou mãe
pois bem quando eu ligo com mestre-detallhe via (DataSetField ou qualquer outra estrutura) funciona beleza pra navegação, porém quando eu crio um novo aluno ele é inserido corretamente... e depois quando eu pesso outro ele recebe os dados mas no [b:8d5eac1583]Post[/b:8d5eac1583] do ClientDataSet de Alunos ele me dá o seguinte erro - [b:8d5eac1583]LinkFields to detail must be unique.[/b:8d5eac1583]... isso dando ou não um [b:8d5eac1583]ApplyUpdates[/b:8d5eac1583] na primeira inserção... acho que não é questão de chaves duplicadas até porque não é isso que o erro diz e eu mesmo forcei a entrada de chaves diferentes... :?:


Bruno Belchior

Bruno Belchior

Responder

Posts

07/04/2005

Kotho

É simples... o código do Pai (codPai) não é atribuido automaticamente nas tabelas Filhas... é preciso atribuir manualmente... eu costumo colocar no Evento OnAfterInsert das Tabelas Filhas... Pode ser, também, no OnBeforePost (funciona melhor quando se tem um DBgrid).


Responder

Gostei + 0

07/04/2005

Bruno Belchior

mas eu não quero atribuílos necessariamente...


Responder

Gostei + 0

08/04/2005

Kotho

Desculpe Bruno... acho que não tinha entendido bem o seu problema... Acho que o que vc está querendo, não seria, necessáriamente, um Master/Detail, mas sim um LookUp, ou seja, quando inclui-se um novo aluno, e atribui-se o Pai ou a Mae, aparece-lhe o nome... não é isso?


Responder

Gostei + 0

08/04/2005

Cabelo

Como vc ligou os componentes que fazem a inserção do registro?

Vc usa os mesmo componentes tanto para navegação quanto para Manutenção de registro?


Responder

Gostei + 0

11/04/2005

Bruno Belchior

Desculpe Bruno... acho que não tinha entendido bem o seu problema... Acho que o que vc está querendo, não seria, necessáriamente, um Master/Detail, mas sim um LookUp, ou seja, quando inclui-se um novo aluno, e atribui-se o Pai ou a Mae, aparece-lhe o nome... não é isso?
de certa forma sim, porém precizo de todos os campos e não apenas o nome...


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar