[Lazarus-es] Formatos númericos en Lazreport
Paola Bruccoleri
pbruccoleri en adinet.com.uy
Mar Abr 26 16:07:44 CEST 2011
El 26/04/2011 09:52 a.m., Ismael L. Donis García escribió:
> Como podría formatear un campo numérico para cuando tenga valor 0 me
> salga -, ósea un signo de menos.
> Ejemplo:
> Num Fecha Valor CUC Valor CUP
> === ======= ========= ========
> 1 1/4/2011 - 120.59
> 2 1/4/2011 10.85 -
>
Hola Ismael..
te puedes definir una función propia, por ejemplo llamada FORMATO
en el reporte, pones donde va el valor, en vez de [qry."CAMPO"]
esto:
[FORMATO([qry."CAMPO"])]
¿dónde la defines? en el evento OnUserFunction del componente frreport.
Acá te pego un ejemplo que uso (obtengo segundos de la consulta, que
quiero mostrarlos con el formato d hh:mm:ss
procedure THorasOperario.rptInformeUserFunction(const AName: String; p1, p2,
p3: Variant; var Val: Variant);
var
Secs: integer;
begin
if AName='SEG2TIME' then begin
Secs := frParser.Calc(P1);
Val := format('%dd ',[Secs div SecsPerDay]);
Secs := Secs mod SecsPerDay;
Val := Val + format('%.2d:', [Secs div 3600]);
Secs := Secs mod 3600;
Val := Val + format('%.2d:',[Secs div 60]);
Secs := Secs mod 60;
Val := Val + format('%.2d',[Secs]);
end;
end;
Espero te sirva!
chauuuuuuu
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20110426/2e048389/attachment-0002.html>
More information about the Lazarus-es
mailing list