Celso, Com o mais profundo respeito que o mui nobrissíssimo colega merece, mas vou contestá-lo veemente a respeito disto.
A melhor forma de se usar os controles DBWare, é fazendo a conexa deles com o ClientDataset. Se bem que na Query dá pra fazer também. A questão que voce levantou, é plenamente solucionavel com os proprios recursos do Delphi. Voce dá um clique dulplo na Query ou no CDS e adiciona os campos ao Fields Editor. Com os campos adicionados, voce pode tratar a entrada de dados neles que no DBWare iráo refletir. Para tal voce tem as propriedades Dislpy Width, EditMask que voce pode configurar a forma que o dado será recolhido/Exibido pelo DBWare. Também voce tem as propriedades ConstraintErrorMessage e CustomConstraint que permitem voce tratar a consistência do dado que está sendo digitado no DBEdit por exemplo. Ou seja, oferecer o recurso o Delphi oferce. A questão, como eu disse no meu E-Mail, é saber usá-lo e usá-lo corretamente. []s Walter Alves Chagas Junior Belo Horizonte - MG - Brazil wchag...@bol.com.br http://www.geocities.com/SiliconValley/Bay/1058 http://delphitocorporerm.blogspot.com/ MSN: whitesock...@hotmail.com SKYPE: WalterChagasJr ----- Original Message ----- From: Celso Rivera To: delphi-br@yahoogrupos.com.br Sent: Monday, May 25, 2009 9:14 AM Subject: Re: [delphi-br] OOP - Quais as vantagens? Andreano e Walter, pode ser que eu esteja errado e por favor me corrijam se for o caso. Acho que com componentes dbware temos menos controle sobre o que acontece. Por exemplo, se é digitado um valor inválido para um campo, se for um campo dbedit, é exibida aquela mensagem padrão, enquanto que se for um edit, posso tratar com messagedlg, messagebox e etc. Sempre procurei fugir de componentes db, exceto dbgrid que utilizo apenas para apresentação. Outro exemplo, estou construindo um exemplo bobo de uma apostila e são utilizados componentes dbware com clientdataset. Em um dado clientedataset começou a dar um erro de índice não encontrado e o índice estava lá. Tive que apagar todos os índices do cds e recria-los novamente, aí funcionou. Por favor, se eu estiver errado me corrijam. Abraços -- Celso Rivera rivera.ce...@gmail.com [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]