Ir para conteúdo
  • Cadastre-se

dev botao

Protocolo Esc-ECF Identificar Operador


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

Recommended Posts

Dei uma olhada no fonte do ACBRSerial e percebi que nos convênios antigos, a procedure de identificar o operador verificava qual era o operador da ECF para depois realizar a troca se necessário. Mas no protocolo Esc-ECF a função somente executa a troca do operador, ocasionando a impressão do RG sempre que ativa a impressora, pois informo o operador antes de ativa-la.

Segue sugestão de alteração na procedure para que seja realizado a verificação do operador já informado na ECF antes de enviar o comando de troca de operador, para evitar que seja impresso o RG sem necessidade.

procedure TACBrECFEscECF.IdentificaOperador(Nome: String);
var
  aOperAtual : String;
begin
  try
    if( IsBematech )then
      begin
        RetornaInfoECF( '99|05' );
        aOperAtual := EscECFResposta.fsParams[2];
      end
    else
    begin
      if( IsDaruma )then
        aOperAtual := RetornaInfoECF( '130' )
      else
        aOperAtual := RetornaInfoECF( '99|17' );
    end;
  except
  end;

  if( aOperAtual <> LeftStr( Nome, 20 ) )then
  begin
    EscECFComando.CMD := 154;
    EscECFComando.AddParamString( LeftStr( Nome, 20 ));
    EnviaComando;
  end;
end;

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2500 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...