Jump to content

dev botao

Função para Fim de Papel


leosaomz
  • Este tópico foi criado há 4715 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Ola,

gostaria de saber se há/houve alguma implementação para a verificação de Fim de Papel na impressora para ACBr.DLL

Dei uma olhada no roteiro de homologação e eles exigem apenas que seja verificado se está no Fim do Papel (sem papel).

Se eu estiver enganado, me ajudem, obrigado.

Link to comment
Share on other sites

Sim, há a propriedade PoucoPapel na classe ACBrECF que fica true quando o papel está acabando.

E quando é FIM DE PAPEL, o ACBr dispara uma ACBrException contendo a mensagem apropriada.

Não há um evento "OnPoucoPapel", como nos componentes ACBr, daí você precisa verificar essa propriedade sempre que executar algum comando no ECF para saber se o papel está acabando.

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Link to comment
Share on other sites

Entendi, mas ai no caso, esse poucoPapel dispara exatamente quando esta acabando? ou quando está sem papel?

porque pelo que vi no roteiro, se ainda há papel (mas pouco) ela consegue imprimir e a AC nao é obrigada a para para isso, a AC só para e envia pro usuario uma mensagem quando está SEM PAPEL realmente.

no caso essa função de poucoPapel funciona como Fim de papel?

Link to comment
Share on other sites

Não, o pouco papel é só pra informar ao usuário quando está acabando.

o Sem papel é disparado como uma ACBrException, sempre que imprimir vc deve fazer um try ... catch observando isso (ECF desligado, sem papel, etc ... tudo vem por exception)

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Link to comment
Share on other sites

Isso mesmo.

Mas fique atento pois o requisito não é tratar apenas o fim de papel, e sim qualquer outra indisponibilidade do ECF.

Assim se você usar a exception vai tratar quando o ECF estiver desligado, sem papel, com a tampa aberta, em estado de erro, etc ...

A mensagem de erro já vem apresentável ao usuário.

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Link to comment
Share on other sites

bacana, entao só apresentar o Exception no caso.

E em alguns casos, tem que dar a opção pro usuario retentar a ação (no caso da impressão dos comprovantes, certo?)

Me corrige, se eu estiver errado, mas algumas mensagens não poderão haver o botão de OK, mas simplesmente apresentar a mensagem por um tempo determinado e sumir, é verdade isto? porque esta escrito isso no Roteiro.

Link to comment
Share on other sites

Isso, é só apresentar a mensagem ao usuário.

No caso das exceptions, eu mantive a opção tentar novamente ou cancelar.

Que eu saiba, a única mensagem que fica apenas um tempo e some é a "transação aprovada". As mensagens de erro todas tinham confirmação do usuário. Mas deve ter diferenças no roteiro do TEF discado para o dedicado, não sei.

Abs,

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Link to comment
Share on other sites

Entendi. sem querer abusar, vou colocar aqui o trecho na qual eles dizem isso:

11. Transação Aprovada

• Se o campo 009-000 = 0 (transação aprovada) e o campo 028-000 > 0 (nº de linhas de impressão maior que zero), o aplicativo de A.C. deverá exibir a mensagem (campo 030-000) por um período mínimo de 5 segundos ou durante todo o tempo de impressão das vias do cupom TEF, sem nenhum tipo de interferência por parte do operador. A mensagem não deve possuir botão (OK) e nenhum controle aguardando ENTER do operador.

• Se o campo 009-000 = 0 (transação aprovada) e o campo 028-000 = 0 (sem linhas a serem impressas), o aplicativo de A.C. deverá exibir a mensagem (campo 030-000) com botão (OK) e/ou aguardando ENTER do operador.

12. Transação Negada

• Se o campo 009-000 < > 0 (transação negada) e o campo 028-000 = 0 (sem linhas a serem impressas), o aplicativo de A.C. deverá exibir a mensagem (campo 030-000) com botão (OK) e/ou aguardando ENTER do operador.

acho que é isso que voce disse, mas acho que tambem servem para as mensagens de operações ADMINISTRATIVAS.

Link to comment
Share on other sites

O roteiro é realmente diferente do TEF dedicado.

Pelo que entendi, só as mensagens de origem do TEF requerem esse controle de tempo sem OK do operador.

As mensagens originadas do ECF normalmente são tratadas como "tentar novamente" ou "cancelar".

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Link to comment
Share on other sites

  • Este tópico foi criado há 4715 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

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...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.