Foros del Web » Programación para mayores de 30 ;) » Java »

Imprimir ticket en JAVA

Estas en el tema de Imprimir ticket en JAVA en el foro de Java en Foros del Web. Hola a todos/as! Estoy haciendo un pequeño programa sobre el funcionamiento de una libreria en Java, por ir aprendiendo este lenguaje (es el primer programa ...
  #1 (permalink)  
Antiguo 07/12/2004, 12:28
 
Fecha de Ingreso: diciembre-2004
Mensajes: 4
Antigüedad: 19 años, 4 meses
Puntos: 0
Pregunta Imprimir ticket en JAVA

Hola a todos/as! Estoy haciendo un pequeño programa sobre el funcionamiento de una libreria en Java, por ir aprendiendo este lenguaje (es el primer programa en Java que hago o intento, jejeje!) y necesito saber como se puede imprimir un ticket para mostrar los datos seleccionados(Weno, todo el mundo sabrá lo que es un ticket y lo que suele mostrar!!)
Aaah! se me olvidaba, para esto tengo que utilizar el Java Print Service ... en que consiste esto??

Muchas gracias de antemano, y espero que alguien me pueda ayudar!!

Ciao.

Última edición por kokoboss; 08/12/2004 a las 04:42 Razón: falta de información
  #2 (permalink)  
Antiguo 30/04/2010, 10:58
 
Fecha de Ingreso: abril-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Sonrisa Respuesta: Imprimir ticket en JAVA

espero q el codigo les ayude en algo jajaj
bueno como dije termine de mejarlo intente subir el codigo pero
sobrepasa el limite de caracteres permitidos jajaja
ya lo subi en otra pagina ok suerte

Última edición por JuanCollantes666; 18/06/2010 a las 15:30 Razón: mejora del codigo publicado
  #3 (permalink)  
Antiguo 30/04/2010, 14:54
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Imprimir ticket en JAVA

@JuanCollantes666
No es por ser mala onda.. pero creo que este post es de hace casi 6 años.
  #4 (permalink)  
Antiguo 03/05/2010, 13:28
 
Fecha de Ingreso: abril-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Tines razon es de hace 6 años pero igual dejo mi respuesta no crees que le pueda ayudar a alguien mas y hablando de ayudas jaja ya perfecciones ese codigo ahora se el resultado de la impresion se ve mucho mejor todo perfectamente cuadrado
  #5 (permalink)  
Antiguo 18/06/2010, 15:28
 
Fecha de Ingreso: abril-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Respuesta: Imprimir ticket en JAVA

ojala les ayude en algo el codigo suerte
  #6 (permalink)  
Antiguo 21/06/2010, 12:59
 
Fecha de Ingreso: enero-2005
Mensajes: 15
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Ahhh a mi me sirve, yo estoy haciendo mi primer programa en java ¿pero el codigo donde esta?

Abrazo y adelanto las gracias
  #7 (permalink)  
Antiguo 12/08/2010, 01:47
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Cita:
Iniciado por JuanCollantes666 Ver Mensaje
espero q el codigo les ayude en algo jajaj
bueno como dije termine de mejarlo intente subir el codigo pero
sobrepasa el limite de caracteres permitidos jajaja
ya lo subi en otra pagina ok suerte
a mi me sirve, ¿donde esta el codigo?
  #8 (permalink)  
Antiguo 18/09/2010, 13:14
 
Fecha de Ingreso: marzo-2009
Ubicación: El Grulo, Jal.
Mensajes: 1
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Imprimir ticket en JAVA

quisiera ver el codigo, ¿donde lo puedo encontrar?
  #9 (permalink)  
Antiguo 08/02/2011, 23:20
Avatar de CapacProg  
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años
Puntos: 71
Respuesta: Imprimir ticket en JAVA

yo también kiero ver ese código
  #10 (permalink)  
Antiguo 11/02/2012, 15:56
 
Fecha de Ingreso: febrero-2012
Mensajes: 3
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Imprimir ticket en JAVA

como puedo hacer para ver el codigo?
  #11 (permalink)  
Antiguo 12/04/2013, 14:30
 
Fecha de Ingreso: abril-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Respuesta: Imprimir ticket en JAVA

AMIGOS NUEBAMENTE LES PONGO EL CODIGO DE IMPRESION JAVA SON 3 CLASES
PRIMERA CLASE

package JCollantesImprimir;
import java.io.FileWriter;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Ticket{
public Ticket(){}
static ArrayList<String> CabezaLineas=new ArrayList<String>();
static ArrayList<String> subCabezaLineas=new ArrayList<String>();
static ArrayList<String> items=new ArrayList<String>();
static ArrayList<String> totales=new ArrayList<String>();
static ArrayList<String> LineasPie=new ArrayList<String>();
public static void AddCabecera(String line){CabezaLineas.add(line);}
public static void AddSubCabecera(String line){subCabezaLineas.add(line);}
public static void AddItem(String cantidad,String item,String price,String total){
OrderItem newItem = new OrderItem(' ');
items.add(newItem.GeneraItem(cantidad,item,price,t otal));
}
public static void AddTotal(String name,String price){
OrderTotal newTotal = new OrderTotal(' ');
totales.add(newTotal.GeneraTotal(name, price));
}
public static void AddPieLinea(String line){LineasPie.add(line);}
public static String DibujarLinea(int valor){
String raya="";
for(int x=0;x<valor;x++){raya+="-";}
return raya;
}
public static String DarEspacio(){return "\n";}
public static void SetFormato(FileWriter pw,int formato){
try{
char[] ESC_CUT_PAPER = new char[] { 0x1B, '!',(char)formato};
pw.write(ESC_CUT_PAPER);
}catch(Exception e){
System.out.print(e);
}
}
public static void ImprimirDocumento(String impresora,boolean abrir){
try{
//FileWriter imp = new FileWriter("LPT1");
FileWriter imp = new FileWriter(impresora);
char[] Caracter = new char[] { 0x1B, 'R',18};
imp.write(Caracter);
for(int cabecera=0;cabecera<CabezaLineas.size();cabecera++ ){
imp.write(CabezaLineas.get(cabecera));
}
for(int subcabecera=0;subcabecera<subCabezaLineas.size();s ubcabecera++){
imp.write(subCabezaLineas.get(subcabecera));
}
for(int ITEM=0;ITEM<items.size();ITEM++){
imp.write(items.get(ITEM));
}
for(int total=0;total<totales.size();total++){
imp.write(totales.get(total));
}
for(int pie=0;pie<LineasPie.size();pie++){
imp.write(LineasPie.get(pie));
}
for(int u=0;u<=10;u++){imp.write("\n");}
//corta el papel
char[] CORTAR_PAPEL=new char[]{0x1B,'m'};
imp.write(CORTAR_PAPEL);
if(abrir){
char ABRIR_GAVETA[]={(char)27,(char)112,(char)0,(char)10,(char)100};
imp.write(ABRIR_GAVETA);
}
imp.close();
//limpio las listas que contiene los datos
CabezaLineas.removeAll(CabezaLineas);
subCabezaLineas.removeAll(subCabezaLineas);
items.removeAll(items);
totales.removeAll(totales);
LineasPie.removeAll(LineasPie);
}catch(Exception e){
JOptionPane.showMessageDialog(null,"Error al Imprimir:\n"+e.getMessage());
CabezaLineas.removeAll(CabezaLineas);
subCabezaLineas.removeAll(subCabezaLineas);
items.removeAll(items);
totales.removeAll(totales);
LineasPie.removeAll(LineasPie);
}
}
public static void ImprimirDocumento(String impresora,boolean abrir,
boolean formatoCabecera,int formato){
try{
//FileWriter imp = new FileWriter("LPT1");
FileWriter imp = new FileWriter(impresora);
for(int cabecera=0;cabecera<CabezaLineas.size();cabecera++ ){
SetFormato(imp,27);
imp.write(CabezaLineas.get(cabecera));
}
for(int subcabecera=0;subcabecera<subCabezaLineas.size();s ubcabecera++){
imp.write(subCabezaLineas.get(subcabecera));
}
for(int ITEM=0;ITEM<items.size();ITEM++){
imp.write(items.get(ITEM));
}
for(int total=0;total<totales.size();total++){
imp.write(totales.get(total));
}
for(int pie=0;pie<LineasPie.size();pie++){
imp.write(LineasPie.get(pie));
}
for(int u=0;u<=10;u++){imp.write("\n");}
//corta el papel
char[] CORTAR_PAPEL=new char[]{0x1B,'m'};
imp.write(CORTAR_PAPEL);
if(abrir){
char ABRIR_GAVETA[]={(char)27,(char)112,(char)0,(char)10,(char)100};
imp.write(ABRIR_GAVETA);
}
imp.close();
//limpio las listas que contiene los datos
CabezaLineas.removeAll(CabezaLineas);
subCabezaLineas.removeAll(subCabezaLineas);
items.removeAll(items);
totales.removeAll(totales);
LineasPie.removeAll(LineasPie);
}catch(Exception e){
JOptionPane.showMessageDialog(null,"Error al Imprimir:\n"+e.getMessage());
CabezaLineas.removeAll(CabezaLineas);
subCabezaLineas.removeAll(subCabezaLineas);
items.removeAll(items);
totales.removeAll(totales);
LineasPie.removeAll(LineasPie);
}
}
public static void main(String[] args){}
}


SEGUNDA CLASE

package JCollantesImprimir;
public class OrderItem{
char[] temp=new char[]{ ' ' };
public OrderItem(char delimit){temp=new char[]{delimit };}
public String GetItemCantidad(String orderItem){
String[] delimitado=orderItem.split(""+temp);
return delimitado[0];
}
public String GetItemNombre(String orderItem){
String[] delimitado=orderItem.split(""+temp);
return delimitado[1];
}
public String GetItemPrecio(String orderItem){
String[] delimitado=orderItem.split(""+temp);
return delimitado[2];
}
public String GetItemTotal(String orderItem){
String[] delimitado=orderItem.split(""+temp);
return delimitado[3];
}
public String GeneraItem(String cantidad, String nombre, String precio,String total){
return cantidad+temp[0]+nombre+temp[0]+precio+temp[0]+total;
}
}

TERCERA CLASE

package JCollantesImprimir;
public class OrderTotal{
char[] temp=new char[] { ' ' };
public OrderTotal(char delimit){temp=new char[]{delimit};}
public String GetTotalNombre(String totalItem){
String[] delimitado=totalItem.split(""+temp);
return delimitado[0];
}
public String GetTotalCantidad(String totalItem){
String[] delimitado=totalItem.split(""+temp);
return delimitado[1];
}
public String GeneraTotal(String Nombre, String precio){
return Nombre+temp[0]+temp[0]+temp[0]+temp[0]+precio;
}
}
LUEGO DE ESTO SOLO TIENE Q CREAR UNA INSTANCIA DE LA PRIMERA CLASE
Ticket ticket=new Ticket();
el codigo esta sencillo para q lo aprendan y entiendad para q es cada metodo de la clase Ticket
  #12 (permalink)  
Antiguo 12/04/2013, 14:32
 
Fecha de Ingreso: abril-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Estas clases las tengo en un mismo packete como pueden ver solo creen un .jar agrengelo a su proyecto y listo.....
  #13 (permalink)  
Antiguo 04/05/2015, 16:26
 
Fecha de Ingreso: abril-2015
Mensajes: 2
Antigüedad: 9 años
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Cita:
Iniciado por JuanCollantes666 Ver Mensaje
Estas clases las tengo en un mismo packete como pueden ver solo creen un .jar agrengelo a su proyecto y listo.....


Una pregunta luego de tenerlo en .jar y instanciarla como hago para implementarla soy nuevo en el tema de la programacion
  #14 (permalink)  
Antiguo 05/05/2015, 14:05
 
Fecha de Ingreso: diciembre-2014
Ubicación: Lima
Mensajes: 68
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Imprimir ticket en JAVA

Cita:
Iniciado por skatejava Ver Mensaje
Una pregunta luego de tenerlo en .jar y instanciarla como hago para implementarla soy nuevo en el tema de la programacion
Tampoco me ha salido, me abre el one note pero no muestra nada, probe cambiando a principal la impresora y tampoco sale, no tengo una ticketera sino una epson grande...dejo el codigo de la clase main que use para ver si imprime, quizas alguen se apiade y nos diga cual es el error.

Código Java:
Ver original
  1. package jCollantesImprimir;
  2.  
  3. import java.text.SimpleDateFormat;
  4. import java.util.*;
  5.  
  6. public class Main {
  7.     public static void main(String[] args) {
  8.         Date date = new Date();
  9.         SimpleDateFormat fecha = new SimpleDateFormat("dd/MM/yyyy");
  10.         SimpleDateFormat hora = new SimpleDateFormat("hh:mm:ss aa");
  11.         Ticket ticket = new Ticket();
  12.         ticket.AddCabecera("RESTAURANTE XXXX");
  13.         ticket.AddCabecera(ticket.DarEspacio());
  14.         ticket.AddCabecera("EXPEDIDO EN: ----------");
  15.         ticket.AddCabecera(ticket.DarEspacio());
  16.         ticket.AddCabecera("AV. TAMAULIPAS NO. 5 LOC. 101");
  17.         ticket.AddCabecera(ticket.DarEspacio());
  18.         ticket.AddCabecera(ticket.DibujarLinea(29));
  19.         ticket.AddCabecera(ticket.DarEspacio());
  20.         ticket.AddCabecera("LIMA, XXXXXXXXXXXX");
  21.         ticket.AddCabecera(ticket.DarEspacio());
  22.         ticket.AddCabecera("RFC: CSI-020226-MV4");
  23.         ticket.AddCabecera(ticket.DarEspacio());
  24.         ticket.AddSubCabecera(ticket.DarEspacio());
  25.         ticket.AddSubCabecera("Caja # 1 - Ticket # 1");
  26.         ticket.AddSubCabecera(ticket.DarEspacio());
  27.         ticket.AddSubCabecera("LE ATENDIO: JUAN");
  28.         ticket.AddSubCabecera(ticket.DarEspacio());
  29.         ticket.AddSubCabecera("" + fecha.format(date) + " " + hora.format(date));
  30.         ticket.AddSubCabecera(ticket.DarEspacio());
  31.         ticket.AddSubCabecera(ticket.DibujarLinea(29));
  32.         ticket.AddSubCabecera(ticket.DarEspacio());
  33.         ticket.AddItem("1", "Articulo Prueba", "15.00", "");
  34.         ticket.AddItem("", "", ticket.DarEspacio(), "");
  35.         ticket.AddItem("2", "Articulo Prueba", "25.00", "");
  36.         ticket.AddItem("", "", ticket.DarEspacio(), "");
  37.         ticket.AddTotal("", ticket.DibujarLinea(29));
  38.         ticket.AddTotal("", ticket.DarEspacio());
  39.         ticket.AddTotal("SUBTOTAL", "29.75");
  40.         ticket.AddTotal("", ticket.DarEspacio());
  41.         ticket.AddTotal("IVA", "5.25");
  42.         ticket.AddTotal("", ticket.DarEspacio());
  43.         ticket.AddTotal("TOTAL", "35.00");
  44.         ticket.AddTotal("", ticket.DarEspacio());
  45.         ticket.AddTotal("", ticket.DarEspacio());
  46.         ticket.AddTotal("RECIBIDO", "50.00");
  47.         ticket.AddTotal("", ticket.DarEspacio());
  48.         ticket.AddTotal("CAMBIO", "15.00");
  49.         ticket.AddTotal("", ticket.DarEspacio());
  50.         ticket.AddTotal("", ticket.DarEspacio());
  51.         ticket.AddPieLinea(ticket.DibujarLinea(29));
  52.         ticket.AddPieLinea(ticket.DarEspacio());
  53.         ticket.AddPieLinea("EL xxx ES NUESTRA PASION...");
  54.         ticket.AddPieLinea(ticket.DarEspacio());
  55.         ticket.AddPieLinea("VIVE LA EXPERIENCIA EN xxx");
  56.         ticket.AddPieLinea(ticket.DarEspacio());
  57.         ticket.AddPieLinea("Gracias por su visita");
  58.         ticket.AddPieLinea(ticket.DarEspacio());
  59.         ticket.ImprimirDocumento("LTP1", true);
  60.     }
  61.  
  62. }
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 17:02.