Lógica de if´s (tela de formulários)
28/04/2003
0
Fala galera! blz?!
É o seguinte, nas minhas telas de cadastro, existem várias regras para eu poder liberar oel para cadastro, (por exe. o campo 1 deve ser maior q o campo2, a data não pode ser uma data inválida, é obrigatório preencher o campo 5 e assim por diante) o meu problema é q no botão ok fica uma zona só, pq eu faço uma porrada de if´s para após satisfazer a condição de todos eles, o cadastro ser efetuado.
Eu gostaria de saber como vcs fazem isso, eu faço tipo assim:
if condição2 then
begin
mensagem de erro
end
else
begin
if condição2
then
begin
mensagem de erro
end
else
begin
.
.
.
else
begin
cadastrar
end;
end;
end;
end;
end;
end;
end;
e é essa bagunça toda q eu gostaria de evitar. Tem outro jeito de fazer isso???
Desde já vlw!
É o seguinte, nas minhas telas de cadastro, existem várias regras para eu poder liberar oel para cadastro, (por exe. o campo 1 deve ser maior q o campo2, a data não pode ser uma data inválida, é obrigatório preencher o campo 5 e assim por diante) o meu problema é q no botão ok fica uma zona só, pq eu faço uma porrada de if´s para após satisfazer a condição de todos eles, o cadastro ser efetuado.
Eu gostaria de saber como vcs fazem isso, eu faço tipo assim:
if condição2 then
begin
mensagem de erro
end
else
begin
if condição2
then
begin
mensagem de erro
end
else
begin
.
.
.
else
begin
cadastrar
end;
end;
end;
end;
end;
end;
end;
e é essa bagunça toda q eu gostaria de evitar. Tem outro jeito de fazer isso???
Desde já vlw!
L!nk!n
Curtir tópico
+ 0
Responder
Posts
28/04/2003
Nebrio
Para facilitar faça um if para cada coisa. Assim:
if campo3 < campo2 then
begin
mensagem_de_erro;
campo3.Setfocus;
exit; // isso é principal ele saí da rotina, se não tiver este exit ele continua todo o processo do botão
end;
if campo3 < campo2 then
begin
mensagem_de_erro;
campo3.Setfocus;
exit; // isso é principal ele saí da rotina, se não tiver este exit ele continua todo o processo do botão
end;
Responder
28/04/2003
L!nk!n
Para facilitar faça um if para cada coisa. Assim:
if campo3 < campo2 then
begin
mensagem_de_erro;
campo3.Setfocus;
exit; // isso é principal ele saí da rotina, se não tiver este exit ele continua todo o processo do botão
end;
Valew nebrio!
era exatamente desse exit q eu precisava!
... programando e aprendendo...
Responder
Clique aqui para fazer login e interagir na Comunidade :)