|
RE: Usar LINEPRINT con Windows XP
|
Francisco J. Cárabez
|
Dec 22, 2005 08:47 PST
|
Hola Luis:
La manera como funciona LinePrint es la siguiente:
Por cada llamada a la función: se abre el puerto/archivo, se escribe lo
datos y después se cierra el archivo.
Así cuando imprimes un ticket se genera el sig. código:
.
.
LOOP 1 TO LineasDelTicket
LinePrint('xxx') !Abre archivo, escribe, Cierra Archivo
END
.
.
Lo anterior en equipos muy rápidos ó con XP -que tienen cierto nivel de
predicción-, las instrucciónes del loop se desarrollan tan rápido que
antes de que el SO termine de cerrar completamente el archivo, ya se
está generando otra instrucción de apertura del mismo.
Para solucionar lo anterior habría que cambiar el LOOP de la sig.
manera:
.
.
Instrucción Abre Archivo/Puerto
LOOP 1 TO LineasDelTicket
Instrucción Escribe Archivo/Puerto
END
Instrucción Cierra Archivo/Puerto
.
.
Igual que muchos, tuve problemas con el LinePrint. Que lo utilizaba para
imprimir en MiniPrinters.
Por lo mismo hice un set de templates orientado dar un mejor solución a
dicho contexto:
http://www.carabez.com/wedge.html
Se trata básicamente de un conjunto de funciones para checar el estatus
de una impresora MiniPrinter: saber si está conectada, si está en línea,
si tiene papel. Para poder avisar al usuario antes de enviar el flujo de
impresión.
Finalmente, como utilizo dichas funciones es así:
.
.
.
OpenDevice
Check ParallelStatus ó SerialStatus
LOOP
WriteDevice
END
CloseDevice
.
.
.
Adicionalmente tiene una función para leer los lectóres de códigos de
Barras del Tipo Serial. Pero esa es otra historia.
Saludos y Sonrisas
P.D. Felices fiestas
Luis Irala wrote:
| | Hola,
Se me presenta el siguiente problemas:
Al usar un sistema de Facturacion en un PC Pentium 4 de 2.8MHZ con S.O.
Windows XP e imprimir la Factura preimpresa usando LINEPRINT, no imprime
alguno(s) productos de la factura, no imprime algunas palabras en
algunos casos y no respeta el orden de impresion de los campos.
Pero el mismo sistema en otra maquina con Windows 98 o Milenium imprime
correctamente. El sistema esta hecho en Clarion 5.5 usando como W98 en
desarrollo.
Como puedo solucionar este problema?
Luis Irala
|
-----------------------------------
C a r a b e Z @ H o t m a i l . C o m
Guadalajara, Jal. Mex. 0443338167613
Clarion Programmer -ABC-
http://www.tek-tips.com (Clarion English forum)
http://groups.google.com (Clarion English forum)
-----------------------------------
|
|
 |
|