Jump to content
Fivewin Brasil

Status do ECF BEMATECH


Ariston Santos

Recommended Posts

Olá, Pessoal.

Como faço para obter o status do ECF bematech usando a BEMAFI32.DLL? Preciso emitir um aviso ao usuário caso ele tente usar o ECF com pendência de RZ ou bloqueado por já ter sido emitida a RZ do dia. Como obter esse retorno? Qual função da DLL devo declarar?

Grato.

Ariston Santos.

ariston.jpg

Conheça Pacote Fivewin em http://www.arsoft-ap.com.br

Link to comment
Share on other sites

Olá, Pessoal.

Como faço para obter o status do ECF bematech usando a BEMAFI32.DLL? Preciso emitir um aviso ao usuário caso ele tente usar o ECF com pendência de RZ ou bloqueado por já ter sido emitida a RZ do dia. Como obter esse retorno? Qual função da DLL devo declarar?

Grato.

Ariston Santos.

ariston.jpg

Conheça Pacote Fivewin em http://www.arsoft-ap.com.br

Link to comment
Share on other sites

Obrigado.

Como ainda não encontrei nada igual neste forum, vou postar a solução com base no link fornecido acima. Pode ser que alguém mais necessite.


dMov := Space(6)

nRet := BmDtMovto(@dMov)

dMov := Ctod(Trans(dMov,"@R 99/99/99"))

dUrz := Space(6)

nRet := BmDtMovto(@dUrz)

dUrz := Ctod(Trans(dUrz,"@R 99/99/99"))

MsgInfo("Data última RZ: "+DTOC(dUrz), "Data")

dDrz := Space(6)

cHrz := Space(4)

nRet := BmDtHoUltRZ(@dDrz, @cHrz)

dDrz := Ctod(Trans(dUrz,"@R 99/99/99"))

cHrz := Trans(cHrz,"@R 99:99")

MsgInfo("Data e hora da última RZ: "+DTOC(dDrz)+", "+cHrz, "Data e Hora")

IF dMov == dUrz .AND. dUrz < DATE() // RZ pendente

MsgAlert("A RZ do dia "+DTOC(dUrz)+" ainda não foi emitida. ECF bloqueado para emitir cupons fiscais","Aviso")

ENDIF

IF EMPTY(DTOS(dMov)) .AND. dUrz = DATE()

MsgAlert("A RZ de hoje já foi emitida. ECF bloqueado para emitir cupons fiscais","Aviso")

ENDIF

IF EMPTY(DTOS(dMov)) .AND. EMPTY(DTOS(dUrz))

IF !EMPTY(DTOS(dDrz))

MsgInfo( "ECF sem movimento e sem Redução Z pendente."+CRLF+CRLF+;

"Última redução Z em "+DTOC(dDrz)+", "+cHrz,"Aviso")

ENDIF

IF dDrz == DATE()

MsgInfo( "Redução Z de hoja já emitida sem movimentação. ECF bloqueado até 00:00h;","Aviso")

ENDIF

ENDIF

id=code>id=code>

Declaração das funções:


//Ler data do movimento atual

DLL32 FUNCTION BmDtMovto ( DtMovto AS LPSTR ) AS LONG PASCAL ;

FROM "Bematech_FI_DataMovimento" LIB xBmDll32

//Ler data do ultima RZ

DLL32 FUNCTION BmDtUltRZ (DtUltRZ AS LPSTR ) AS LONG PASCAL ;

FROM "Bematech_FI_DataMovimentoUltimaReducaoMFD " LIB xBmDll32

//Ler data e hora da ultima RZ

DLL32 FUNCTION BmDtHoUltRZ(DtUltRZ AS LPSTR, HoUltRZ AS LPSTR) AS LONG PASCAL ;

FROM "Bematech_FI_DataHoraReducao" LIB xBmDll32

id=code>id=code>

ariston.jpg

Conheça Pacote Fivewin em http://www.arsoft-ap.com.br

Link to comment
Share on other sites

Ariston, bom dia.

Ative o retorno estendido:

iRetorno = Bematech_FI_HabilitaDesabilitaRetornoEstendidoMFD("1")

Ao tentar abrir o cupom ele deverá retornar o erro abaixo:

63-BLOQUEIO POR RZ

Este aqui é util, quando o interventor não habilitou o a redução z automática.

66-AGUARDANDO RZ

89-AGUARDANDO RZ PARA ENTRADA EM INTERVENÇÃO TÉCNICA

Se não deu certo.

Leco

Five PPC

Harbour 1.0.1 - 1999-2008

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...