Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-11 Por tôpico Magnun Oliveira
desculpe eu errei .. o correto é poCascadeDeletes ... uma propriedade no 
options do DSP, habilitei ela, pois msm usando o cascade no banco sem a msm 
como true, ocorria um erro na exclusao ... mas agora está tudo ok.


  - 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

Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico Ricardo César Cardoso
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

Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico BandaLemuel
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

RES: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico Walter Alves Chagas Junior
OnCascade delete é uma clausula de FK no banco de dados e não  um metodo do DSP

[]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: quarta-feira, 9 de maio de 2007 08:35
Para: delphi-br@yahoogrupos.com.br
Assunto: 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

Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico Ricardo César Cardoso
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

Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico BandaLemuel

è 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

Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-09 Por tôpico Ricardo César Cardoso
Obrigado, novamente, pela explicação Wesley. Eu uso essa técnica q vc falou tb. 
A minha dúvida era se existia o recurso de OnDeleteCascade _DENTRO_ do 
TProvider pq tanto no texto do Eduardo Rocha que eu passei, como na resposta do 
Magnum isso foi citado (não claramente) mas como procurei e não achei, e como o 
Walter corrobou a não existência, não preciso mais procurar por nada disso e ao 
mesmo tempo tenho certeza que conheço duas boas soluções para este problema.

Sds,
Ricardo.

BandaLemuel [EMAIL PROTECTED] escreveu:  
 è 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

RE: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico Ricardo César Cardoso
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]



Re: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico BandaLemuel
Uma pergunta .. qual banco vc esta usando Firebird/Interbase ???

Wesley


  - Original Message - 
  From: Ricardo César Cardoso 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, May 08, 2007 8:38 AM
  Subject: 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]



   


--


  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]



RES: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico Walter Alves Chagas Junior
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

 


Re: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico Ricardo César Cardoso
Só pra complementar... a maneira que eu citei acaba sendo meio que no braço, 
mesmo, já que vc vai ter que listar (identificar) cada detail existente e daí 
apagá-lo.

Sds,
Ricardo.

BandaLemuel [EMAIL PROTECTED] escreveu:   
   Uma pergunta .. qual banco vc esta usando Firebird/Interbase ???
 
 Wesley
 
 - Original Message - 
   From: Ricardo César Cardoso 
   To: delphi-br@yahoogrupos.com.br 
   Sent: Tuesday, May 08, 2007 8:38 AM
   Subject: 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]
 
 --
 
 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]



Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico Ricardo César Cardoso
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]



Re: RES: RES: [delphi-br] Apagar master-detail

2007-05-08 Por tôpico Magnun Oliveira
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



RES: [delphi-br] Apagar master-detail

2007-05-07 Por tôpico Bruno Lichot
Vc tem q apagar os registros detalhes antes do máster

 

Para maiores informações pegue minha apostila sobre desenvolvimento passo a
passo client/Server com dbexpress no meu link de downloads gratuitos(abaixo
da minha assinatura)

 

E se vc quiser um cadastro mestre/detalhe de alta performance pegue o
exemplo do borcon 2006, e verifique o cadastro de pedidos

 

 

Atenciosamente,

 

Bruno Lichot

CodeGegar Product Evangelist

 

http://www.codegear.com

http://cc.codegear.com/Author/795118

 

 

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
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

 

__ Informação do NOD32 IMON 2247 (20070507) __

Esta mensagem foi verificada pelo NOD32 sistema antivírus
http://www.eset.com.br



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



RES: [delphi-br] Apagar master-detail

2007-05-07 Por tôpico Walter Alves Chagas Junior
Pra voce fazer isto, você tem que mudar o chavemento das tabelas detail usando 
a clausula On delete cascade.

[]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 13:18
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: [delphi-br] Apagar master-detail


opa valeu Marcio, mas naum tem um jeito de fazer o cascade automaticamente 
pelo cds?
detalhe, eu nao posso usar o cascade no banco ...

Original Message Follows
From: Márcio Ricardo [EMAIL PROTECTED]
Reply-To: delphi-br@yahoogrupos.com.br
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Apagar master-detail
Date: Mon, 7 May 2007 12:17:51 -0300

Seu programa está funcionando perfeitamente. Não pode apagar o pai e deixar 
os filhos orfão.

  Quando for apagar faça uma busca na tabela filho e apague os primeiros e 
depois vc apaga o pai, ok?
Como se fosse um delete cascade apaga o pai e sai procurando onde o mesmo 
faz referencia com tabelas filhas se achar apaga os filhos e os pais

Márcio Ricardo.
   - Original Message -
   From: Magnun Oliveira
   To: delphi-br@yahoogrupos.com.br
   Sent: Monday, May 07, 2007 11:52 AM
   Subject: [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





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

_
MSN Messenger: converse com os seus amigos online. 
http://messenger.msn.com.br



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Links do Yahoo! Grupos

 


RES: [delphi-br] Apagar master-detail

2007-05-07 Por tôpico Walter Alves Chagas Junior
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

 


RE: RES: [delphi-br] Apagar master-detail

2007-05-07 Por tôpico Magnun Oliveira
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