FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Impresora de Tikets
Posts: 563
Joined: Sun Oct 09, 2005 07:23 PM
Impresora de Tikets
Posted: Mon Mar 12, 2007 08:01 PM

Esto pasando un programa de clipper a xHarbour + fw y me toca ahora la parte de la impresora.

En el programa de clipper imprimía todo con ?, porque al ser una impresora de tikets no hay tamaño de página. Y los cambios de tipo de letra y apertura del cajón de monedas los hacía con secuencias de escape.

¿Qué debo hacer ahora para imprimir?

La impresora es una Epson TM-60.

Posts: 158
Joined: Tue Oct 11, 2005 03:10 PM
Impresora de Tikets
Posted: Mon Mar 12, 2007 09:42 PM

Espero que esto te ayude

   oRep:=TdosPrg():New(cCmd)

          //Especiales
          oRep:Say(00,00,CHR(27)+"@")                  // INDICA QUE SE INICIA CONFIGURACION
          oRep:Say(00,00,CHR(27)+"t"+CHR(0))
          oRep:Say(00,00,CHR(27)+"c0"+CHR(2))          // ACTIVA RECEIVE  COMO HOJA(TICKET)
          oRep:Say(00,00,CHR(27)+"z"+CHR(0))
          //----------------
          If !(oDbfTick)->Ignora1
            n++
            cCmd:=&(oDbfTick)->cTit1
            oRep:Say(n,00,&cCmd)
          EndIf
          If !(oDbfTick)->Ignora2
            n++
            cCmd:=&(oDbfTick)->cTit2
            oRep:Say(n,00,&cCmd)
          EndIf
          If !(oDbfTick)->Ignora3
            n++
            cCmd:=&(oDbfTick)->cTit3
            oRep:Say(n,00,&cCmd)
          EndIf
          If !(oDbfTick)->Ignora4
            n++
            cCmd:=&(oDbfTick)->cTit4
            oRep:Say(n,00,&cCmd)
          EndIf
          n+=2
          oRep:Say(n,00,"TRANSACCION ANULADA POR EL OPERADOR")
          n:=0
          n++
          cCmd:=Fechas(Date())+"  "+Time()+"    "+Str(nTienda)+"    "
          oRep:Say(n,00,cCmd)
          n++
          oRep:Say(00,00,Chr(27) + "d") //+ Chr(13))   // estas lineas
          oRep:Say(00,00,Chr(27) + "i") //+ Chr(13))   // cortan el papel
Posts: 563
Joined: Sun Oct 09, 2005 07:23 PM
Impresora de Tikets
Posted: Tue Mar 20, 2007 08:52 PM
He podido ya imprimir sin usar tDosPrint.

Pero ahora no se como hacer para abrir el cajon. Lo que hago es mandar la instrucción como sigue:

//Apertura del cajon de monedas
function AbreCajon()
local oPrn
local oFont1
local cInstruccion := Chr(27)+Chr(112)+Chr(000)+Chr(060)+Chr(240)
PRINT oPrn NAME "Abre_Cajon"
DEFINE FONT oFont1 NAME "ARIAL" SIZE 0, -10 OF oPrn
if empty( oPrn:hDC )
msgstop( "No hay impresora preparada" )
else
PAGE
oPrn:CmSay(0,0,cInstruccion,oFont1)
ENDPAGE
endif
ENDPRINT // Apaga la impresora
oFont1:end()
return NIL


Pero lo único que consigo es imprimir unos símbolos extraños en el papel.

Ruego sus sugerencias.
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Impresora de Tikets
Posted: Tue Mar 20, 2007 09:29 PM

hay algunos cajones que se abren asi:

oPrn := TDosPrn():New('LPT1')
oPrn:say( 0,0, chr(7)  )
oPrn:end()

saludos, Cesar Cortes ..

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "

Continue the discussion