Página 1 de 1

IMPRIMIR EN IMPRESORAS DE TICKETS

Publicado: Vie Nov 02, 2007 6:09 am
por PEDRO DE LEON RODAS[1]
¿ 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

Publicado: Vie Nov 02, 2007 6:46 pm
por Christian
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.
>
>
>
>

IMPRIMIR EN IMPRESORAS DE TICKETS

Publicado: Vie Nov 02, 2007 7:47 pm
por jasm
Yo uso TCanvas y me va muy bien.
Saludos
Jose A. Suarez