cajón portamonedas con tprint

cajón portamonedas con tprint

Postby Loren » Mon Aug 12, 2013 11:31 pm

Compañeros, buenas tardes:

¿Como abrir el cajón portamonedas a través de la clase tprint?

Yo utilizo:
Code: Select all  Expand view

    PRINT oPrn NAME "abrir cajon" to cprint2
     page
     endpage
   endprint
 


... así lo abre... pero al impresora antes me imprime una linea en blanco y corta el papel.

Gracias. Un saludo a todos.
Desde Cádiz, España.
Loren
 
Posts: 479
Joined: Fri Feb 16, 2007 10:29 am
Location: Cadiz - España

Re: cajón portamonedas con tprint

Postby Willi Quintana » Tue Aug 13, 2013 2:56 am

Podrias mostrar el código completo...
Salu2
User avatar
Willi Quintana
 
Posts: 1002
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Re: cajón portamonedas con tprint

Postby Biel EA6DD » Tue Aug 13, 2013 8:08 am

Normalmente una de las propiedades que incorporan las impresoras de tickes, es que al realizar un listado abran el cajón, que es lo que estas haciendo tu ahora, eso conlleva la impresión de un trocito de ticket.

Otra alternativa, es enviar directamente la secuencia de escape para abrir el cajon, sin realizar ningún listado. Para ello necesitas conocer cual es la secuencia de escape.

Te adjunto ejemplo de como lo hago con una impresora de tickets bixolon:
Code: Select all  Expand view

STATIC FUNCTION AbriRCajon()
   LOCAL cPrinter,hFile
   cPrinter:=WIN_PrinterPortToName( "USB001" )
   IF !File('opn.esc')
      hFile:=FCreate('opn.esc')
      FWrite(hFile,Chr(27)+Chr(112)+Chr(48)+Chr(55)+Chr(121)) //Abrir cajón
      FClose(hFile)
   ENDIF
   WIN_PrintFileRaw(cPrinter,'opn.esc','')
RETURN NIL
Last edited by Biel EA6DD on Tue Aug 13, 2013 5:06 pm, edited 1 time in total.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

Re: cajón portamonedas con tprint

Postby csincuir » Tue Aug 13, 2013 3:37 pm

Biel,
Con unas preguntas: ??

Donde se consigue esta función:
Code: Select all  Expand view
WIN_PrinterPortToName()


Y para que sirve?

Saludos.

Carlos.
csincuir
 
Posts: 396
Joined: Sat Feb 03, 2007 6:36 am
Location: Guatemala

Re: cajón portamonedas con tprint

Postby Biel EA6DD » Tue Aug 13, 2013 5:05 pm

Son funciones propias de harbour (hbWin.lib)
Win_PrinterPortToName(cPortName) Retrieves the name of the printer connected to a printer port.
Win_PintFileRaw(cPrinterName,cFileName) Prints a file to a Windows printer in RAW mode.

Antes ya existian, pero sin el prefijo WIN_
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

Re: cajón portamonedas con tprint

Postby leandro » Tue Aug 13, 2013 10:45 pm

Gracias Biel, me fue muy útil esa forma de abrir el cajón.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1481
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: cajón portamonedas con tprint

Postby csincuir » Wed Aug 14, 2013 12:47 am

Gracias Biel, por la información.

Saludos cordiales.

Carlos.
csincuir
 
Posts: 396
Joined: Sat Feb 03, 2007 6:36 am
Location: Guatemala

Re: cajón portamonedas con tprint

Postby devtuxtla » Wed Aug 14, 2013 3:00 am

Hola Biel.

Hay un equivalente de estas funciones WIN_PrinterPortToName y WIN_PrintFileRaw para xharbour?

Saludos
Visite Chiapas, el paraiso de México.
devtuxtla
 
Posts: 392
Joined: Tue Jul 29, 2008 1:55 pm

Re: cajón portamonedas con tprint

Postby Biel EA6DD » Wed Aug 14, 2013 7:30 am

Me alegra que os sea de utilidad, con referencia a si existen estas funciones para xHarbour, creo que si, pero hace años que no uso xHarbour y no he seguido su evolución, prueba sin el prefijo WIN_
PrinterPortToName()
PrintFileRaw()
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

Re: cajón portamonedas con tprint

Postby Loren » Thu Aug 15, 2013 5:07 pm

Willi, cuando la impresora está en puerto paralelo o en serie yo utilizo el siguiente código haciendo uso de TDOSPRN:

Code: Select all  Expand view
funct abrir_cajon
   oPrn:=TDosPrn():New(alltrim(configu->puerto))
   oPrn:say(0,0,&(configu->cajon))
   oPrn:End()
return nil


... como verás, los parámetros los guardo en una DBF (configu) y el usuario puede cambiarlos desde la opción de utilidades de la aplicación.

Biel, me funcionó perfecto tu código. Al yo utilizar xHarbour simplemente le quité el prefijo Win_ a algunas funciones y funcionó perfecto. Es lo que quería (que el usuario desde un buttón contenido en un Dialog pudiese abrir el cajón portamonedas sin necesidad de imprimir nada).

Mil gracias.
Loren
 
Posts: 479
Joined: Fri Feb 16, 2007 10:29 am
Location: Cadiz - España


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot], pedroluis and 10 guests