<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    El 26/04/2011 09:52 a.m., Ismael L. Donis García escribió:
    <blockquote cite="mid:6CEC45DE8CA14792B8BC19F1B4B1EAAB@virpc05"
      type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      <meta name="GENERATOR" content="MSHTML 8.00.6001.18975">
      <style></style>
      <div><font face="Arial">Como podría formatear un campo numérico
          para cuando tenga valor 0 me salga -, ósea un signo de menos.</font></div>
      <div> </div>
      <div><font face="Arial">Ejemplo:</font></div>
      <div> </div>
      <div><font face="Arial">Num       Fecha        Valor CUC     Valor
          CUP</font></div>
      <div><font face="Arial">===       =======    =========    ========</font></div>
      <div><font face="Arial">1           1/4/2011                  
          -              120.59 </font></div>
      <div><font face="Arial">2           1/4/2011            
          10.85                    -  </font></div>
      <div> </div>
      <br>
    </blockquote>
    Hola Ismael..<br>
    te puedes definir una función propia, por ejemplo llamada FORMATO<br>
    <br>
    en el reporte, pones donde va el valor, en vez de [qry."CAMPO"]<br>
    esto:<br>
    [FORMATO([qry."CAMPO"])]<br>
    <br>
    ¿dónde la defines? en el evento OnUserFunction del componente
    frreport.<br>
    Acá te pego un ejemplo que uso (obtengo segundos de la consulta, 
    que quiero mostrarlos con el formato d hh:mm:ss<br>
    <br>
    <br>
    procedure THorasOperario.rptInformeUserFunction(const AName: String;
    p1, p2,<br>
      p3: Variant; var Val: Variant);<br>
    var<br>
      Secs: integer;<br>
    begin<br>
      if AName='SEG2TIME' then begin<br>
        Secs := frParser.Calc(P1);<br>
    <br>
        Val :=  format('%dd ',[Secs div SecsPerDay]);<br>
        Secs := Secs mod SecsPerDay;<br>
        Val := Val + format('%.2d:', [Secs div 3600]);<br>
        Secs := Secs mod 3600;<br>
        Val := Val + format('%.2d:',[Secs div 60]);<br>
        Secs := Secs mod 60;<br>
        Val := Val + format('%.2d',[Secs]);<br>
      end;<br>
    end;        <br>
    <br>
    Espero te sirva!<br>
    chauuuuuuu<br>
    <br>
  </body>
</html>