Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 1981 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

 Bom dia,

 Estou fazendo o roteiro da Software Express usando o ACBrTEFD + CliSitef via DLL.

 Na sequência 26 pede que a aplicação tenha um atalho ou botão para cancelar a transação enquanto aguarda a senha no pinpad.
 No exemplo do TEFD tem a seguinte anotação:
// TODO: nesse ponto é necessário desbloquear o Teclado, mas permitir
//       um clique apenas no botão cancelar.... FALTA CORRIGIR NO DEMO

Já existe alguma forma de fazer esse cancelamento ou alguém tem alguma dica de como implementar esse processo estou travado nesse ponto do roteiro.  :(

Obrigado
   

sitef 26.png

Editado por JrLopes
  • Solution
Postado

 Bom dia @Daniel Simoes 
 O evento OnAguardaResp do TEFD já estava com essa linha de código, eu já estava perdendo os poucos cabelos que eu tinha com essa situação mas acabei de resolver, a gente se desespera mas no final a resposta acaba sendo simples, basicamente um IF matou a questão, não sei se é a melhor solução mas resolveu certinho a questão do roteiro.  

Obrigado !!!!

procedure TfrmOpTEF.TEFDAguardaResp(Arquivo: string; SegundosTimeOut: Integer;var Interromper: Boolean);
begin
  Application.ProcessMessages;
  if (TEFD.GPAtual in [gpCliSiTef, gpVeSPague]) then   // É TEF dedicado ?
  begin
    if (Arquivo = '23') and (not btCancelar.Visible) then  // Está aguardando Pin-Pad ?
    begin
      if TEFD.TecladoBloqueado then
      begin
        TEFD.BloquearMouseTeclado(False); // Desbloqueia o Teclado
      end;

      btCancelar.Visible := True;
      btCancelar.SetFocus;
      cancelar := False;
      Application.ProcessMessages;
    end
      else
    begin
      Application.ProcessMessages;
      if cancelar = True then
      begin
        btCancelar.Visible := False;
        Interromper := True;
        cancelar    := False;
      end
        else
      begin
        cancelar := False;
        Exit;
      end;
    end;
  end;
  Application.ProcessMessages;
end;

 

  • Curtir 2
Postado
13 minutos atrás, Daniel Simoes disse:

Parece ser isso mesmo... se desejar modificar o Demo, para que isso fique mais claro, eu posso subir os ajustes para o SVN...

 

 Vou providenciar então, mesmo no exemplo do Demo muda pouca coisa !!! 

  • Curtir 2
  • Este tópico foi criado há 1981 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...