通过参数格式化 SSRS 数字
SSRS Number Formating through Parameter
我正在使用 SSRS 报告,其中许多报告都显示了一些数字,通常大于 1000,并且通常带有小数。例如,我可以轻松地将这些数字格式化为表示为 1.000,00,但我的问题是我的一些用户希望将千位分隔符视为逗号,将一些分隔符视为点(反之亦然,对于小数点分隔符)。我可能可以将自定义数字格式作为参数传递给报告,但随后我必须将其应用于报告中的每个数字。对此有 easier/better 解决方案吗?
总而言之,我希望我的一些用户将数字 1000 视为 1.000,00,而其他用户则根据我将传递给报告的参数(假设为@NumberFormatingStyle)将其视为 1,000.00,该参数以某种方式应用于报告上的所有数字,而无需将其明确设置为每个数字字段。
您应该将其应用到您希望格式为动态的每个文本框的格式 属性。
首先您需要做的是创建参数@NumberFormatingStyle。
手动添加值。
Value = 1, Label = Comma
Value = 2, Label = Dot/Point
然后将类似这样的表达式放入格式 属性。(只需更改引号之间的值,使用您要应用的适当格式)
=SWITCH(Parameters!NumberFormattingStyle.Value = 1,"#,0.00;(#,0.00)","#.0.00;(#.0.00)")
我找到了解决这个问题的简单方法。
我将报告的语言设置为我的@Culture 参数(具有 "en-US" 等值,传递给报告)。
之后,我只需要将 "Use regional formating" 设置为我的数字占位符,它就会以我想要的方式格式化数字(这是通过传递的 @Culture 参数调节的,我无论如何都会使用它)。
这样我就不必手动格式化每个数字了。
我正在使用 SSRS 报告,其中许多报告都显示了一些数字,通常大于 1000,并且通常带有小数。例如,我可以轻松地将这些数字格式化为表示为 1.000,00,但我的问题是我的一些用户希望将千位分隔符视为逗号,将一些分隔符视为点(反之亦然,对于小数点分隔符)。我可能可以将自定义数字格式作为参数传递给报告,但随后我必须将其应用于报告中的每个数字。对此有 easier/better 解决方案吗?
总而言之,我希望我的一些用户将数字 1000 视为 1.000,00,而其他用户则根据我将传递给报告的参数(假设为@NumberFormatingStyle)将其视为 1,000.00,该参数以某种方式应用于报告上的所有数字,而无需将其明确设置为每个数字字段。
您应该将其应用到您希望格式为动态的每个文本框的格式 属性。
首先您需要做的是创建参数@NumberFormatingStyle。
手动添加值。
Value = 1, Label = Comma
Value = 2, Label = Dot/Point
然后将类似这样的表达式放入格式 属性。(只需更改引号之间的值,使用您要应用的适当格式)
=SWITCH(Parameters!NumberFormattingStyle.Value = 1,"#,0.00;(#,0.00)","#.0.00;(#.0.00)")
我找到了解决这个问题的简单方法。 我将报告的语言设置为我的@Culture 参数(具有 "en-US" 等值,传递给报告)。 之后,我只需要将 "Use regional formating" 设置为我的数字占位符,它就会以我想要的方式格式化数字(这是通过传递的 @Culture 参数调节的,我无论如何都会使用它)。 这样我就不必手动格式化每个数字了。