entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

Código javascript para imprimir a impresora fiscal

Me están pidiendo que realice un sistema utilizando laravel 5 con mysql para venta de boletos de conciertos, y uno de los requerimientos funcionales de la aplicación es que se pueda imprimir ticket a una impresora fiscal desde el mismo navegador web sin que la persona tenga que imprimir desde la opción nativa de navegador (donde se imprimen las paginas web).

estoy trabajando sin contratiempos. Pero la verdad no se por donde empezar en este tema y quisiera saber si alguien a tenido experiencia con esto.

No me conviene imprimir desde el php por que esta del lado del servido y yo quisiera que se la impresora este conectada en algun pc cliente.

3votos

1raziel1 comentado

creo que esto es justo lo que no quieres pero no lo se seguro XD

<script>
function myFunction() {
    window.print();
}
</script>

3votos

carlossevi comentado

2votos

Leonardo-Tadei comentado

Una impresora fiscal de qué país? Qué marca y modelo?

1voto

careinamo comentado

Gracias a todos por las respuesta. me avisaron que las impresoras fiscales con las que cuentan son Epson tmu-220 y bixolom en Venezuela. En teoria el desarrollo aspira ser para todas las impresora similares. solo en teoria

2 Respuestas

4votos

Leonardo-Tadei Puntos227020

Hola @careinamo,

si las impresoras fiscales Epson TMU son similares a las de Argentina, en que la conexión con la PC es vía el puerto serie, no hay manera de hacer esto en JavaScript.

Me explico: esas impresoras se conectan a un puerto serie y no aparecen como una impresora en el sistema, sino que se interactua con ellas a través de "comandos fiscales", que están implementados por un protocolo de texto para establecer un diálogo con el equipo por el puerto serie (es decir, son dispositivos de entrada/salida).

JavaScript funcionando adentro del navegador, que es tu escenario de trabajo, no tiene ni puede tener acceso directo a los puertos serie (ni a ninguna parte del hardware) por cuestiones de seguridad, ya que de poder hacerlo, un sitio web malicioso podría tener acceso directo al hardware.

En resumen, la impresora fiscal tiene que estar conectada físicamente a la computadora que imprime, y la impresión tiene que estar manejada por un entorno que pueda acceder al hardware... a esto le tenés que sumar que es la impresora fiscal la que te da el número de comprobante emitido (entre otras cosas) y tu aplicación tiene que poder recibirlo para guardarlo.

Saludos cordiales

3votos

Javi2EE Puntos6630

Como ha dicho Leonardo con javascript nunca vas a poder hacer eso, la única forma que conozco es mediante los applet de Java, aunque son de otra epoca y están casi en desuso para sitios web de carácter público, los applet aun son útiles y funcionales cuando se requieren este tipo de cosas en entornos empresariales cloud cerrados. Eso si, es necesario que el usuario acepte dicho applet ya que el navegador le avisa cuando una pagina web va a usar uno.
Si te decides a hacerlo aqui te dejo un buen sitio por donde empezar
applet para impresión silenciosa en el navegador

Saludos

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta