Ir para conteúdo
  • Cadastre-se

dev botao

Inconsistência na busca do estado da impressora fiscal Bematech


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

Recommended Posts

  • Solution
Postado

Boa tarde, tudo bem?

Estamos fazendo os testes para a homologação do PAF-ECF utilizando a impressora Bematech MP 4000 TH FI e encontramos uma inconsistência na leitura do estado da impressora. 
Encontrei esse tópico:

Pelo que pude entender, foi solicitado que sejam tratados os casos em que a impressora só entra em estado de redução Z às 02:00. Entretanto, em ACBrECFBematech.pas, método TACBrECFBematech.GetEstado temos o seguinte trecho:

fpEstado := estLivre ;
DataMov := Self.GetDataMovimento;

if (DataMov > 0) then
begin
  DataHora := Self.GetDataHora;
  Data := DateOf(DataHora);
  if (DataMov < Data) and ((HoursBetween(Data, DataHora) > 2)) then
	fpEstado := estRequerZ ;
end;

Com esse código, a função vai retornar o estado "estRequerZ" somente às 03:00, pois ele valida se a diferença entre as duas datas é maior do que 2 horas.

Diante disso, solicito alteração para que seja considerado a diferença maior ou igual a 2, fazendo com que às 02:00 a impressora já entre no estado "estRequerZ". A alteração deixaria o código assim:

fpEstado := estLivre ;
DataMov := Self.GetDataMovimento;

if (DataMov > 0) then
begin
  DataHora := Self.GetDataHora;
  Data := DateOf(DataHora);
  if (DataMov < Data) and ((HoursBetween(Data, DataHora) >= 2)) then
    fpEstado := estRequerZ ;
end;

       
Se puderem avaliar por favor, agradeço.

  • Curtir 2
  • Este tópico foi criado há 1160 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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...