è direto no arquivo do banco de dados... não é por dentro do delphi.. 
abre le no IBConsole e cria uma Trigger... ou no IBOConsole.. (bem mais facil) 
... ai qndo vc deletar da master ele deleta sozinho os Details...

        Wesley

  ----- Original Message ----- 
  From: Ricardo César Cardoso 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, May 09, 2007 8:56 AM
  Subject: Re: RES: RES: [delphi-br] Apagar master-detail


  Tudo bem, isso eu tb sei, o problema é onde achar este evento no 
TDataSetProvider ou em qualquer membro da classe TProvider, pq eu não achei.

  Obs: uso Delphi 2005, pode ser isso.

  BandaLemuel <[EMAIL PROTECTED]> escreveu: Se estiver usando o banco 
interbase.... voce pode criar uma trigger na Tabela Master... onBeforeDelete.. 
e deletar os detalhes antes de deletar o master... isso ficará transparente no 
aplicativo....

  Wesley

  ----- Original Message ----- 
  From: Ricardo César Cardoso 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, May 09, 2007 8:35 AM
  Subject: Re: RES: RES: [delphi-br] Apagar master-detail

  OK Magnum, entendido. Mas fiquei com a pulga atrás da orelha... Não achei o 
"OnCascadeDelete" no TDataSetProvider... mas deixa pra lá, era só curiosidade 
mesmo.

  Como prometido aqui vai o prometido para a exclusão de details em relações 
"Mestre/Detalhes" extraido da edição n°3 (Maio/2004) da revista "ActiveDelphi" 
- Artigo "Trabalhando com ClientDataSet" de Eduardo Rocha:

  [citação]
  4 - Quando Excluo um registro no ClientDataSet "Master", os registros no 
ClientDataSet "Detail" serão excluídos automaticamente?

  Não, isso deverá ser feito manualmente. Normalmente coloco o seguinte código 
no evento BeforeDelete do ClientDataSet "Master":

  [codigo]
  with ClientDataSetDetail do
  while not IsEmpty do Delete;
  [/codigo]

  O Provider possui uma opção de exclusão em cascata, mas isso só resolve no 
caso do banco suportar e de ter sido definido na foreign key.
  [/citação]

  Pois é... até aqui o Eduardo Rocha diz que existe, mas não consegui achar, 
mesmo usando FB e usando uma base de teste oferecendo o On Delete Cascade no 
Script de geração do banco.

  Resumo: tb estou na dúvida.

  Sds,
  Ricardo.

  Magnun Oliveira <[EMAIL PROTECTED]> escreveu: opa antes de mais nada naum se 
trata de não querer, tipo preguiça hehe

  Como existe OnCascadeDelete no Provider quando se usa cascade no banco, 
  simplesmente perguntei se existia uma configuração q fizesse o tal, sem o 
  cascade, para nao ficar reinventando roda.

  Mas como informaram q nao existe fiz algumas alterações em umas telas aqui e 
  coloquei o cascade no banco msm.

  Ricardo, fique a vontade se quizer mandar o exemplo, pq msm naum servindo 
  pra mim, pode vir a servir pra alguem aqui. Vlw.

  ----Original Message Follows----
  From: Ricardo César Cardoso <[EMAIL PROTECTED]>
  Reply-To: delphi-br@yahoogrupos.com.br
  To: delphi-br@yahoogrupos.com.br
  Subject: Re: RES: RES: [delphi-br] Apagar master-detail
  Date: Tue, 8 May 2007 16:51:13 -0300 (ART)

  Pois é Walter... milagre o Delphi ainda não faz...

  Walter Alves Chagas Junior <[EMAIL PROTECTED]> escreveu: 
  Graaande Ricardão, o homem que mora nos armarios do 
  quarto de mulher casada....

  Mas o que ele nao quer, é implementar codigo. E, do jeito que voce propos, 
  ele vai ter que implementar isto do mesmo jeito :)

  Ai não adianta rs

  []s

  Walter Alves Chagas Junior
  Projeto e desenvolvimento de sistemas
  Telemont Engenharia de telecomunicações S/A
  Belo Horizonte - MG - Brasil
  [EMAIL PROTECTED]
  Fone: (31) 3389-8217 Fax: (31) 3389-8215

  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  nome de Ricardo César Cardoso
  Enviada em: terça-feira, 8 de maio de 2007 08:39
  Para: delphi-br@yahoogrupos.com.br
  Assunto: RE: RES: [delphi-br] Apagar master-detail

  Mas é claro que tem como apagar os registros Detail sem usar o OnDelete do 
  banco...

  Se vc associou um CDS master a um CDS detail, no evento BeforeDelete do 
  CDS master vc manda apagar os registros do Detail.

  Eu tenho um exemplo, mas está no meu material em casa... se ninguém te 
  passar nada, amanhã posso te passar exatamente como fazer isso, o evento e o 
  código necessário.

  Sds,
  Ricardo.

  Magnun Oliveira <[EMAIL PROTECTED]> escreveu: 
  OK a duvida era realmente essa, se tem como apagar os detail's
  automaticamente quando excluir o registro master no cds SEM usar o On 
  delete
  cascade no banco. Mas como nao rola, vou ter q fazer no braço msm ... 
  vlw.

  ----Original Message Follows----
  From: "Walter Alves Chagas Junior" <[EMAIL PROTECTED]>
  Reply-To: delphi-br@yahoogrupos.com.br
  To: <delphi-br@yahoogrupos.com.br>
  Subject: RES: [delphi-br] Apagar master-detail
  Date: Mon, 7 May 2007 15:41:17 -0300

  Magnum,

  Você não pode apagar o registro master se ele tiver registros detail. 
  Para
  fazer isto automaticamente, você tem que mudar a chave estrangeira nas
  tabelas detail adicionando a cláusula On Delete Cascade nelas

  []s

  Walter Alves Chagas Junior
  Projeto e desenvolvimento de sistemas
  Telemont Engenharia de telecomunicações S/A
  Belo Horizonte - MG - Brasil
  [EMAIL PROTECTED]
  Fone: (31) 3389-8217 Fax: (31) 3389-8215

  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  nome de Magnun Oliveira
  Enviada em: segunda-feira, 7 de maio de 2007 11:53
  Para: delphi-br@yahoogrupos.com.br
  Assunto: [delphi-br] Apagar master-detail

  Fiz um master detail com CDS, inserção e alteração dah tudo certo, porem, 
  se
  eu for apagar um registro master com no minimo 1 detail dah esse erro:
  'cannot delete master records with details'
  se eu apagar um registro master sem nenhum detail funciona ...

  Alguma saca como resolver? vlw ...

  __________________________________________________________
  MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com

  --
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Links do Yahoo! Grupos

  __________________________________________________________
  MSN Busca: fácil, rápido, direto ao ponto. http://search.msn.com.br

  __________________________________________________
  Fale com seus amigos de graça com o novo Yahoo! Messenger
  http://br.messenger.yahoo.com/

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

  --
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Links do Yahoo! Grupos

  __________________________________________________
  Fale com seus amigos de graça com o novo Yahoo! Messenger
  http://br.messenger.yahoo.com/

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

  __________________________________________________________
  MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com

  __________________________________________________
  Fale com seus amigos de graça com o novo Yahoo! Messenger 
  http://br.messenger.yahoo.com/ 

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

  ----------------------------------------------------------

  No virus found in this incoming message.
  Checked by AVG Free Edition. 
  Version: 7.5.467 / Virus Database: 269.6.5/793 - Release Date: 7/5/2007 14:55

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





  __________________________________________________
  Fale com seus amigos de graça com o novo Yahoo! Messenger 
  http://br.messenger.yahoo.com/ 

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



   


------------------------------------------------------------------------------


  No virus found in this incoming message.
  Checked by AVG Free Edition. 
  Version: 7.5.467 / Virus Database: 269.6.6/794 - Release Date: 8/5/2007 14:23


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

Responder a