Fórum DBNavigator - Agregando Funções aos Botões... #326231
26/07/2006
0
Quando eu clicar no botão ´Post´ do DBNavigator... ele tem que testar se o DBEdit1 está vazio ou não... se estiver vazio ele tem que dar uma mensagem ´Digite o Cliente´... e dar o SetFocus no DBEdit1... Caso contrátrio grava o arquivo no Banco de Dados...
Via Button1 eu sei fazer mas utilizando o DBNavigator não Funcionou...
Agradeço a atenção... Um Abraço...
Adelor Silva
Curtir tópico
+ 0Posts
27/07/2006
Aroldo Zanela
Você até pode fazer isso nos manipuladores de evento do dbNavigator, mas o mais apropriado seria no evento OnValidate do objeto TField ou no BeforePost do DataSet. Desta forma, independe do controle que está sendo utilizado para disparar o método Post.
Gostei + 0
27/07/2006
Adelor Silva
begin
if (edit1.text = null) then
begin
showmessage (´Digite o Cliente´)
end;
end.
(a escrita pode não estar correta, é que não estou no micro que tem delphi)... mas peguei de um outro projeto que estava funcionando...
aguardo retorno... Obrigado...
Gostei + 0
27/07/2006
Aroldo Zanela
Qual é o banco de dados e o mecanismo de acesso (BDE, IBX, DBX, ADO, Zeus, etc)?
Gostei + 0
27/07/2006
Paullsoftware
case Button of nbFirst: begin end; nbPrior: begin end; nbNext: begin end; nbLast: begin end; nbLast: begin end; nbInsert: begin end; nbDelete: begin end; nbEdit: begin end; nbPost: begin end; nbCancel: begin end; nbCancel: begin end; nbRefresh: begin end; end;
espero ter ajudado :wink:
Gostei + 0
27/07/2006
Marco Salles
begin if (edit1.text = null) then begin showmessage (´Digite o Cliente´) end; end.
esta instrução edit1.text = null nen deve compilar , porque ser nil é diferente de Vazio. Na verdade nada a ver.
Mas mesmo que voce façã o teste no BeforePost Do Seu DataSet , [b:ef16ffd56b]uma mensagem somente não [/b:ef16ffd56b]impede que o registro seje gravado.
[b:ef16ffd56b]Voce deve lançar mão de uma exceção[/b:ef16ffd56b]
if (edit1.text = ´´) then raise exception.Create(´Codigo não pode ser Vazio);
Gostei + 0
27/07/2006
Adelor Silva
mas pra todos os casos... eu utilizo MySQL e para conectar o Banco Zeus...
Gostei + 0
27/07/2006
Adelor Silva
if (FrmCadMaquina.DBEdit2.Text = ´´) then
begin
raise Exception.Create(´Digite a Descrição da Nova Máquina´);
FrmCadMaquina.DBEdit2.SetFocus;
end;
Agora ficou perfeito... Muito obrigado...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)