根据文化自定义字符串格式(报告服务)

时间:2012-02-28 15:24:41

标签: .net reporting-services

我正在处理与某些报告中的format属性的硬代码值相关的问题。 不,我正在尝试根据客户的文化代码创建自定义格式。 我的代码的问题是我的新格式(对于es-CL和en-US文化)不起作用,如果对于en-US thousan分隔符是,那么它应该是正确的掩码。对于es-Cl? 谢谢

Public Shared Function GetTextMortNumberFormat(culture) As String
Select Case culture 
    Case "nb-NO"
        Return "# ### ###;-# ### ###;''"
    Case "es-CL"
        Return "#.###.###;-#.###.###;''"
    Case "en-US"
        Return "#,###,###;-#,###,###;''"
    Case Else           
        Return "# ### ###;-# ### ###;''"
End Select      
End Function

2 个答案:

答案 0 :(得分:0)

您应该只使用用户的国际化设置。对于报告本身的语言属性,请使用:

=User!Language

现在,您可以使用以下格式,这些格式将使用用户的区域语言设置来适当地格式化数字:

  • N2 =带小数点后2位的数字
  • N0 =没有小数位的数字
  • P0 =没有小数位的百分比
  • d =短日期格式

您可以看到其他format strings here

答案 1 :(得分:0)

逗号将始终尝试在区域设置的千位分隔符中替换,并且句点将锚定到小数位置并替换区域设置的小数分隔符。 http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

您只需使用一点.net:format number in ssrs report

即可在区域设置中进行硬编码