Imprimir directamente en la impresora matriz de puntos

Necesito me ayudes a realizar el envío de la impresión en una matriz de puntos. Te comento, tengo un formulario de facturación y quiero ir imprimiendo a medida que vaya haciendo las cosas por ejemplo tengo en el formulario un botón command "Nuevo tickets" que al hacer click me imprima directamente en la impresora el encabezado del ticket con sus datos luego se pare la impresora ahí y cuando ingrese el código del articulo me imprima directamente ese articulo y si ingreso otro que envíe nuevamente a la impresora una vez que cierre el ticket y dle de la forma de pago que esta en otro formulario imprima los totales, las formas de pagos etc. Pero sin que me de un salto de pagina entre los artículos y el pie de tickets es decir que ni al comienzo ni al final haga un avance de pagina no se si soy explicito lo que quiero. Y si me das una ayuda te lo agradeceré o si tienes una rutina de como hacerlo.

1 respuesta

Respuesta
1

¿Los códigos varían según el tipo de impresora se utiliza set defa to print y se usa? Para imprimir y chr(numero) par mandar los códigos de avance de pagina como tipo de letra y tamaño un ejemplo:

Para alinear el Texto puedes usar las funciones PadC( ), PadL( ), Padre( ), los cuales son centro, izquierda o derecha, encuentras como usarlo en la ayuda de Vfp. Ahora para cambiar los tamaños de letra puedes usar los siguientes códigos ESC los cuales uso con mis impresiones, estos códigos son para las impresoras que emulan códigos Epson. Como usarlo... ::: ¿TL(GR)? chr(13)+chr(10)+"PRUEBA DE IMPRESIÓN" TL(CH)? chr(13)+chr(10)+"PRUEBA DE IMPRESIÓN DOS" . .
y la función es: *--------------------------------------------- CÓDIGOS DE IMPRESIÓN -------------------------------------------- * DESCRIPCIÓN: Funciones que verifica los códigos de impresión para impresoras EPSON. *--------------------------------------------- CÓDIGOS DE IMPRESIÓN -------------------------------------------- FUNCTION TL(mcTam) ??? CHR(27)+CHR(48)+CHR(27)+CHR(67)+CHR(44) DO CASE CASE MCTAM=='II' *Se Inicializa el código de Impresión ??? CHR(27)+CHR(48)+CHR(27)+CHR(67)+CHR(44) CASE MCTAM=='GR' *Fuente Extra Grande 6CPP CARTA=46 COLUMNAS ??? CHR(13)+CHR(18)+CHR(27)+CHR(77)+CHR(18)+CHR(14) CASE MCTAM=='M1' *Fuente Mediana 10CPP CARTA=80 COLUMNAS RECOMENDADO=78 COLUMNAS ??? CHR(18)+CHR(27)+CHR(80) CASE MCTAM=='M2' *Fuente Tamaño 13CPP CARTA=94 COLUMNAS ??? CHR(18)+CHR(27)+CHR(77) CASE MCTAM=='CH' *Fuente Pequeña 20CPP CARTA=160 COLUMNAS ??? CHR(18)+CHR(27)+CHR(77)+CHR(15) OTHERWISE *Si no es ninguna de las Anteriores, Es un Espacio. ??? CHR(10)+CHR(13) ENDCASE ENDFUNC

Esto son los distintos tipos de Fuentes, y tengo que ir probando cual de ellas voy a usar? y el salto de pagina es la misma codificación ? No entiendo como hacer. En el botón comando (Nuevo Ticket) en el evento click deseo imprimir el encabezado del ticket y tiene que quedar sin avanzar linea ni pagina para poder ingresar el código de articulo y cantidad luego en un botón comando (Aceptar articulo) quiero que imprima al hacer click el articulo aceptado y no avanzar linea ni pagina y así si hay mas artículos, luego en el cierre el comprobante imprimir el pie del ticket. me entiendes? por favor dime la rutina o las instrucciones de como hacer paso a paso en un papel de ancho 12 cm y continuo (en rollo)

Gracias

Hola Experto, probé tus códigos y si me funcionan, lo que no logro es que imprima luego de hacer click en el comando, cuando cargo un producto y cuando termina el ticket. si lo hace cuando salgo del sistema por completo, me estará faltando alguna instrucción después de enviar la impresión, por ejemplo tengo al comienzo de la impresión "Set device to print" y final de cada impresión el "set device to screen", me faltara algo? para que imprima en el momento que quiero que imprima?

Se que es problema del buffers haber dejame buscar como lo resolví yo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas