¿ ALGUIEN TIENE UN EJEMPLO BIEN EXPLICADO DE COMO IMPRIMIR TICKETS. ?
Estoy haciendo un sistema de punto de ventas, y lo unico que me falta es
terminar el modulo de imprimir la venta, logicamente en una impresora de
punto de ventas.
Y en verdad no se como empezar hacerlo.
Lo unico que pido es apoyo en un ejemplo de como imprimir la venta al
ticket.
La impresora que estoy usando es un star sp-212
En foxpro lo hago de la siguiente forma.
cPrnName="Star SP212 Line Mode Printer with Status Monitor"
cConsole = SET('console')
CHKAMT=123456.22
chkPayee="pedro"
chkNUmber=2525
CHKAMT=45678.33
cDevice = SET('DEVICE')
SET PRINTER TO NAME (cPrnName)
SET CONSOLE OFF
SET DEVICE TO PRINTER
SET PRINTER TO
@ 0,0 SAY "NOMBRE_DE_LA_EMPRESA"
@ 1,0 SAY "CALLE_EMPRESA"
@ 2,0 SAY "COLONIA_EMPRESA"
@ 9,0 SAY "CANTIDAD"
@ 9,14 SAY "PRECIO"
@ 9,30 SAY "IMPORTE"
@ 10,0 SAY "----------------------------------------"
L=11
USE Mi_tabla
GO TOP
DO WHILE .NOT. EOF()
@ L,0 say substr(nombre_cue,1,40)
L=L+1
@ L,0 say cantidad PICTURE "#,###"
@ L,12 say deposito PICT "##,###.##"
@ L,28 say saldo_nue PICT "###,###.##"
L=L+1
skip
enddo
@ L,0 SAY "----------------------------------------"
L=L+1
@ L,11 SAY "VENTA TOTAL:"
@ L,25 SAY var_importe_total PICT "##,###.##"
L=L+1
@ L,11 SAY "CAMBIO====>:"
@ L,25 SAY VAR_CAMBIO PICT "##,###.##"
L=L+1
@ L,0 SAY "IMPORTE_CON_LETRA"
L=L+2
@ L,0 SAY "***** GRACIAS POR SU COMPRA *****"
**Acá al final debe cortar el papel
???CHR(10)
IF UPPER(left(allt(os(1)),10))<>"WINDOWS NT"
?chr(27)+chr(64)
?chr(27)+CHR(97)+CHR(100)+CHR(10) &&Avanzar el papel
?CHR(27)+"m" &&Corte Parcialmente
ELSE
ENDIF
SET CONSOLE &cConsole
SET DEVICE TO &cDevice
RELEASE cConsole,cDevice
SET PRINTER TO
Les agradesco toda ayuda proporcionada.
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
IMPRIMIR EN IMPRESORAS DE TICKETS
-
- Mensajes: 136
- Registrado: Jue Jul 05, 2007 4:52 am
IMPRIMIR EN IMPRESORAS DE TICKETS
Te recomiendo lo mismo que me recomendaron a mi, abre el puerto con
nH:=FOPEN('LPT1') o el puerto que sea y con FWRITE(nH,cTexto) lo vas
enviando es muy rudimentario y no puedes usar @ ... SAY pero funciona,
pruebalo.
Saludos desde Argentina
"PEDRO DE LEON RODAS" <deleonpe@terra.com.mx> escribió en el mensaje
news:[email=472aa2f9@ozsrv2.ozlan.local...]472aa2f9@ozsrv2.ozlan.local...[/email]
>¿ ALGUIEN TIENE UN EJEMPLO BIEN EXPLICADO DE COMO IMPRIMIR TICKETS. ?
>
> Estoy haciendo un sistema de punto de ventas, y lo unico que me falta es
> terminar el modulo de imprimir la venta, logicamente en una impresora de
> punto de ventas.
>
> Y en verdad no se como empezar hacerlo.
>
> Lo unico que pido es apoyo en un ejemplo de como imprimir la venta al
> ticket.
>
> La impresora que estoy usando es un star sp-212
>
> En foxpro lo hago de la siguiente forma.
>
>
> cPrnName="Star SP212 Line Mode Printer with Status Monitor"
>
> cConsole = SET('console')
>
> CHKAMT=123456.22
>
> chkPayee="pedro"
>
> chkNUmber=2525
>
> CHKAMT=45678.33
>
> cDevice = SET('DEVICE')
>
> SET PRINTER TO NAME (cPrnName)
>
> SET CONSOLE OFF
>
> SET DEVICE TO PRINTER
>
> SET PRINTER TO
>
> @ 0,0 SAY "NOMBRE_DE_LA_EMPRESA"
>
> @ 1,0 SAY "CALLE_EMPRESA"
>
> @ 2,0 SAY "COLONIA_EMPRESA"
>
> @ 9,0 SAY "CANTIDAD"
>
> @ 9,14 SAY "PRECIO"
>
> @ 9,30 SAY "IMPORTE"
>
> @ 10,0 SAY "----------------------------------------"
>
> L=11
>
> USE Mi_tabla
>
> GO TOP
>
> DO WHILE .NOT. EOF()
>
> @ L,0 say substr(nombre_cue,1,40)
>
> L=L+1
>
> @ L,0 say cantidad PICTURE "#,###"
>
> @ L,12 say deposito PICT "##,###.##"
>
> @ L,28 say saldo_nue PICT "###,###.##"
>
> L=L+1
>
> skip
>
> enddo
>
> @ L,0 SAY "----------------------------------------"
>
> L=L+1
>
> @ L,11 SAY "VENTA TOTAL:"
>
> @ L,25 SAY var_importe_total PICT "##,###.##"
>
> L=L+1
>
> @ L,11 SAY "CAMBIO====>:"
>
> @ L,25 SAY VAR_CAMBIO PICT "##,###.##"
>
>
> L=L+1
>
> @ L,0 SAY "IMPORTE_CON_LETRA"
>
> L=L+2
>
> @ L,0 SAY "***** GRACIAS POR SU COMPRA *****"
>
> **Acá al final debe cortar el papel
>
> ???CHR(10)
>
> IF UPPER(left(allt(os(1)),10))<>"WINDOWS NT"
>
> ?chr(27)+chr(64)
>
> ?chr(27)+CHR(97)+CHR(100)+CHR(10) &&Avanzar el papel
>
> ?CHR(27)+"m" &&Corte Parcialmente
>
> ELSE
>
> ENDIF
>
> SET CONSOLE &cConsole
>
> SET DEVICE TO &cDevice
>
> RELEASE cConsole,cDevice
>
> SET PRINTER TO
>
>
>
> Les agradesco toda ayuda proporcionada.
>
>
>
>
nH:=FOPEN('LPT1') o el puerto que sea y con FWRITE(nH,cTexto) lo vas
enviando es muy rudimentario y no puedes usar @ ... SAY pero funciona,
pruebalo.
Saludos desde Argentina
"PEDRO DE LEON RODAS" <deleonpe@terra.com.mx> escribió en el mensaje
news:[email=472aa2f9@ozsrv2.ozlan.local...]472aa2f9@ozsrv2.ozlan.local...[/email]
>¿ ALGUIEN TIENE UN EJEMPLO BIEN EXPLICADO DE COMO IMPRIMIR TICKETS. ?
>
> Estoy haciendo un sistema de punto de ventas, y lo unico que me falta es
> terminar el modulo de imprimir la venta, logicamente en una impresora de
> punto de ventas.
>
> Y en verdad no se como empezar hacerlo.
>
> Lo unico que pido es apoyo en un ejemplo de como imprimir la venta al
> ticket.
>
> La impresora que estoy usando es un star sp-212
>
> En foxpro lo hago de la siguiente forma.
>
>
> cPrnName="Star SP212 Line Mode Printer with Status Monitor"
>
> cConsole = SET('console')
>
> CHKAMT=123456.22
>
> chkPayee="pedro"
>
> chkNUmber=2525
>
> CHKAMT=45678.33
>
> cDevice = SET('DEVICE')
>
> SET PRINTER TO NAME (cPrnName)
>
> SET CONSOLE OFF
>
> SET DEVICE TO PRINTER
>
> SET PRINTER TO
>
> @ 0,0 SAY "NOMBRE_DE_LA_EMPRESA"
>
> @ 1,0 SAY "CALLE_EMPRESA"
>
> @ 2,0 SAY "COLONIA_EMPRESA"
>
> @ 9,0 SAY "CANTIDAD"
>
> @ 9,14 SAY "PRECIO"
>
> @ 9,30 SAY "IMPORTE"
>
> @ 10,0 SAY "----------------------------------------"
>
> L=11
>
> USE Mi_tabla
>
> GO TOP
>
> DO WHILE .NOT. EOF()
>
> @ L,0 say substr(nombre_cue,1,40)
>
> L=L+1
>
> @ L,0 say cantidad PICTURE "#,###"
>
> @ L,12 say deposito PICT "##,###.##"
>
> @ L,28 say saldo_nue PICT "###,###.##"
>
> L=L+1
>
> skip
>
> enddo
>
> @ L,0 SAY "----------------------------------------"
>
> L=L+1
>
> @ L,11 SAY "VENTA TOTAL:"
>
> @ L,25 SAY var_importe_total PICT "##,###.##"
>
> L=L+1
>
> @ L,11 SAY "CAMBIO====>:"
>
> @ L,25 SAY VAR_CAMBIO PICT "##,###.##"
>
>
> L=L+1
>
> @ L,0 SAY "IMPORTE_CON_LETRA"
>
> L=L+2
>
> @ L,0 SAY "***** GRACIAS POR SU COMPRA *****"
>
> **Acá al final debe cortar el papel
>
> ???CHR(10)
>
> IF UPPER(left(allt(os(1)),10))<>"WINDOWS NT"
>
> ?chr(27)+chr(64)
>
> ?chr(27)+CHR(97)+CHR(100)+CHR(10) &&Avanzar el papel
>
> ?CHR(27)+"m" &&Corte Parcialmente
>
> ELSE
>
> ENDIF
>
> SET CONSOLE &cConsole
>
> SET DEVICE TO &cDevice
>
> RELEASE cConsole,cDevice
>
> SET PRINTER TO
>
>
>
> Les agradesco toda ayuda proporcionada.
>
>
>
>
IMPRIMIR EN IMPRESORAS DE TICKETS
Yo uso TCanvas y me va muy bien.
Saludos
Jose A. Suarez
Saludos
Jose A. Suarez