FoxPro/Visual FoxPro - Como hacer reporte para impresora de Tickets

   
Vista:

Como hacer reporte para impresora de Tickets

Publicado por Victor perez (137 intervenciones) el 07/11/2012 19:40:12
-Hola Amigos -

En la clinica tengo una impresora matricial, recien instalada, para el reporte de las facturas. Pero esas impresoras hacen demasiado ruido por lo que estoy pensando en comprar una impresora de tickets termica (silenciosas)

Mi dolor de cabeza es saber como debo hacer el reporte para este tipo de impresoras. Con el generador de reportes de VFP9 o a la manera antigua (q ya se me olvido).

Si es con el generador de reportes, como hago para que me haga el corte del papel?

Un saludo y en espera de la ayuda ...


Victor,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Mauricio

Como hacer reporte para impresora de Tickets

Publicado por Mauricio (1367 intervenciones) el 08/11/2012 17:45:16
Victor, tienes que trabajar a la antigua, incluso para el corte del papel, aca algo para empezar:
*---
set printer on
set printer to LPT1
set devi to print

sin embargo lo que mandes a imprimir dependera del tipo de impresora conectada a LPT1

por ejemplo:

@ prow(),pcol() say chr(18)+'Primera linea' && esto imprime en la primera
posicion linea y primera posicion
columna en caracter tamaño
normal.
@ prow()+1,pcol() say chr(18)+' ' && para resetear el tamaño de letra

@ prow(),pcol() say chr(15)+Segunda linea' && esto imprime en la primera
posicion linea y primera posicion
columna en caracter tamaño
pequeño.
@ prow()+1,pcol() say chr(18)+' ' && para resetear el tamaño de letra

@ prow(),pcol() say chr(27)+chr(33)+chr(40)+Tercera linea' && esto imprime en
la primera
posicion linea y
primera posicion
columna en
caracter tamaño
grande.
@ prow()+1,pcol() say chr(18)+' ' && para resetear el tamaño de letra

esto sirve para las impresoras matriciales EPSON SERIES FX, LQ, etc y las genericas, las impresoras PANASONIC y HP LASER SERIES IV y similares tienen otros codigos que en este momento no recuerdo.

faltaria ver si la etiquetera responde a estos codigos.

lo que no podras imprimir desde "DOS" son los codigos de barras, asi que me parece que tendras que buscar el DRIVER para XP de tu impresora y trabajar como siempre lo has hecho.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hacer reporte para impresora de Tickets

Publicado por victor perez (137 intervenciones) el 08/11/2012 18:14:52
Gracias Mauricio por la informacion.
Yo tengo un codigo para imprimir mis facutras cuando usaba Foxpro sencillo. Ese me va a serv ir.


Pero si la impresora viene con su driver para XP , me dices que tengo que hacer el reporte como normalmente lo haria..solo que con caracteres mas pequeños para que quepa por el ancho del papel.

Y si es asi, como le hago para el corte del papel? Imprimo el reporte y luego activo la impresora nuevamente y coloco el codigo para cortar el papel? Algo asi

Report form Factura to printer noconsole

Set printer on
set printer to \\servidor\printer$
set device to printer

? chr(xxx) && comando que corta el papel

Set printer off
Set device to

Saludos y espero tu respuesta.


Victor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio

Como hacer reporte para impresora de Tickets

Publicado por Mauricio (1367 intervenciones) el 08/11/2012 22:01:13
para el corte es como otra linea de impresion, dejame buscar en mi baul de recuerdos, talvez encuentro algo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio

Como hacer reporte para impresora de Tickets

Publicado por Mauricio (1367 intervenciones) el 08/11/2012 23:43:51
En el caso que necesites personalizar el tamaño, primeramente tenes que crear en propiedades del Servidor un formulario nuevo con las dimensiones de la impresion, luego, establecerlo como tamaño predeterminado, crear el reporte, guardarlo y ejecutar lo siguiente linea en la linea de comandos

Use reporte.frx
Blank Fields Expr, Tag, Tag2
Use

Lo que hace esto es eliminar los datos de tamaño de hoja del reporte y toma el tamaño de hoja que se encuentra predeterminado, funciona de maravillas en todas las impresoras de la red. solo se debe crear nuevamente el formulario en propiedades del Servidor en cada una de ellas y establecerla como predeterminada.
Creo que es esto lo que buscas.
Exitos.
David Brizuela
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hacer reporte para impresora de Tickets

Publicado por victor perez (137 intervenciones) el 09/11/2012 00:34:07
Hola,

Creo que diste en el clavo en un serio problema que tenemos al imprimir en formularios que no son standard.

En varios forums lei que si poniamos un formulario propio de impresion, por exjemplo 8.5 x 5.5 ", funcionaba muy bien en la maquina donde se compilaba el programa pero no funcionaba en las otras de la red, a pesar de haber puesto en el reporte que se usara la impresora de RED que tenia ya asignado ese tipo de papel como predeterminado.

Creo que este comando que nos diste funcionaria para evitar este problema.

Yo tendria que probarlo en mis sistemas, porque a pesar de tener el formulario propio, siempre me imprime como si fuera un formulario 8.5 x 11. Yo uso la mitad de la pagina que las compro en bloque continuo ya ranuradas a la mitad y tenia que imprimir y siempre volver a correr el papel hacia atras. Creo que el problema lo tendria cuando tuviese una factura que abarcara mas de una pagina del tamaño 8.5 x 11 ya que me correria el papel...no se , no lo he probado.

Yo hice lo siguiente:

En el boton de imprimir puse los siguientes comandos

Use Factura.frx in 0 alias AlmFactura
Select AlmFactura
Blank fields expr,tag1,tag2

Select _items (Este es un cursor que contiene el detalle de la venta).
Report form factura , etc etc etc

Apenas lo probe en mi casa pero sin impresora ...asi que lo probarè en la clinica en cuanto pueda.

Saludos y mil gracias.

Victor - --
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio

Como hacer reporte para impresora de Tickets

Publicado por Mauricio (1367 intervenciones) el 09/11/2012 00:21:53
Hola, mi consejo es que no te compliques, usa lo siguiente:

SET PRINTER ON PROMPT

esto hace que aparesca lo que estas buscando.

Ahora si antes quieres prefijar como predeterminada alguna impresora en particular con sus caracteristicas propias (tamaño de papel, etc, etc.), ejecutas antes lo siguiente:

run /n2 escoje.bat

Donde escoje.bat es:

@ECHO OFF
c:
cd..
cd..
cd..
cd..
cd windows
cd system32
cscript prnmngr.vbs -t -p "canon ip2700 series"

rem cscript prnmngr.vbs -t -p "canon ip2700 series"
rem si es impresora local
rem y
rem cscript prnmngr.vbs -t -p "\\pc\canon ip2700 series"
rem si es impresora en red y pc es la maquina donde esta conectada
rem canon ip2700 series es el nombre de impresora que estoy usando
rem esto es mejor que usar el NET USE
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hacer reporte para impresora de Tickets

Publicado por VICTOR PEREZ (137 intervenciones) el 09/11/2012 01:11:56
hOLA,

El codigo
USE REPORTE.FRX
BLANK FIELDS EXPR,TAG,TAG2

No me funciona porque cuando hago esto, el sistema me toma como impresora de reporte a la que tengo establecida como predeterminada. Esta impresora predeterminada no es la que tengo para facturar. Si coloco como predeterminada a la impresora usada para facturar se me forma un problema porque las asistentes solo saben hacer click, click...sin saber elegir la impresora en el caso de que lo que se quiera imprimir no sea una factura.

De todas maneras, creo que es bueno el codigo..

Saludos,

Victor,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hacer reporte para impresora de Tickets

Publicado por victor perez (137 intervenciones) el 09/11/2012 15:54:24
Hola Mauricio,

Te cuento que use el codigo

Use Factura.frx in 0
Blank fields expr,tag,tag2

Primeramente, desde el modulo de programacion, dentro del mismo VFP al correrlo como formulario solamente no me da ningun error. Pero al correrlo desde el archivo completo de la clinica compilado, me da el error "Factura.frx es solo de lectura, no puede ser modificado".

Aun asi, corriendolo desde VFP hice el intento y nada...lo corro pero igual me sigue tirando el reporte como si se tratara de una hoja 8.5 x 11.

Ya habia configuarado en las dos maquinas en la seccion Propiedades del servidor, el formulario con las medidas 8.5 x 5.5 y la puse como predeterminado.

No se que hacer, cada vez que imprimo una factura que tenga mas de 10 lineas de servicios se me va una hoja entera perdida.

Agradeciendo la ayuda q puedas brindarme.

Victor Perez
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hacer reporte para impresora de Tickets

Publicado por nadia nadia@productosynegocios.com.ar (1 intervención) el 29/01/2016 20:36:44
Espero te sea de utilidad. Te dejo un artículo detallado donde podrás encontrar la funcionalidad de las diferentes impresoras, tipos de impresoras, carga de

papel, distintas conectividades de las mismas, entre otros elementos de utilidad. Mis saludos.
http://negociosyproductos.com.ar/content/6-como-elegir-una-ticketera
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar