Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-03-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Solo dos Decimales

Saludos al foro.

Tengo un pequeño problema con los decimales, tengo varias operaciones donde el resultado me salen mas de 8 decimales y solo quiero mostrar 2 decimales, como puedo cortar o truncar estos??

agrego un fragmento de codigo donde hago las operaciones
Código Delphi [-]
//Hago un query para hacer la suma de un monto y lo almaceno en una variable monto
     monto:=strtofloat(dbedit9.Text);
//si tiene descuento los aplico (estos son descuentos globales, Ej. 1%+2%+3%)
//Totales con descuento
desc1:=strtofloat(edit8.Text);
desc2:=strtofloat(edit10.Text);
desc3:=strtofloat(edit11.Text);
total:=strtofloat(dbedit9.text);
total1:=total*(desc1/100);
totdesc1:=total-total1;
total2:=totdesc1*(desc2/100);
totdesc2:=totdesc1-total2;
total3:=totdesc2*(desc3/100);
totdesc3:=totdesc2-total3;
subtot:=totdesc3+strtofloat(edit1.Text)+strtofloat(edit2.Text)+strtofloat(edit6.text);
subt:=strtofloat(edit1.Text)+strtofloat(edit2.Text)+strtofloat(edit6.text);
edit14.text:=floattostr(subt);
edit15.Text:=floattostr(subtot);
 
//al resultado desgloso el iva
iva:=strtofloat(edit15.Text);
resultado:=iva/1.15;
edit20.Text:=floattostr(resultado);
stc:=strtofloat(edit15.text)-strtofloat(edit20.text);
//resultado de IVA con mas de 8 decimales
edit21.Text:=floattostr(stc);

Espero que me puedan ayudar.
Responder Con Cita
  #2  
Antiguo 31-03-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Puedes usar la función

Código Delphi [-]
Format('%7.2m',[total]);

Solo un comentario, te recomiendo que nombres adecuadamente tus objetos porque puedes tener errores si te equivocas al usarlos,

Código Delphi [-]
strtofloat(edit1.Text) 
strtofloat(edit2.Text)
strtofloat(edit6.text)
//Tienes un margen de error muy alto si equivocas el objeto
strtofloat(eIVA.Text) 
strtofloat(eComision.Text)
strtofloat(eViaticos.text)

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #3  
Antiguo 31-03-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Gracias por los comentarios, solo una pequeña duda, el codigo de format quedaria de la siguiente forma en caso del edit??
Código Delphi [-]
Format('%7.2m',[editX.text]);
y el %7.2 para que sirve?? (no entendi bien para que es)

Gracias
Responder Con Cita
  #4  
Antiguo 31-03-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Que tal, he investigado un poco hacerca de los decimales, y mi codigo ha quedado asi, solo que no formatea los deciamales. ¿Alguien sabe que esta pasando?

Código Delphi [-]
subtot:=totdesc3+strtofloat(edit1.Text)+strtofloat(edit2.Text)+strtofloat(edit6.text);
subt:=strtofloat(edit1.Text)+strtofloat(edit2.Text)+strtofloat(edit6.text);
edit14.text:=floattostr(subt);
edit15.Text:=format('%0.2f',[subtot]); <<-AQUI
iva:=strtofloat(edit15.Text);
resultado:=iva/1.15;
edit20.Text:=floattostr(resultado);
stc:=strtofloat(edit15.text)-strtofloat(edit20.text);
edit21.Text:=format('%0.2f',[stc]); <<-AQUI

Saludos
Responder Con Cita
  #5  
Antiguo 05-05-2008
Wiarbumu Wiarbumu is offline
Miembro
 
Registrado: ene 2008
Posts: 15
Poder: 0
Wiarbumu Va por buen camino
Hola, no se si sea muy tarde para la respuesta, a mi me ocurría algo parecido y lo solucioné de la siguiente manera: En el editor de campos del Dataset selcciona el campo en cuestión y configura la propiedad presición que por defecto es 15 a 4 y así solo mostrará dos decimales.

Espero te sirva.
Responder Con Cita
  #6  
Antiguo 05-05-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
hola.

Gracias por responder, ya he solucionado este tema, pero es bueno que hayas respondido, quiza a alguien mas que tenga este problema le ayude!

Saludos.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como usar solo dos posiciones decimales alcides Varios 9 02-04-2007 19:31:31
Labels con numeros de solo dos decimales Jucho69 OOP 2 19-01-2007 17:32:38
permitir solo dos decimales jonmendi OOP 3 12-01-2007 16:30:35
mostrar solo dos decimales clanmilano Varios 1 15-11-2005 23:31:52
Ingresar sólo decimales en un Edit noeres Varios 10 06-12-2004 00:32:11


La franja horaria es GMT +2. Ahora son las 22:31:30.


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