Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Crystal reports Crystal Reports--在我的公式字段中显示一个小数点_Crystal Reports - Fatal编程技术网

Crystal reports Crystal Reports--在我的公式字段中显示一个小数点

Crystal reports Crystal Reports--在我的公式字段中显示一个小数点,crystal-reports,Crystal Reports,我的公式字段中有以下内容: toText(((Sum ({DataTable1.Ending_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Investments}, {DataTable1.Name})) + (Sum ({DataTable1.Proceeds}, {DataTable1.Name})) + (Sum ({Data

我的公式字段中有以下内容:

toText(((Sum ({DataTable1.Ending_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Investments}, {DataTable1.Name})) + (Sum ({DataTable1.Proceeds}, {DataTable1.Name})) + (Sum ({DataTable1.Interest_and_Dividends}, {DataTable1.Name})))/(Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) * 100)  + " %"
产量约为:6.32%

小数点后不是2个数字,而是只有1个数字?我尝试了以下方法,但没有成功:

toText(((Sum ({DataTable1.Ending_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Investments}, {DataTable1.Name})) + (Sum ({DataTable1.Proceeds}, {DataTable1.Name})) + (Sum ({DataTable1.Interest_and_Dividends}, {DataTable1.Name})))/((Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) * 100),1)  + " %"
b/c输出始终显示所有内容的0.0%

接下来我尝试了这个:

(toText(((Sum ({DataTable1.Ending_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) - (Sum ({DataTable1.Investments}, {DataTable1.Name})) + (Sum ({DataTable1.Proceeds}, {DataTable1.Name})) + (Sum ({DataTable1.Interest_and_Dividends}, {DataTable1.Name})))/(Sum ({DataTable1.Starting_Value}, {DataTable1.Name})) * 100)  + " %"),1)
那也不走运


有人有什么想法吗?

当右键单击字段并选择“格式化对象”时,您是否尝试过使用数字格式选项?这比让ToText()做你想做的事情要容易得多

编辑:如果要使用ToText(),请尝试使用格式字符串而不是1作为第二个参数-我认为这样做可以:

ToText(sum(...) + sum(...), "0.0")

您是否尝试过使用右键单击字段并选择“格式化对象”时获得的数字格式选项?这比让ToText()做你想做的事情要容易得多

编辑:如果要使用ToText(),请尝试使用格式字符串而不是1作为第二个参数-我认为这样做可以:

ToText(sum(...) + sum(...), "0.0")

我喜欢Ray的解决方案,但对于完整性,也有;如果您还需要货币符号,那么这显然是错误的选择:

  • 右键单击数字字段并选择“格式”
  • 转到“数字”选项卡,然后单击“自定义”
  • 单击“货币符号”选项卡
  • 单击启用货币符号
  • 将货币符号更改为“%”
  • 将位置组合框更改为“-123%”
  • 单击确定,确定退出并保存

  • 我喜欢Ray的解决方案,但对于完整性,也有;如果您还需要货币符号,那么这显然是错误的选择:

  • 右键单击数字字段并选择“格式”
  • 转到“数字”选项卡,然后单击“自定义”
  • 单击“货币符号”选项卡
  • 单击启用货币符号
  • 将货币符号更改为“%”
  • 将位置组合框更改为“-123%”
  • 单击确定,确定退出并保存
  • 试试这个:

  • 右键单击数字字段
  • 单击“自定义”按钮
  • 右键单击“十进制公式”字段中的以下公式

    1 or if <yourfieldname>="condition" then 1 else 2
    
    1或if=“condition”则1其他2
    
  • 确保舍入小数字段为0.1或您的选择

  • 试试这个:

  • 右键单击数字字段
  • 单击“自定义”按钮
  • 右键单击“十进制公式”字段中的以下公式

    1 or if <yourfieldname>="condition" then 1 else 2
    
    1或if=“condition”则1其他2
    
  • 确保舍入小数字段为0.1或您的选择