jfaguiar Posted August 16, 2018 Report Share Posted August 16, 2018 Boa noite amigos. Alguém teria alguma coisa pra impressão do cupom fiscal eletrônico na sweda? Normalmente recomendo as impressoras da Daruma e a darumaframework.dll faz tudo rsrs. Obrigado Quote Link to comment Share on other sites More sharing options...
kapiaba Posted August 17, 2018 Report Share Posted August 17, 2018 #include "FiveWin.ch" STATIC ABRE_SWEDA FUNC SWEDA_TESTE() LOCAL ret := 0, cBuffer MSGSTOP( "VOU" ) ABRE_SWEDA := LoadLibrary( "SWECF.DLL" ) MSGSTOP( ABRE_SWEDA ) ret = ECFOpen( 1, 4, 0, 0 ) //& porta:=1,2 MSGSTOP( RET ) IF ret = 0 cBuffer = chr( 27 ) + ".13N}" //& Leitura X ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "ABRE CUPOM" ) cBuffer = chr( 27 ) + ".17}" //& ABRE CUPOM ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "VENDE ITEM" ) cBuffer := chr( 27 ) + ".01" + "7894900010015" + "0001000" + "000000100" + "000000000100" + "REFRI COCA-COLA 350ML " + "F " + "}" //& VENDE ITEM ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "VENDE ITEM" ) cBuffer := chr( 27 ) + ".01" + "7894900010015" + "0001000" + "000000100" + "000000000100" + "REFRI COCA-COLA 350ML " + "F " + "}" //& VENDE ITEM ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "CANCELA ITEM" ) cBuffer := chr( 27 ) + ".04" + "002" + "}" //& CANCELA ITEM 002 ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "TOTALIZA" ) cBuffer := chr( 27 ) + ".10" + "01" + "000000000100" + "}" //& TOTALIZA CUPOM E PAGA ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "FECHA CUPOM" ) cBuffer := chr( 27 ) + ".12" + "N" + "N" + "0" + REPL( "-", 40 ) + "0" + REPL( "+", 40 ) + "0" + REPL( "-", 40 ) + "0" + REPL( "+", 40 ) + "0" + REPL( "-", 40 ) + "0" + REPL( "+", 40 ) + "0" + REPL( "-", 40 ) + "0" + REPL( "+", 40 ) + "}" //& FECHA VENDA ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF // MSGSTOP( "CANCELA" ) cBuffer := chr( 27 ) + ".05" + "}" //& CANCELA CUPOM ANTERIOR ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF MSGSTOP( "ABRE GAVETA" ) cBuffer := chr( 27 ) + ".21" + "}" //& ABRE GAVETA ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF MSGSTOP( "STATUS DA GAVETA" ) cBuffer := chr( 27 ) + ".22" + "}" //& STATUS DA GAVETA ret = ECFWrite( cBuffer ) IF ret = 0 cBuffer = Space( 512 ) ret = ECFRead( cBuffer, 512 ) MSGSTOP( RET ) MSGSTOP( cBUFFER ) //** Tratamento do erro (cBuffer) ELSE MSGSTOP( "OK" ) ENDIF MSGSTOP( "FECHA PORTA" ) ECFClose() ENDIF MSGSTOP( "FUI" ) RETURN nil DLL32 FUNCTION ECFOpen( Numero AS LONG, Tempo AS LONG, Log AS LONG, Mostra AS LONG ) AS LONG PASCAL LIB ABRE_SWEDA DLL32 FUNCTION ECFClose() AS LONG PASCAL LIB ABRE_SWEDA DLL32 FUNCTION ECFWrite( Comando AS STRING ) AS LONG PASCAL LIB ABRE_SWEDA DLL32 FUNCTION ECFRead( Status AS STRING, Extensao AS LONG ) AS LONG PASCAL LIB ABRE_SWEDA Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.