Fórum Mestre-Detalhe ( problema no detalhe ) #385499

02/09/2010

0


 Pessoal

Estou com um form mestre-detalhe (SQLDataSet,ClientDataSet,DataSetProvider,DataSource) para inclusao,
sendo que a PK do detalhe esta sempre nula e assim dando erro de chave duplicada/Violada.
A tabela detalhe esta com campo generator e um trigger no BeforeInsert (Firebird). Acredito que devido o mestre-detalhe ele naum aciona o trigger, e o dbgrid dah pau.

Em outras tabelas sem mestre-detalhe e com este trigger-BI funciona 100%.

tentei esta dica

procedure TFrmVenda.cds_DetalheNewRecord(DataSet: TDataSet);
begin
cds_detalheCODIGO.Value := cds_detalhe.RecordCount+1;
end;


mas a tabela detalhe repete os codigos para mestre diferente.

Alguem pode dar uma luz.

Grato
 
Marcos Roberto

Marcos Roberto

Responder

Posts

02/09/2010

Eriley Barbosa

Tente passar o código da tabela mestre no onNewRecord da tabela de detalhe. Tente fazer o autoincremento desta tabela no before post, usando um select max. E o relacionamento faça via sql quando estiver navegando no afterscroll da tabela mestre, só testa se não está em estado de inserção ou edição, eu uso assim e nunca deu problema.
Responder

Gostei + 0

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

Aceitar