https://foro.gambas-es.org/viewtopic.php?f=1&t=1632
-----------------------------------
ociokart
Viernes, 27 May 2011, 10:27

Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
Buenos días a todos.

Soy un usuario nuevo en Gambas (y en este foro).
Actualmente tengo aplicaciones realizadas en Visual Basic 6.0 que estoy manteniendo. Me había planteado pasarme a .NET (tengo alguna aplicación), pero no termina de convencerme.
Trabajo en un karting (circuito de karts) y llevo todo lo relativo a la informática.
Tengo un par de servidores Linux (van de maravilla para lo que necesito) y el resto de ordenadores (alrededor de 10 y varios portátiles), unos corren con Windows XP y alguno con Windows 7.
La mayoría de los programas están programados en Visual Basic 6.0 y la Base de Datos mySQL (en Servidor HP Proliant ML350 con Ubuntu 64 bits).
Quiero mejorar el aspecto de las aplicaciones, el rendimiento y ampliar las posibilidades futuras..., así que he decidido cambiarme a Gambas.

Empezaré 'trasteando' un poco en Gambas y programando los puertos para controlar los dispositivos varios, entre otras cosas.

Tengo varios decoders conectados al puerto serie y un pulsador también conectado al puerto serie para la telemetría. Un par de PIKs (Puntos de Información del Karting), en los cuales tengo dispositivos como lector de códigos de barras, impresora térmica y lector de billetes. Una TPV en caja con impresora de tickets térmica.

y... después de esta 'txapa' de introducción a lo que voy a hacer, ahí lanzo mi primera pregunta al foro:

En principio me gustaría poder realizar impresión directa a una impresora térmica (Epson TM-T88III, IV y V) con conexión USB, ya que en Visual Basic no ha habido forma de sacarlo (con puerto serie o paralelo ningún problema), no sé cómo se hace ni si se puede, ya que lo controla el sistema.

[b]¿Se puede realizar impresión directa mediante el puerto USB en Gambas? Ej.: Abrir el cajón conectado a la impresora en la TPV.
[/b]

Gracias y espero colaborar en lo que pueda en el foro.

Saludos
Sergio
 ;-)


-----------------------------------
jguardon
Viernes, 27 May 2011, 11:15

Re: Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
Bienvenido, Sergio

Hay varios mensajes donde de habla al respecto y es posible hacerlo desde Gambas perfectamente. Puede que tengas que recurrir al shell directamente, pero eso es parte de la potencia de Gambas y Linux. Necesitarás mirar la documentación de tu impresora para ver cómo enviar ciertos comandos como el corte de papel, etc. El puerto USB en Linux, al menos con las impresoras se trata como si fuera un puerto serie más, por ejemplo para acceder al primer dispositivo serie: /dev/ttyS0 y para hacerlo al USB: /dev/ttyUSB0, /dev/ttyUSB1, etc.

Realiza una búsqueda en el foro con los términos "impresora tickets" y tendrás varios resultados que pueden resultarte de utilidad.

Saludos y espero que disfrutes de Gambas y de la Comunidad.


-----------------------------------
shordi
Viernes, 27 May 2011, 11:27

Re: Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
¿Qué opinan tus usuarios de que los cambies a linux? En una empresa de ese tamaño, salvo que todo sea pirata y os interese legalizaros, el cambio de windows a Linux puede ser muy traumático para los usuarios. Si la única motivación es, cito: "Quiero mejorar el aspecto de las aplicaciones, el rendimiento y ampliar las posibilidades futuras...", es decir, es una iniciativa tuya (del informático de la empresa, ese pobre infeliz...) yo me lo pensaría muy bien antes de iniciar el proceso. 

Busca el apoyo incondicional de los jefes, que si no, te veo metido en problemas.

Suerte.


-----------------------------------
ociokart
Viernes, 27 May 2011, 19:10

Re: Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
Gracias por la respuesta a todos, no me la esperaba tan pronto, me alero  :mryellow: 

[b]jguardon[/b], gracias por tus consejos, ya miaré documetación. Ya sé los comandos, lo tengo programado en vb, lo único su implementación en Gambas. Probaré si es mejor accediendo al dispositivo por shell o con gambas.

[b]shordi[/b], gracias por tu interés, pero tranquilo, la empresa es pequeña (es de mi padre) de no más de 7 u 8 empleados, y yo soy el responsable informático, además de hacer otras muchas funciones  :razz:  Tenemos múltiples ordenadores porque hacen falta varios de cara al público, servidor, telemetría, tpv, trabajos en vinilo, oficina, etc...
No tengo ningún software pirata (que yo recuerde  :roll: )... los servidores son linux y el resto de equipos están con el sistema operativo 'de serie'... windows... el resto del software es propio.

Lo dicho, gracias y espero ayudaros en la medida de lo qe pueda...
Saludos


-----------------------------------
shordi
Sabado, 28 May 2011, 18:10

Re: Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
Deduzco, pues, que tú eres tu propio usuario. En tal caso vas a disfrutar.

Suerte.


-----------------------------------
tururu
Domingo, 29 May 2011, 23:25

Re: Nuevo En Gambas -- Impresión Directa Por USB
-----------------------------------
conecta la impresora al usb
vete al directorio/dev
y mira que te sale nuevo, conectado

haz un lsusb, también sirve

seguramente tendrás un /dev/ttyUSB0

es el habitual de las impresoras de tickets

desde la consola, dale caña con un fichero de texto 

ejemplo

ls > /dev/ttyUSB0

y... et voilá, impresora funcionando

para imprimir desde gambas, solamente debes hacer ...
SHELL "cat" & " " & "/home/pepe/temporal.lst" & " > " & "/dev/ttyUSB0" WAIT
 
donde temporal.lst es el fichero a imprimir (de texto), cuidado con el numero de caracteres por linea de la impresora.


SHELL "echo" & " " & Chr$(27) & "i" & " > " & "/dev/ttyUSB0" WAIT  (cortar papel)

SHELL "echo" & " " & Chr$(27) & chr$(112) & chr$(48) & chr$(50) & chr$(250) & " > " & "/dev/ttyUSB0" WAIT (abrir cajon)

empieza por esto, hay formas de imprimir desde el driver de la impresora, pero es mas complicado (hay un ejemplo en gambas, echale un vistazo)

un saludo


