Jump to content
Fivewin Brasil

GAVETA BEMATECH


Theotokos

Recommended Posts

Boa Tarde!!!

Cliente pediu para que meu sistema interaja com gaveta bematech, porem meu sistema não é fiscal mas imprimo em uma impressora da Bematech não fiscal... 

tem como fazer isso? como poderia fazer? 

e outra coisa, eu não tenho a gaveta para testar, teria como testar virtual?

Desde ja muito obrigado!!!

 

Link to comment
Share on other sites

         Eu utilizo a tDosPrn pra isso
        No meu caso aqui o conteúdo do arquivo Gaveta.txt ->  CHR(27) + "i"      mas existem outros modelos p. exemplo ->   CHR(27) + "p" ai tem q. ver o modelo da sua


         cFile := oPub:wPorta
         oPrn  := MaTDosPrn():New( cFile )
         oPrn:StartPage()
         cComandoGaveta := AllTrim(MemoRead("C:\MARCA\GAVETA.TXT"))
         oPrn:Say(00,00, &(cComandoGaveta) )
         oPrn:END(1)

Link to comment
Share on other sites

Olá. voce poderá colocar a hbcomm.lib nos seu projetos para compilar

Dai não precisa de DLL, basta enviar o comando para a porta 

vou postar como faço

Armazero assim no banco de dados a porta e comando de abertura de gaveta   (T_PORTA_GAVETA='COM2'   ETC)   T_COMANDO_GAVETA := CHR(27)+'I'+CHR(ETC)..

T_PORTA_GAVETA			:= parametros->PORTA_GAVETA     
T_COMANDO_GAVETA		:= parametros->COMANDO_GAVETA




*-------------------------------------------------------------------------------
* Abertura de Gaveta de Dinheiro Pela Tecla F2
*-------------------------------------------------------------------------------
STATIC FUNCTION ABREGAV()
	IF EMPTY(T_PORTA_GAVETA)
		MsgStop('Porta para Abertura de Gaveta Não Informado !',SISTEMA)
		RETURN .F.
	ENDIF
	IF EMPTY(T_COMANDO_GAVETA)
		MsgStop('Comando para Abertura de Gaveta Não Informado !',SISTEMA)
		RETURN .F.
	ENDIF
	s_comando = fcreate( ALLTRIM(T_PORTA_GAVETA),0 )
	fwrite( s_comando, &(ALLTRIM(T_COMANDO_GAVETA)) )
	fclose( s_comando )
RETURN( Nil )

Veja a imagem  

XXXXXXXXXXXXXXXXXXXXXXXXXXXX.jpg

Espero ter ajudado

Link to comment
Share on other sites

Isso Esta Certo ?

FUNCTION AbrirGavetaRLI(lTpGaveta)

    If lTpGaveta               // Abre Gaveta Impressora Fiscal
        IF B_ACIONAGA() <> 1
            MsgStop("Erro ao Abrir a Gaveta","GAVETA")
        Else
            MsgWait("Gaveta Aberta com Sucesso","GAVETA",2)
        EndIf
    Else                        // Abre Gaveta Impressora Não Fiscal
        oPrn:= TDosPrn():New()
        oPrn:command("27, 118, 140")
        oPrn:End()
    EndIf
    
Return nil

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