【问题标题】:Report Viewer - Setting the decimal places for a textbox value报表查看器 - 设置文本框值的小数位
【发布时间】:2011-01-13 19:50:19
【问题描述】:

我正在使用报告查看器控件 (rdlc) 来生成报告。我的一列具有价值

=AVG(Fields!Reading.Value, "CellReading_Reading")

我得到的值有 10 位或更多小数位。但我想将其四舍五入到小数点后 3 位。这样做的表达方式是什么?

谢谢。 NLV

【问题讨论】:

    标签: reportviewer rdlc


    【解决方案1】:
    FormatNumber(AVG(Fields!Reading.Value, "CellReading_Reading"),3)
    

    【讨论】:

    • 如果我想要一个字符串 5500 作为 5,500 怎么办?
    • 好吧,我找到了答案。需要在相同的 FormatNumber() 中将组位数设置为“true”。
    • Here 是我设置小数点后 3 位而不四舍五入的答案,对吗?
    • 但是,这会将数字更改为字符串
    【解决方案2】:
    1. 右键单击文本框
    2. 点击号码
    3. 从类别中选择号码
    4. Decimal Places设置为0

    【讨论】:

      【解决方案3】:

      cdonner 的回答很棒,我自己也加入了。如果您的情况像我一样稍微复杂一些,并且您想从多个数据集中连接多个字段,您可以这样做......

      =FormatNumber(Sum(Fields!Actual_Measurement.Value, "Measured_Result"), 1) & " (" & FormatNumber(First(Fields!Allowed_Min.Value, "Measured_Result_Details"), 1) &“-”& FormatNumber(First(Fields!Allowed_Max.Value, "Measured_Result_Details"), 1) &")"

      此处显示的示例是...

      15.3 (12 - 16)

      ...如果 Actual_Measurement = 15.3,Allowed_Min = 12 和 Allowed_Max = 16

      在这种情况下,“Measured_Result_Details”表中的 1 个条目与“Measured_Result”表中的 1 个或多个条目相关。右键单击该框并选择“表达式”,然后在“数据集”中查看我的两个“项目”是“Measured_Result_Details”和“Measured_Result”。这对于拥有超过 1 个数据集且每个数据集的字段将显示在 1 个文本框中的任何人都可能有用!

      【讨论】:

        【解决方案4】:

        如果您希望不四舍五入,请使用Math.Truncate

        =Math.Truncate(1000*(AVG(Fields!Reading.Value, "CellReading_Reading")))/1000
        

        参考thisthis 帖子。

        希望有所帮助。

        【讨论】:

          【解决方案5】:

          最简单的方法应该是在文本框的format 属性中输入N3

          N 代表数字,C 代表货币

          例子:

          N0 格式 123456.12123,456

          C2 格式 1234.562$1,234.56

          等等……

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-02-06
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多