Particularmente, eu faria a validação usando eventos do DataSet e eventos dos 
objetos TField associados ao mesmo (OnValidate, OnSetText, etc.). Aí, vc deve 
perguntar: "Como faço para descobrir qual o componente está sendo usado para 
editar um determinado campo?"
 
Vide artigo em http://www.delphi3000.com/articles/article_3337.asp para uma 
sugestão de como encontrar o controle usado para editar um campo de um dataset.
 
O link para baixar o exemplo está quebrado, portanto subi para a área de 
arquivos um exemplo de como usar a rotina proposta pelo artigo.
 
Essa é a minha sugestão! Boa sorte!
Sds.

________________________________
> To: delphi-br@yahoogrupos.com.br
> From: berdamzi...@yahoo.com.br
> Date: Wed, 17 Dec 2008 02:01:39 -0800
> Subject: [delphi-br] Como converter os tipos
>
>
> Olá ,pessoal, estou tentando criar uma função de validação, bastante 
> genérica,mas eestou com dificuldades.
>
>
>
> Eu irei passar como primeiro parâmetro o componente TWinControl, ele é o pai 
> dos componentes Dbedit, edit, e tbm cxdbedit, dbtext, dbdateedit.
>
> Gostaria da ajuda do pessoal da lista para converter o parâmetro componente 
> para o tipo que for passado na hora de executar a função.
>
>
>
> Se tiver alguma idéia melhor do que isso.
>
>
>
> Desde já aobrigado
>
>
>
> procedure 
> ValidaCampos(componente:TWinControl;stMsgErro:String;TipoMsg:TMsgDlgType;TipoBotoes:TMsgDlgButtons;ComAbort,SetarFoco:Boolean);
>
> begin
>
>
>
> if componente is TcxDBTextEdit then
>
>
>
> if componente is Tdbedit then
>
>
>
>
>
> MessageDlg(stMsgErro,TipoMsg,TpBotoes)
>
>
>
> if SetarFoco then
>
> Componente.SetFocus
>
>
>
> if ComAbort then
>
> Abort;
>
> end;
>
>
>
> ----------------------------------------------------------
>
> Uberdam Cavaletti
>
> Formado em Tecnologia da Informação - Unoesc - Xxe
>
> Pós-graduado em desenvolvimento Java - Unoesc - Xxe
>
>
>
> http://www.curricular.com.br/berdam
>
>
>
> Visite
>
> http://passandoveneno.blogspot.com
>
_________________________________________________________________
Confira vídeos com notícias do NY Times, gols direto do Lance, videocassetadas 
e muito mais no MSN Video!
http://video.msn.com/?mkt=pt-br

Responder a