Fórum Função que não funciona... #218917
07/03/2004
0
procedure T_FormCRReceb.Button1Click(Sender: TObject);
begin
if strtofloat(Edit5.Text)<> Strtofloat(Edit3.Text) then
ChamarFormCRMensQuitar(Sender)
else
if MessageDlg(´Quitar documento de nº ´+ inttostr(Table2CodSistema.value) + ´ ?´,mtConfirmation,[mbYes,mbNo],0)<>mrYes then Abort;
Quitar(Sender);
Table2.Delete;
if Table2.RecordCount = 0 then ValidaPendClientes(Sender);
end;
Esta parte <<<ChamarFormCRMensQuitar(Sender)>>> chama um form onde é feito alguns procedimentos, más quando finalizo o form que chamei, o programa continua a ler a função...será que estou delirando ? :lol:
Valeu...
Gigatel
Curtir tópico
+ 0Posts
07/03/2004
Catunda
Da forma que está escrita após sair do
ChamarFormCRMensQuitar(Sender) vai executar as três linhas
Quitar(Sender);
Table2.Delete;
if Table2.RecordCount = 0 then ValidaPendClientes(Sender);
Veja abaixo colocando as duas primeiras linhas dentro do segundo if:
if strtofloat(Edit5.Text)<> Strtofloat(Edit3.Text) then
ChamarFormCRMensQuitar(Sender)
else
if MessageDlg(´Quitar documento de nº ´+ inttostr(Table2CodSistema.value) + ´ ?´,mtConfirmation,[mbYes,mbNo],0)<>mrYes then Abort
else
begin
Quitar(Sender);
Table2.Delete;
end;
if Table2.RecordCount = 0 then ValidaPendClientes(Sender);
E para não executar a ultima linha tambem é só coloca-la antes do end anterior a ela.
Gostei + 0
07/03/2004
Tnaires
Tente fazer o seguinte:
Na linha
if MessageDlg(´Quitar documento de nº ´+ inttostr(Table2CodSistema.value) + ´ ?´,mtConfirmation,[mbYes,mbNo],0)<>mrYes then Abort;
faça
if MessageDlg(´Quitar documento de nº ´+ inttostr(Table2CodSistema.value) + ´ ?´,mtConfirmation,[mbYes,mbNo],0)<>mrYes then Exit;
O Abort dispara uma exceção silenciosa, carregando o fluxo do programa para o fim d uma instrução try/except. Já o Exit sai efetivamente do procedure, q suponho q seja o q vc esteja querendo fazer.
Abraços
Gostei + 0
07/03/2004
Gigatel
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)