Ir para conteúdo
  • Cadastre-se

dev botao

Tef não inicia


Ver Solução Respondido por Juliomar Marchetti,
  • Este tópico foi criado há 3310 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Boa tarde colegas,

Após a atualização do trunk2 não consigo realizar vendas através de cartão.

Ao executar o ACBrTEFD.CRT, minha aplicação trava e não é executa. Isso está acontecendo tanto com o gpCliSiTef como também no gpTefDial, sendo que o ADM é executado normalmente e sua comunicação está ativa.

Alguém poderia me ajudar?

OBS: No trunk estava funcionando normalmente, e o código da aplicação também esta igual ao do DEMO.

  • Membros Pro
Postado

Juliomar, obrigado pela resposta. 

Eu detectei o problema, realmente não tem nada de errado no componente, mas gostaria que você me explicasse algo que não entendi como está no DEMO. No evento oninfoecf do componente acbrtefd no DEMO tem o seguinte codigo: 

   case Operacao of
     ineSubTotal :
       begin
         ASubTotal := ACBrECF1.Subtotal ;
         ASubTotal := ASubTotal - ACBrECF1.TotalPago +
                      StringToFloatDef(edValorDescAcre.Text, 0);

         RetornoECF := FloatToStr( ASubTotal ) ;
       end;

     ineTotalAPagar :
       RetornoECF := FloatToStr( CalculaTotalPago );

     ineEstadoECF :
       begin
         Case ACBrECF1.Estado of
           estLivre     : RetornoECF := 'L' ;
           estVenda     : RetornoECF := 'V' ;
           estPagamento : RetornoECF := 'P' ;
           estRelatorio : RetornoECF := 'R' ;
           estNaoFiscal : RetornoECF := 'N' ;
         else
           RetornoECF := 'O' ;
         end;
       end;
   end;

O que acontece é que no meu código não tem nesse case a implementação caso a variável operacao seja "ineTotalAPagar". Só que não entendi como funciona a função CalculaTotalPago. Poderia me explicar?

function TForm1.CalculaTotalPago: Double;
var
   I: Integer;
   Linha: String;
   Valor: Double;
begin
  Result := 0 ;

  { Adicionando valores de Pagamentos a Fazer }
  For I := 0 to mPagamentos.Lines.Count-1 do
  begin
     Linha  := mPagamentos.Lines;
     Valor  := StringToFloatDef( copy( Linha, Pos('|',Linha)+1, Length(Linha)), 0 );
     Result := Result + Valor;
  end;
end;

  • Moderadores
  • Solution
Postado

Total pago é o que já foi feito de pagamento!

seu software deve de dar a opção para pagar com diversos finalizadoras, dinheiro, cheque, prazo e o cartão !

onde pode ocorrer de pagar com dinheiro e cartão ou outra forma e cartão, então deverá ter uma função da mesma forma para retornar os pagamentos já computados!

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado

Obrigado amigo pela resposta.

Mais essa mudança ocorreu recentemente, depois do trunk2 ? Pois o meu sistema estava funcionando normalmente, conseguíamos passar várias formas de pagamento, retornando sempre o valor restante correto. No caso debugando o meu código verifiquei que como ele não tinha essa variável de operação  "ineTotalAPagar" está em um lupe e meu TEF não é acionando em nenhum caso seja discado ou dedicado. 

×
×
  • 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.