FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
URGENTE!! Impresion ilegible
Hola
Saben estoy haciendo un sistema de ventas para un Restaurant en Delphi 6 + Access 2000. Manejo una impresora de tickets Star SP200 y un CashDrawer conectado a la impresora. En mi PC, la impresion de los tickets salen como yo lo programe, ademas se abre el cajon al finalizar la impresion. Todo bien Sin embargo, lleve una muestra del sistema con el cliente, y al hacer una prueba de la impresion del ticket sale muchos simbolos: puntos,comas,parentesis. Osea ilegible, salen las primeras 2 letras de cada linea y las ultimas 2. En la impresion le mando un codigo de escape para agrandar la letra al doble en los titulos y ahi me pone igualmente caracteres extraños. No utilizo driver, ya que mando la impresion directa al puerto paralelo. Lei el manual de la impresora y cheque que tiene un ROM con 8 switch y que el segundo era para aceptar los CODES CONTROL, lo active, y al probar de nuevo vi que ya salia legible,pero en cada linea impresa, salia otra en blanco y pues me gasta hasta 2 veves y medio la cantidad de papel. Devolvi la configuracion original de la impresora volvi a probar (en mi pc), y funciona tal como yo lo espero. La verdad no se que pueda ser, tal vez la PC del cliente (win98,32MB Ram,pentium 300MHZ). Este el codigo de la impresion. Código:
procedure TfrmPunto.print_Ticket; var str1,str2:string; str3:string[6]; F:Textfile; i:byte; begin AssignFile(F,'LPT1'); rewrite(F); writeln(F,#14); writeln(F,' Gran Pollo'); writeln(F,#15); writeln(F,'**Restaurantes Gran Pollo S.A. de C.V.**'); writeln(F,' R.F.C. RGP-031217-JI8'); writeln(F,' BLVD. Agustin Olachea #449'); writeln(F,' CD. Constitucion, Baja Calif. Sur'); writeln(F,' Tel. 13-2-28-88 Fax 13-2-55-28'); writeln(F,' email: granpollomx@yahoo.com.mx'); writeln(F,'******************************************'); writeln(F,' '+bar.Panels.Items[0].Text); writeln(F,' '+bar.Panels.Items[1].Text); writeln(F,'Venta No. '+inttostr(idventa)+' Hora:'+timetostr(time)); //viene el detalle writeln(F,'******************************************'); for i:=0 to lstVentas.Items.Count-1 do begin str1:=lstVentas.Items[i].SubItems.Strings[2]; rellena(str1,2); str2:=lstVentas.Items[i].SubItems.Strings[0]; rellena(str2,25); str3:=lstVentas.Items[i].SubItems.Strings[3]; writeln(F,str1+' '+str2,format('%8.2f',[strtofloat(str3)])); end; writeln(F,'******************************************'); writeln(F,#14); writeln(F,'Total: $',format('%8.2f',[strtofloat(txttotal.text)])); writeln(F,'Gracias por su compra'); writeln(F,#15); writeln(F,#10,#13); writeln(F,#10,#13); writeln(F,#10,#13); closefile(F); end; {fin print_Ticket}
__________________
No siempre el mas veloz es el que gana la carrera |
#2
|
||||
|
||||
Supongo que donde te salen 2 líneas por una, es en el detalle del Ticket, o en todo el ticket desde la primera línea?.
La impresora es la misma, con la que haces las pruebas, porque convendría saber si son 2 impresoras iguales si estan los interruptores configurados exactamente igual. Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#3
|
|||
|
|||
impresion
Primero Gracias por responder tan rapidamente.
Es desde el comienzo del ticket hasta la ultima linea. Osea, una linea impresa despues una linea en blanco. Donde lleva un titulo, por ejemplo el nombre del negocio, hago la letra mas grande y por ende la siguiente linea en blanco que sale abarca mas espacio. Con respecto a la impresora, en efecto es la misma. El problema del interlineado en el ticket lo resolvi devolviendo la configuracion original de fabrica. Lo que me ocupa en estos momentos, es que la impresion es como ya dije ilegible. Imprime las primeras 2 letras de los letreros seguido de caracteres digamosle basura y al terminar la linea los 2 ultimos caracteres correctos. Gracias de nuevo.
__________________
No siempre el mas veloz es el que gana la carrera |
#4
|
||||
|
||||
Recuerdo una vieja impresora que tuve "9 agujas", que hasta que dí con el interruptor adecuado, ya que no tenía el manual, me hacia algo similar.
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#5
|
|||
|
|||
Curioso
Gracias Marcos.
Lo curioso es que solamente en la maquina del cliente es donde pasa eso, en mi casa tengo 2 PC's, una P4 con winXP 512 MB Ramy otra que es un celeron de 400 mhz con 64MB y win98SE (que se asemeja a la maquina que posee mi cliente) e imprime correctamente con la configuracion normal de fabrica en la impresora. He llegado a pensar que tal vez sea el sistema operativo de la maquina del cliente, tal vez tenga el win98 primera edicion. Bueno acepto sus opiniones
__________________
No siempre el mas veloz es el que gana la carrera |
#6
|
||||
|
||||
Pues el caso no deja de ser curioso pues al imprimir directamente con los códigos de la impresora sin usar controlador alguno, no debiera de incidir en ello el sistema operativo.
No cabe duda que quizás un arreglo chapucero funcionaría sería no mandarle el avance de linea, si es que lo da el solo. O para curarte en salud, puedes poner en configuración un condicional, ¿Ge Generar avance de línea S/N? Si se marca no, se mandan imprimir las líneas sin más, en este caso suponemos que se generan automáticamente, al no mandarle tu avance de línea quedaría el que manda la impresora de forma misteriosa, y si por algun motivo se instala en otro PC y no se genera automáticamente pues le marcamos si, esto lo guardaríamos en una tabla el programa constultaría dicha tabla y según lo marcado generaría el avance de línea o no. Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#7
|
|||
|
|||
Ya me quedo
Bueno primeramente gracias por los consejos. Pero algo me ha dejado perplejo, hice una pequeña aplicacion para hacer una impresion.
Fui con mi cliente me traje la PC a mi casa, hice las pruebas pertinentes y como si nunca hubiera pasado nada. Todo lo imprimio perfecto. La verdad que bien para mi, pero no me agrada la idea de que las cosas se arreglen solas, ya que a si mismo pueden fallar. Pues de nuevo mil gracias Por aqui nos veremos
__________________
No siempre el mas veloz es el que gana la carrera |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|