Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jessica_Priscila

[Resolvido] Condicao If

Recommended Posts

:blink: Olá,

 

 

Estou com dúvida em uma condição If, que serve para verificar se um registro já exite na tabela, ele até verifica na hora de inserir, e se já exite ele aparece a msg, mas quando eu edito algum registro e verifica tmbém e como o campo já existe ele aparece a msg novamente....então resolvi fazer condições separadas, se a tabela estiver em modo de edição ele naum verifica, e se a tabela estiver no modo de inserção ele verifica....tentei fazer a condição, mas continua dado o mesmo problema...o q será q tá errado?

 

Código:

 

begin

inherited;

 

if (DM_principal.ADTdetalhes_Viagens.State in [dsEdit]) then

ShowMessage('Registro Alterado!')

 

 

else if

(DM_principal.ADTdetalhes_Viagens.State in [dsInsert]) then

DM_principal.pesquisa('select num_doc from detalhes_viagem where num_doc =' + QuotedStr (DBEdit10.Text))

 

 

if not DM_principal.ADTdetalhes_Viagens.IsEmpty then

ShowMessage('Num Doc já Cadasdo! ')

 

end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi corretamente, após o showmessage('Registro Alterado'); você quer sair da rotina, é isso? Se for, use o comando Exit;

 

begin
inherited;
	 if (DM_principal.ADTdetalhes_Viagens.State in [dsEdit]) then
	 begin
		 ShowMessage('Registro Alterado!');
		 Exit; //Força a sair da procedure
	 end
	 else if (DM_principal.ADTdetalhes_Viagens.State in [dsInsert]) then
				DM_principal.pesquisa('select num_doc from detalhes_viagem where num_doc =' + QuotedStr (DBEdit10.Text))
	 if not DM_principal.ADTdetalhes_Viagens.IsEmpty then
		ShowMessage('Num Doc já Cadasdo! ');
end;

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi corretamente, após o showmessage('Registro Alterado'); você quer sair da rotina, é isso? Se for, use o comando Exit;

 

begin
inherited;
	 if (DM_principal.ADTdetalhes_Viagens.State in [dsEdit]) then
	 begin
		 ShowMessage('Registro Alterado!');
		 Exit; //Força a sair da procedure
	 end
	 else if (DM_principal.ADTdetalhes_Viagens.State in [dsInsert]) then
				DM_principal.pesquisa('select num_doc from detalhes_viagem where num_doc =' + QuotedStr (DBEdit10.Text))
	 if not DM_principal.ADTdetalhes_Viagens.IsEmpty then
		ShowMessage('Num Doc já Cadasdo! ');
end;

[]'s

 

 

 

 

 

Olá

 

 

Agora tem + um problema, na hora de inserir msmo que não seja o msmo numero aparece a msg....fiz assim:

 

 

 

if (DM_principal.ADTdetalhes_Viagens.State in [dsEdit]) then

 

begin

ShowMessage('Registro Alterado!');

Exit;

end;

 

if

(DM_principal.ADTdetalhes_Viagens.State in [dsInsert]) then

DM_principal.pesquisa('select num_doc from detalhes_viagem where num_doc =' + QuotedStr (DBEdit10.Text));

 

 

if not DM_principal.ADTdetalhes_Viagens.IsEmpty

then

ShowMessage('Num Doc já Cadasdo! Caso seja um novo doc ,clique em OK e Gravar p/ ignorar essa MSG')

 

else

begin

ShowMessage('Registro Gravado!');

end;

end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não está ocorrendo por estar testando a query errada? Você está dando um select com o DM_principal.pesquisa e está usando no teste pra ver se o doc já está cadastrado o DM_principal.ADTdetalhes_Viagens... não seria ai o problema?

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não está ocorrendo por estar testando a query errada? Você está dando um select com o DM_principal.pesquisa e está usando no teste pra ver se o doc já está cadastrado o DM_principal.ADTdetalhes_Viagens... não seria ai o problema?

 

[]'s

 

Olá,

 

Brigadãooo...eu nem percebi...rsrsr era isso msmo....

 

abraçoss

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.