【问题标题】:Number to String in a formula field公式字段中的数字到字符串
【发布时间】:2010-10-26 13:31:28
【问题描述】:

我正在使用公式字段来连接用破折号分隔的 2 个十进制值。但是,我希望结果为两个值修剪所有不必要的尾随零和小数点。

例如,我希望值 10 和 8.5 为“10 - 8.5”。现在它显示“10.00 - 8.50”。

我使用的公式是CSTR({field1}) + " - " + CSTR({field2}).

【问题讨论】:

    标签: crystal-reports data-conversion


    【解决方案1】:

    我相信这就是您要找的:

    Convert Decimal Numbers to Text showing only the non-zero decimals

    尤其是这一行可能会有所帮助:

    StringVar text     :=  Totext ( {Your.NumberField} , 6 , ""  )  ;
    

    第一个参数是要转换的小数,第二个参数是小数位数,第三个参数是千/百万等分隔符。

    【讨论】:

      【解决方案2】:
      CSTR({number_field}, 0, '')
      

      第二个占位符用于小数。

      最后一个占位符是千位分隔符。

      【讨论】:

        【解决方案3】:

        我为此写了一个简单的函数:

        Function (stringVar param)
        (
            Local stringVar oneChar := '0';
            Local numberVar strLen := Length(param);
            Local numberVar index := strLen;
        
            oneChar = param[strLen];
        
            while index > 0 and oneChar = '0' do
            (
                oneChar := param[index];
                index := index - 1;
            );
        
            Left(param , index + 1);
        )
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-05-08
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多