Jump to content

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

welsoncj

Implementação GestãoCard 4S

Recommended Posts

Tive a necessidade de fazer a implementação de um cartão que segue os mesmos padrões do TEF.

Segue pasta arquivos alterados/criados.

4S.rar

  • Like 1

Share this post


Link to post
Share on other sites

Notei que a nova Classe, TACBrTEFDQuatroS ... não tem nenhuma reescrita dos métodos da classe TACBrTEFDClassTXT ... e apenas redefine novos valores para os diretórios, arquivos e Executável do GP...
Não seria mais simples usar uma das classes existentes e apenas ajustar essas propriedades ?

Não compreendi a necessidade desses IFs (imagem abaixo)... não é bom ter IFs de um Tipo específico, da Classe mãe... isso fere a OOP,  e poderia ser tratado com Polimorfismo, sobrescrevendo alguns métodos na classe TACBrTEFDQuatroS

image.png

  • Like 1

Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites

Bom dia,

Não tinha pensado nessa possibilidade, vou fazer as alterações e mando novamente.

t+

Share this post


Link to post
Share on other sites

Dessa maneira, há muito código repetido... e caso algum novo recurso ou correção fosse implementado na classe mãe, essa classe ficaria sem as modificações, a não ser que alguém lembrasse de copiar novamente o código...

Pelo que notei, você está tentando remover essa linha abaixo

  { VisaNET exige um ATV antes de cada transação }
  if (AHeader <> 'ATV') then
     VerificaAtivo;
                   

Porque você precisa remover essa verificação ?

Creio que um ajuste melhor, seria apenas sobrescrever o método: "VerificaAtivo", para o mesmo não fazer nada...


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites

Bom dia,

Preciso remover porque o 'exe' do GestãoCard é iniciado assim que o arquivo é colocado na pasta 'REQ', ele não é iniciado pelo shell.

Quando você falou desse método 'VerificaAtivo', eu até fui verificar se alguém já não tinha modificado o arquivo original do Acbr, e depois de analisar intendi sua colocação e fiz a alteração como você sugeriu.

Obrigado pela atenção.

4S.rar

Share this post


Link to post
Share on other sites

Mas você chamou o método Incializar ?

Ele realiza várias tarefas, como por exemplo, cancelar as transações pendentes 


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites

Eu fiz o mesmo processo que eu fazia com a Unit que eu tinha feito, o motivo de eu ter que alterar os fontes do Acbr era justamente o dessa mensagem, que ele não poderia verificar se o gerenciador estava iniciado.

Teoricamente, com essa Unit que você mandou, deveria funcionar também, porque resumidamente era somente eu trocar os caminhos das pastas e não utilizar o método 'VerificaAtivo'.

Vou dar uma olhada aqui porque ele esta dando essa mensagem e te dou um retorno.

Share this post


Link to post
Share on other sites

O erro ocorre quando no método 'IniciarRequisicao' a procedure 'VerificaInicializado' é chamada, ela verifica uma variável booleana e da o erro.

Quando eu fiz o override no método 'IniciarRequisicao'  eu retirei a chamada desse método, o que eu poderia fazer era voltar o método IniciarRequisicao para a nova Unit e chamar a procedure VerificaInicializado com nenhuma programação dentro dela.

Share this post


Link to post
Share on other sites
3 minutos atrás, welsoncj disse:

O erro ocorre quando no método 'IniciarRequisicao' a procedure 'VerificaInicializado' é chamada, ela verifica uma variável booleana e da o erro.

Isso ocorre porque provavelmente você não chamou ACBrTEFD1.Inicializar


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...