IMPRESORA BIXOLON SRP-350 VENEZUELA

IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby joseluisysturiz » Thu Dec 08, 2016 11:32 pm

Saludos, necesito instalar la impresora fiscal BIXOLON SRP-350 en un sistema de facturacion, no se si con cualquier modelo serviria, estoy bajando el emulador desde la pagina http://www.impresoras-fiscales.com.ar/emulador.htm, alguien tiene las librerias (dll, ocx), manual de comando con los samples o algun codigo que me de alguna idea de como usar esa imresora.? Habia instalado uns Bematech y funciona al pelo, pero con esta no tengo ni idea, de antemano gracias por las sugerencias, ejemplos y ayudas que puedan darme, saludos, gracias... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby mag071 » Fri Dec 09, 2016 4:26 am

Saludos Vecino :-)

Yo lo hago con impresoras fiscales de apuestas aquí en Venezuela

http://thefactoryhka.com/ve/
Esta es la pagina web de las personas autorizadas que dan soporte tecnico.
alli tienes una opcion de utilitario donde bajas manuales y demas.


Static Function AbroDllPrinter()
LOCAL lRet:=.F.
LOCAL cDllName:="TFHKADIR.DLL"

hFiscalDll:=LoadLib32(cDllName)
if Abs( hFiscalDLL ) <= 32
MsgAlert( "Error code: " + LTrim( Str( hFiscalDLL ) ) + " loading " + cDllName )
lRet:=.F.
ELSE
lRet:=.T.
endif

Return lRet



DLL32 FUNCTION CheckFprinter() AS LONG PASCAL FROM "CheckFprinter" LIB hFiscalDll

DLL32 FUNCTION OpenFpctrl( lpPortName AS LPSTR ) AS LONG PASCAL FROM "OpenFpctrl" LIB hFiscalDll

DLL32 FUNCTION SendCmd( @status AS LONG, @error AS LONG, cmd AS LPSTR ) AS LONG PASCAL FROM "SendCmd" LIB hFiscalDll

DLL32 FUNCTION ReadFpStatus( @status AS LONG, @error AS LONG ) AS LONG PASCAL FROM "ReadFpStatus" LIB hFiscalDll

DLL32 FUNCTION CloseFpctrl() AS LONG PASCAL FROM "CloseFpctrl" LIB hFiscalDll

DLL32 FUNCTION UploadStatusCmd( @status AS LONG, @error AS LONG, cmd AS LPSTR, cfile AS LPSTR ) AS LONG PASCAL FROM "UploadStatusCmd" LIB hFiscalDll

DLL32 FUNCTION UploadStatusCmdDin( @status AS LONG, @error AS LONG, cmd AS LPSTR, Cadena AS LPSTR ) AS LONG PASCAL FROM "UploadStatusCmdDin" LIB hFiscalDll




//Ejemplo de como sacar un reporte x

MSGSTOP("IMPRESION DE REPORTE X IMPRESORA FISCAL","PULSE UNA TECLA PARA IMPRIMIR")
cmd="I0X"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
ENDIF



//Esto es un ejemplo de una factura lo unico es que es para apuesta de loterias y es distintos los comandos cmd.
//pero para que tengas una idea.

IF lTituloLot
lTituloLot:=.F.
lYaPase:=.T.

IF nI > 1
cmd="3"
if SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
endif
ENDIF

cFecha:=SubStr(StrZero(Year(DATE()),4),3,2)+;
StrZero(Month(DATE()),2)+;
StrZero(Day(DATE()),2)

cHoraSorteo:=::NombreLoterias(aDat9[nI,1],4)
cNumeroSorteo:=::NumeroSorteo(aDat9[nI,1])

cmd:="!"+::NombreLoterias(aDat9[nI,1],1)+cFecha+cHoraSorteo+cNumeroSorteo+::NombreLoterias(aDat9[nI,1],3)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF


EndIf


if Len(Alltrim(aDat9[nI,3])) <> nAuxLen
nAuxLen:= Len(Alltrim(aDat9[nI,3]))
lYaPase:=.T.
EndIf

IF lYaPase
lYaPase:=.F.
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=1
cmd:="# COLA-->(1:100) "+AllTrim(UPPER(aDat9[nI,2]))
ELSEIF Len(Alltrim(aDat9[nI,3])) = 3 .and. aDat9[nI,8]=1
cmd:="# TRIPLE FIJO(1:1000) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=2
cmd:="# COLA+SIGNO (1:1200) "+AllTrim(UPPER(aDat9[nI,2]))
ELSEIF Len(Alltrim(aDat9[nI,3])) = 3 .and. aDat9[nI,8]=2
cmd:="# TRIP.FIJO+SIGNO(1:12000) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=3
cmd:="# ANIMALITOS (1:32) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

ENDIF
//1234567890


cPrecio:=Alltrim(str(aDat9[nI,4]))
if At(".", cPrecio) > 0
nPunto := At(".", cPrecio)
else
cPrecio:=cPrecio+".00"
nPunto := At(".", cPrecio)
endif

cCentimos:=SUBSTR(cPrecio,nPunto+1,2)
IF len(cCentimos) = 0
cCentimos:="00"
ENDIF
IF len(cCentimos) = 1
cCentimos:=cCentimos+"0"
ENDIF

cEntero:=SUBSTR(cPrecio,1,nPunto-1)

nCantidad:= Round(aDat9[nI,4], 2)
nEntero := Int(nCantidad)
nCents := nCantidad - nEntero


IF aDat9[nI,8]=1
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+aDat9[nI,3]
ELSEIF aDat9[nI,8]=2
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+padr(aDat9[nI,5],12)+" "+aDat9[nI,3]
ELSEIF aDat9[nI,8]=3 //NOMBREANIMAL
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+padr(::NombreAnimal(aDat9[nI,3]),12)+" "+aDat9[nI,3]
ENDIF

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

NEXT
IF nI > 1
cmd:="3"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF
ENDIF

cmd:="$"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

nI:=0
For nI:=1 to len(::aSeriales)
cSerial01:=Alltrim(::aSeriales[nI,1])
cmd:=[(]+cSerial01

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("CODIGO DE VALIDACION CON PROBLEMA","INFORME A SU COMERCIALIZADOR")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF
NEXT

cCop:=StrZero(VAL(::cString),5)+StrZero(Val(oLoterwin:xTaq),2)
cmd:=[)B0]+Alltrim(cCop)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

cmd:="# Fecha de Juego "+DiaSemana(oLoterwin:dFechaUnica)+" "+Dtoc(oLoterwin:dFechaUnica)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF


cmd:="*"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF
Mario Antonio González Osal
Venezuela
m a g 0 7 1 @ g m a i l. c o m
User avatar
mag071
 
Posts: 140
Joined: Thu Feb 02, 2006 12:09 pm
Location: Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby joseluisysturiz » Fri Dec 09, 2016 4:51 am

mag071 wrote:Saludos Vecino :-)

Yo lo hago con impresoras fiscales de apuestas aquí en Venezuela

http://thefactoryhka.com/ve/
Esta es la pagina web de las personas autorizadas que dan soporte tecnico.
alli tienes una opcion de utilitario donde bajas manuales y demas.


Static Function AbroDllPrinter()
LOCAL lRet:=.F.
LOCAL cDllName:="TFHKADIR.DLL"

hFiscalDll:=LoadLib32(cDllName)
if Abs( hFiscalDLL ) <= 32
MsgAlert( "Error code: " + LTrim( Str( hFiscalDLL ) ) + " loading " + cDllName )
lRet:=.F.
ELSE
lRet:=.T.
endif

Return lRet



DLL32 FUNCTION CheckFprinter() AS LONG PASCAL FROM "CheckFprinter" LIB hFiscalDll

DLL32 FUNCTION OpenFpctrl( lpPortName AS LPSTR ) AS LONG PASCAL FROM "OpenFpctrl" LIB hFiscalDll

DLL32 FUNCTION SendCmd( @status AS LONG, @error AS LONG, cmd AS LPSTR ) AS LONG PASCAL FROM "SendCmd" LIB hFiscalDll

DLL32 FUNCTION ReadFpStatus( @status AS LONG, @error AS LONG ) AS LONG PASCAL FROM "ReadFpStatus" LIB hFiscalDll

DLL32 FUNCTION CloseFpctrl() AS LONG PASCAL FROM "CloseFpctrl" LIB hFiscalDll

DLL32 FUNCTION UploadStatusCmd( @status AS LONG, @error AS LONG, cmd AS LPSTR, cfile AS LPSTR ) AS LONG PASCAL FROM "UploadStatusCmd" LIB hFiscalDll

DLL32 FUNCTION UploadStatusCmdDin( @status AS LONG, @error AS LONG, cmd AS LPSTR, Cadena AS LPSTR ) AS LONG PASCAL FROM "UploadStatusCmdDin" LIB hFiscalDll




//Ejemplo de como sacar un reporte x

MSGSTOP("IMPRESION DE REPORTE X IMPRESORA FISCAL","PULSE UNA TECLA PARA IMPRIMIR")
cmd="I0X"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
ENDIF



//Esto es un ejemplo de una factura lo unico es que es para apuesta de loterias y es distintos los comandos cmd.
//pero para que tengas una idea.

IF lTituloLot
lTituloLot:=.F.
lYaPase:=.T.

IF nI > 1
cmd="3"
if SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
endif
ENDIF

cFecha:=SubStr(StrZero(Year(DATE()),4),3,2)+;
StrZero(Month(DATE()),2)+;
StrZero(Day(DATE()),2)

cHoraSorteo:=::NombreLoterias(aDat9[nI,1],4)
cNumeroSorteo:=::NumeroSorteo(aDat9[nI,1])

cmd:="!"+::NombreLoterias(aDat9[nI,1],1)+cFecha+cHoraSorteo+cNumeroSorteo+::NombreLoterias(aDat9[nI,1],3)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF


EndIf


if Len(Alltrim(aDat9[nI,3])) <> nAuxLen
nAuxLen:= Len(Alltrim(aDat9[nI,3]))
lYaPase:=.T.
EndIf

IF lYaPase
lYaPase:=.F.
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=1
cmd:="# COLA-->(1:100) "+AllTrim(UPPER(aDat9[nI,2]))
ELSEIF Len(Alltrim(aDat9[nI,3])) = 3 .and. aDat9[nI,8]=1
cmd:="# TRIPLE FIJO(1:1000) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=2
cmd:="# COLA+SIGNO (1:1200) "+AllTrim(UPPER(aDat9[nI,2]))
ELSEIF Len(Alltrim(aDat9[nI,3])) = 3 .and. aDat9[nI,8]=2
cmd:="# TRIP.FIJO+SIGNO(1:12000) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF
IF Len(Alltrim(aDat9[nI,3])) = 2 .and. aDat9[nI,8]=3
cmd:="# ANIMALITOS (1:32) "+AllTrim(UPPER(aDat9[nI,2]))
ENDIF

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

ENDIF
//1234567890


cPrecio:=Alltrim(str(aDat9[nI,4]))
if At(".", cPrecio) > 0
nPunto := At(".", cPrecio)
else
cPrecio:=cPrecio+".00"
nPunto := At(".", cPrecio)
endif

cCentimos:=SUBSTR(cPrecio,nPunto+1,2)
IF len(cCentimos) = 0
cCentimos:="00"
ENDIF
IF len(cCentimos) = 1
cCentimos:=cCentimos+"0"
ENDIF

cEntero:=SUBSTR(cPrecio,1,nPunto-1)

nCantidad:= Round(aDat9[nI,4], 2)
nEntero := Int(nCantidad)
nCents := nCantidad - nEntero


IF aDat9[nI,8]=1
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+aDat9[nI,3]
ELSEIF aDat9[nI,8]=2
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+padr(aDat9[nI,5],12)+" "+aDat9[nI,3]
ELSEIF aDat9[nI,8]=3 //NOMBREANIMAL
cmd:=["]+STRZERO(VAL(cEntero),8)+STRZERO(VAL(cCentimos),2)+"J"+Alltrim(Str(nI))+")"+padr(::NombreAnimal(aDat9[nI,3]),12)+" "+aDat9[nI,3]
ENDIF

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

NEXT
IF nI > 1
cmd:="3"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF
ENDIF

cmd:="$"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

nI:=0
For nI:=1 to len(::aSeriales)
cSerial01:=Alltrim(::aSeriales[nI,1])
cmd:=[(]+cSerial01

IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("CODIGO DE VALIDACION CON PROBLEMA","INFORME A SU COMERCIALIZADOR")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF
NEXT

cCop:=StrZero(VAL(::cString),5)+StrZero(Val(oLoterwin:xTaq),2)
cmd:=[)B0]+Alltrim(cCop)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF

cmd:="# Fecha de Juego "+DiaSemana(oLoterwin:dFechaUnica)+" "+Dtoc(oLoterwin:dFechaUnica)
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF


cmd:="*"
IF SendCmd(@status, @error, cmd) = 0
MSGSTOP("PROBLEMA CON LA IMPRESORA FISCAL","REVISE IMPRESORA FISCAL")
Logfile("c:\Vendelot\auditor.log",{"Problema IFA "+cmd})
ENDIF



Parroquia de guarenas..? tenia tiempo sin saber de usted, ya me suscribi en la pagina, pero no me ha llegado algun correo de TheFactory para acceder y no me deja bajar los utilitarios, por casualidad tendras algun sample prg y la lib/ocx a usar.? este es mi correo, joseluisysturiz@yahoo.com,agradecido por si o por no, saludos,gracias... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby mag071 » Sat Dec 10, 2016 2:12 am

Saludos Vecino :-)

No, solo la use para implementar un software de apuesta de loterías legal aquí en Venezuela hace 8 años. usaba imagínate el FWH 8.06 :-)

La DLL en ese tiempo se llamaba TFHKADIR.DLL
y se usaba para casi todas las operaciones la funcion sendcmd()
cambiando solo los parámetros.

En ese tiempo uno iba a esos sitios como thefactory o bematech y ellos te prestaban hasta una impresora con un modulo solo para desarrollador, pero dudo que ahora con la situación país hagan lo mismo. los costos tanto de las impresoras fiscales como de las memorias fiscales son de terror en estos momentos.

Saludos por aquí estamos a la orden.
Mario Antonio González Osal
Venezuela
m a g 0 7 1 @ g m a i l. c o m
User avatar
mag071
 
Posts: 140
Joined: Thu Feb 02, 2006 12:09 pm
Location: Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby luisduque » Sat Dec 10, 2016 7:49 am

Jose Luis Saludos

Te dejo un link con los dll y ejemplos

https://www.dropbox.com/sh/r3dz251ykn1y ... JYKSa?dl=0

Cell: 0414 7036220
correo: accasoft@hotmail.com

Cualquier duda a la orden
Fivewin 16.11
Harbour 3.2.0
Visual Studio 2015 community
MariaDb/MySql

Ing. MSc. Luis Duque
http://www.accasoft.net
luisduque
 
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby joseluisysturiz » Sat Dec 10, 2016 5:08 pm

luisduque wrote:Jose Luis Saludos

Te dejo un link con los dll y ejemplos

https://www.dropbox.com/sh/r3dz251ykn1y ... JYKSa?dl=0

Cell: 0414 7036220
correo: accasoft@hotmail.com

Cualquier duda a la orden


Saludos colega, parroquia, si no es mucho pedir, tendrias un pequeño sample .prg por lo menos para tener idea de como iniciar.? no he manejado impresoras fiscales...estoy descangando lo que me enviastes, saludos, gracias... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby luisduque » Mon Dec 26, 2016 9:10 am

Jose Luis

Disculpa que no te había respondido, pero si necesitas un ejemplo en la tarde coloco. Es que estaba viajando.
Fivewin 16.11
Harbour 3.2.0
Visual Studio 2015 community
MariaDb/MySql

Ing. MSc. Luis Duque
http://www.accasoft.net
luisduque
 
Posts: 133
Joined: Mon May 12, 2008 4:13 pm
Location: Venezuela

Re: IMPRESORA BIXOLON SRP-350 VENEZUELA

Postby joseluisysturiz » Mon Dec 26, 2016 1:35 pm

luisduque wrote:Jose Luis

Disculpa que no te había respondido, pero si necesitas un ejemplo en la tarde coloco. Es que estaba viajando.


Saludos colega, esta bien, si quieres lo mandas a mi privado o lo dejas aca en el foro para compartirlo, gracias... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 101 guests