Isso é proposital... Como podemos saber se o ECF já acabou a Impressão ?
Alguns modelos sinalizam isso de forma bem clara, ou ainda enviam um sinal enquanto o ECF está trabalhando... mas outros não (é o caso da Sweda)... e para piorar, eles respondem ao comando enviado, muito antes do termino da Impressão... então no ACBrECF, há uma propriedade que pode ser ligada, para que o mesmo faça uma verificação adicional, após receber a Resposta do ECF... a propriedade AguardaImpressao
Ex:
procedure TACBrECFSwedaSTX.LeituraX ;
begin
AguardaImpressao := True ;
EnviaComando( '15' ) ;
end;
Quando a mesma está ligada, após o ACBrECF receber a resposta do ECF, ele envia um novo comando, solicitando o Status do ECF.. alguns ECFs não conseguem responder, enquanto estão trabalhando... e nesse caso, sabemos que ele está ocupado...
O que deve estar ocorrendo... é que a rotina VerificaFimImpressao não deve estar considerando os estados de Erro... vou analisar os Logs e verificar como podemos implementar