Utilización con arte de las Impresoras Térmicas en Visual FoxPro
Tener la capacidad de envolver el dominio de las impresoras de recibos térmicos en el lenguaje de programación Visual FoxPro no solo te brinda un gran control sobre el formato de los recibos, sino también te da el control total sobre cómo manejas la lógica de negocio detrás de la impresión.
Comandos Básicos para Impresoras Térmicas en Visual FoxPro
La programación de impresoras térmicas con Visual FoxPro no difiere de cualquier otro dispositivo de impresión. Podemos enviar directamente ciertos comandos a la impresora mediante el uso de la función “STRTOFILE”.
SET PRINTER TO NAME 'MyPrinter' STORE CHR(27)+CHR(33)+CHR(0) TO myVar STRTOFILE(myVar,'LPT1')
Interactuando con las Impresoras de Recibos Térmicos
Ahora que ya conocemos los fundamentos del uso de la impresora térmica en VFP, vamos a cubrir cómo interactuar con estas impresoras de una manera más avanzada, primero debemos identificar correctamente el puerto al que está conectada nuestra impresora.
nPort = getprinter() IF nPort != 0 ?'Impresora seleccionada en puerto: ', nPort STORE CHR(27)+CHR(33)+CHR(0) TO myVar STRTOFILE(myVar, 'COM' + ALLTRIM(STR(nPort,1))) ELSE ?'No se seleccionó ninguna impresora' ENDIF
Creando el Recibo
La creación de un recibo en Visual FoxPro utilizando una impresora térmica se hace de la misma manera que se imprimiría cualquier otro documento. Aquí está un código de muestra enVisual FoxPro para imprimir un recibo.
CREATE CURSOR myReceipt (item C(25), price N(7,2)) INSERT INTO myReceipt VALUES ('Product 1', 10.00) INSERT INTO myReceipt VALUES ('Product 2', 20.00) ACTIVATE WINDOW PRINT FORM myReceipt TO PRINTER PROMPT PREVIEW DEACTIVATE WINDOW PRINT
Manejo de Errores
Es importante manejar cualquier error que pueda surgir durante la impresión. Podemos hacer esto utilizando la característica de manejo de errores de FoxPro.
ON ERROR DO myErrorHandler WITH ; MESSAGE( ), MESSAGE(1), PROGRAM( ), PROGRAM(1), LINENO( ), LINENO(1)