Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-05-2005
Jorge Taveras Jorge Taveras is offline
Miembro
 
Registrado: abr 2004
Ubicación: Santo Domingo
Posts: 68
Poder: 21
Jorge Taveras Va por buen camino
Talking Impresora punto matriz, como alinear los valores tipo dinero ?

Buenas tengan amigos foristas.
Tengo una impresora star sp 512 y hasta ahora todo ha ido bien.
Es un punto de venta que imprime una factura de compra. El problema me surge cuando intento alinear los valores tipo dinero. Me explico

leche de vaca 100.00
jamon cosido 900.00
lampara 1,100.00
---------------
total 2.100.00

Imprimo directamente a impresora. Al intentar formatear de la siguiente forma
no me corrige el alineamiento:
formatfloat(' ##,##0.00',Adodataset0.fieldbyname'Precioventa').value)

el format float solo me funciona si coloco ceros en lugar de numeros
formatfloat(' 00,000.00',Adodataset0.fieldbyname'Precioventa').value) , pero los resultados son muy feos además de que traen confusión.


leche de vaca 00,100.00
jamon cosido 00,900.00
lampara 01,100.00
---------------
total 02.100.00

He visto estas facturas muy bien cuadradas. Estoy seguro que es falta de conocimiento personal... Trabajo en una linea de 40 caracteres. Espero me puedan ayudar, con la gracias de primera mano, jorge
Responder Con Cita
  #2  
Antiguo 17-05-2005
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
ok si trabajas en una linea de 40 caracteres me imagino que debes tener un limite para la descripcion, supongamos 25, lo que tienes que hacer en este caso es que antes de imprimir la variable la lleves al numero maximo de caracteres rellenandolo con espacios en blanco ( ' ' ).

Espero que te funcione cualquier duda pregunta
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #3  
Antiguo 19-05-2005
lroblesco lroblesco is offline
Miembro
 
Registrado: ene 2005
Ubicación: Baja California Sur, Mexico
Posts: 77
Poder: 20
lroblesco Va por buen camino
cuadrar

yo he impreso en una star sp200 de 42 caracteres, lo que hago como dice el compañero eduardocol, es que te hagas una funcion para aumentar o recortar la cadena de caracteres de la descripcion.

Código:
    function rellena(var S:string;n:byte):string;  
     var
      long,i:byte;
      begin
      long:=length(s);
      for i:=1 to n-long do
          s:=s+' ';
      rellena:=s;
  end;
Código:
  //una llamada de un 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;
Esta funcion lo que hace es recibe una cadena de hasta 255 caracteres y un numero entero(n), este el que indicara la longitud que deba tener, en este caso la descripcion, yo utilizo 25 caracteres para la descipcion.

Espero te sirva
__________________
No siempre el mas veloz es el que gana la carrera

Última edición por lroblesco fecha: 19-05-2005 a las 01:10:04. Razón: editar
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 21:05:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi