Introdução

A DLL TefClientMC proporciona uma integração flexível, permitindo à automação um alto nível de controle sobre o fluxo da transação e ampla personalização por meio de um processo iterativo. É ideal para automações que buscam preservar sua identidade visual e ter maior controle sobre cada etapa da transação.

Requisitos para Execução

Para a execução da DLL, é necessário que os seguintes componentes de software estejam instalados:

Para garantir o funcionamento adequado da DLL, o ambiente deve atender aos seguintes requisitos mínimos:

  • Windows 7 SP1
  • Processador Intel Core i3
  • 3GB de memória RAM
  • 1GB de espaço disponível no HD
  • 1 porta USB para a conexão do Pinpad
  • Pinpad

Para um melhor desempenho e estabilidade recomendamos a seguinte configuração:

  • Windows 10 ou superior
  • Processador Intel Core i3, AMD Ryzen 3 ou superior
  • 4GB de memória RAM
  • 1,5GB de espaço disponível no SSD
  • 1 porta USB para a conexão do Pinpad
  • Pinpad

Fluxo de Utilização

A integração com a DLL TefClientMC ocorre por meio da implementação das funções básicas de comunicação da biblioteca. O processo de transação se inicia com a chamada da função IniciaFuncaoMCInterativo.

Ao chamar essa função com os parâmetros adequados (detalhados posteriormente), deve-se verificar o retorno. Se for 0, o processo continua normalmente; caso contrário (retorno maior que 0), a transação deve ser encerrada.

Em seguida, dentro de um laço de repetição, a função AguardaFuncaoMCInterativo deve ser chamada. Essa função retorna um BSTR contendo informações essenciais para a transação. Se o retorno for [ERROABORTAR] ou [ERRODISPLAY], o processo deve ser interrompido imediatamente. Caso contrário, a comunicação prossegue por meio da função ContinuaFuncaoMCInterativo, se houver retorno de tags que solicitem dados, como [MENU] e [PERGUNTA]. O laço se encerra quando AguardaFuncaoMCInterativo retornar a tag [RETORNO].

Após o recebimento dessa tag, deve-se imprimir o comprovante da transação, armazenar suas informações e, por fim, chamar a função FinalizaFuncaoMCInterativo, confirmando assim a transação.

Se for necessário cancelar a transação a qualquer momento, a função CancelarFluxoMCInterativo pode ser chamada. Essa função retorna 0 em caso de sucesso e interrompe imediatamente o fluxo da transação.

O retorno das funções indica o sucesso de sua execução. No caso específico de FinalizaFuncaoMCInterativo, o resultado da confirmação ou do cancelamento da transação pode ser obtido por meio da função AguardaFuncaoMCInterativo ou pela verificação do status da transação.

RetornoFunção
INTIniciaFuncaoMCInterativo
*BSTRAguardaFuncaoMCInterativo
INTContinuaFuncaoMCInterativo
INTFinalizaFuncaoMCInterativo
INTCancelarFluxoMCInterativo

*Informações sobre o tipo BSTR (Clique aqui)

%%{init: {'theme':'base', 'flowchart': {'curve': 'basis', 'htmlLabels': true, 'nodeSpacing': 40, 'rankSpacing': 55}, 'themeVariables': {'primaryColor':'#E6F1FB','primaryBorderColor':'#378ADD','primaryTextColor':'#0C447C','lineColor':'#888780','fontSize':'14px'}}}%% flowchart TD Start(("início")) --> Inicia["IniciaFuncaoMCInterativo"] Inicia --> R1{"Retorno"} R1 -->|"0"| Aguarda["AguardaFuncaoMCInterativo"] R1 -->|"1, 30, 31, 33, 34, 37 ERRODISPLAY"| Fim(("Fim")) Aguarda --> R2{"Retorno"} R2 -->|"ERROABORTAR / RETORNO"| Fim R2 -->|"tag"| TipoTag{"Tipo de tag"} R2 -->|"comprovante"| Comprovante[/"Comprovante"/] TipoTag -->|"MSG"| Aguarda TipoTag -->|"PERGUNTA / MENU"| Continua["ContinuaFuncaoMCInterativo"] Comprovante --> Salvar[("Salvar")] Salvar --> Finaliza["FinalizaFuncaoMCInterativo"] Continua --> R3{"Retorno"} R3 -->|"1, 35, 36"| Aguarda R3 -->|"0"| Fim Finaliza --> R4{"Retorno"} R4 -->|"0"| Fim R4 -->|"33 tenta 3x / 300ms"| Finaliza Cancelar["CancelarFuncaoMCInterativo"] --> Fim classDef processo fill:#E6F1FB,stroke:#378ADD,color:#0C447C,stroke-width:1px classDef decisao fill:#FAEEDA,stroke:#BA7517,color:#633806,stroke-width:1px classDef terminal fill:#F1EFE8,stroke:#5F5E5A,color:#2C2C2A,stroke-width:1px classDef dado fill:#E1F5EE,stroke:#0F6E56,color:#04342C,stroke-width:1px class Inicia,Aguarda,Continua,Finaliza,Cancelar processo class R1,R2,R3,R4,TipoTag decisao class Start,Fim terminal class Comprovante,Salvar dado

Observações sobre o Processo Iterativo

Durante a execução do laço de repetição, evite a inclusão de delays, sleeps ou qualquer instrução que possa resultar em atrasos na execução. Isso é crucial, pois pode levar à perda de dados ou ao encerramento inesperado da execução. As chamadas para a função AguardaFuncaoMCInterativo devem ser feitas de maneira contínua, com tratamento adequado para cada tag. Se uma mensagem for exibida pela automação e você receber uma nova mensagem ou algum outro retorno, substitua a mensagem anterior apenas nesses casos. Durante o processo, é importante estar ciente de que em certos momentos, podem ser retornadas strings vazias.

© 2026 Multiplus Card. Todos os direitos reservados.