format number in ssrs report

若如初见. 提交于 2019-12-03 06:59:17

You can find the definition of the comma and period dynamic behavior here: http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

I think the best way to reliably get what you want is to hard code a locale into the expression for this field.

= (new Decimal(11123.55)).ToString("€#,0.00;(€#,0.00)",
        new System.Globalization.CultureInfo("es-ES"))

This will always use the comma as decimal, and period as millions, thousands &c.

There are ways to be more dynamic and always return in the clients local set format, that would usually be preferable.

I know this is an old thread, but in case someone needs it, there is an easiest and most proper way to do it :

  1. Right click on the Textbox of your expression
  2. Select "Number" in the popup "Text Box Properties"
  3. In the "Category", select "Number"
  4. Tick the "Use 1000 separator
  5. Click OK

To "customize" your '1000 separator':

  1. Select the Textbox of your expression
  2. In the Properties on the right, apply the right culture in the "Language" property. E.g. Select "fr-CH" to have 123'456 otherwise the default is 123,456 as English separator.

Try this out. It will format your value to the correct number of decimal places.

=format(1212.89,"€#,#.00")

For indian currency, in the field value use like =Format(Fields!ServiceTaxAmt.Value,"##,##,##,###.00") and change the language value to hi-in for report property.

You can use the format € #,0.00 and set the language of your report to de-DE by clicking outside of the report area and in the right properties pane go to Localization -> Language.

This Works correctly with [set Language as hi-IN and Format as "##,##,##,###.00"]

Appreciate your Efforts

Also Same can be achieved by following Steps

  1. Go to Text Box Properties
  2. Select Number category in Number Tab
  3. Check the check box beside [Use 1000 separator(,)]
  4. Click Ok
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!