Evento After ApplyUpdates do Master/Detalhe não é disparado.
Ola!
:D
Sou Desenv. D7 + IB/FB + DBExpress
Tenho a seguite dúvida:
Tenho um aplicativo que roda uma tabela Mestre/Detalhe.
Na insersao, uso o After ApplyUpdates p/ atualizar outro tabela,
funciona perfeitamente.
Mas já na alteracao, quando somente altero a tabela Itens,
o After ApplyUpdates do mestre não é disparado.
Fazendo testes, fiz modificações em um campo do mestre,
o mesmo foi disparado.
Então pergunto, se uma Tab Mestre/Detalhe, a tab. Mestre não
sofrer alteração e itens sim, o evento de Mestre After ApplyUpdates não será disparado ?
Então como fazer para que o mesmo dispares sem ter q ficar alterando
campos do mestre sem necessida p/ q o mesmo dispare ?
Desde já meus agradecimentos.
T+
ANT.CARLOS/SP
Feliz Ano Novo!
:D
:D
Sou Desenv. D7 + IB/FB + DBExpress
Tenho a seguite dúvida:
Tenho um aplicativo que roda uma tabela Mestre/Detalhe.
Na insersao, uso o After ApplyUpdates p/ atualizar outro tabela,
funciona perfeitamente.
Mas já na alteracao, quando somente altero a tabela Itens,
o After ApplyUpdates do mestre não é disparado.
Fazendo testes, fiz modificações em um campo do mestre,
o mesmo foi disparado.
Então pergunto, se uma Tab Mestre/Detalhe, a tab. Mestre não
sofrer alteração e itens sim, o evento de Mestre After ApplyUpdates não será disparado ?
Então como fazer para que o mesmo dispares sem ter q ficar alterando
campos do mestre sem necessida p/ q o mesmo dispare ?
Desde já meus agradecimentos.
T+
ANT.CARLOS/SP
Feliz Ano Novo!
:D
Ant.carlos/sp
Curtidas 0
Respostas
Thomaz_prg
25/12/2005
Se você está usando esse evento para alterar uma outra tabela, te pergunto, porquê não usar uma trigger?? (Além de mais rápido, você teria menos implementação no seu sistema).
GOSTEI 0
Emerson Nascimento
25/12/2005
uma forma de fazer isso funcionar seria colocar a tabela mestre em modo de edição no mesmo momento em que a tabela detalhe entrar em modo de edição.
no evento OnStateChange do datasource [b:f18113033b]detalhe[/b:f18113033b], coloque:
no evento OnStateChange do datasource [b:f18113033b]detalhe[/b:f18113033b], coloque:
if TDatasource(Sender).Dataset.State in dsEdit then try //*** note que aqui é o datasource mestre ***// if not DatasourceMestre.Dataset.IsEmpty then DatasourceMestre.Dataset.Edit; except end;
GOSTEI 0