Reporting services 如何在SSRS报告中使用阿拉伯数字显示日期
我需要在SSRS开发的报告中用阿拉伯语显示数字。通过将Language属性设置为“ar SA”并将numericanvariant设置为3,我能够以阿拉伯语显示23000.00等数字。但是,这不适用于以dd/MM/yyyy格式显示日期的文本框Reporting services 如何在SSRS报告中使用阿拉伯数字显示日期,reporting-services,ssrs-2012,Reporting Services,Ssrs 2012,我需要在SSRS开发的报告中用阿拉伯语显示数字。通过将Language属性设置为“ar SA”并将numericanvariant设置为3,我能够以阿拉伯语显示23000.00等数字。但是,这不适用于以dd/MM/yyyy格式显示日期的文本框 谢谢你的帮助 似乎没有内置的方法来执行此操作,因此您必须在数据集查询中手动执行此操作。我建议同时返回日期类型和您的阿拉伯语日期作为nvarchar,以保留过滤功能和简化日期逻辑。如果您不想在所有日期都使用以下选项,您可以将替换逻辑包装成一个函数: decl
谢谢你的帮助 似乎没有内置的方法来执行此操作,因此您必须在数据集查询中手动执行此操作。我建议同时返回
日期
类型和您的阿拉伯语日期作为nvarchar
,以保留过滤功能和简化日期逻辑。如果您不想在所有日期都使用以下选项,您可以将替换逻辑包装成一个函数:
declare @d date = '20171231';
select @d as DateValue
,convert(nvarchar(10), @d,103) as StringValue
,replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(
convert(nvarchar(10), @d,103)
,'0',N'٠')
,'1',N'١')
,'2',N'٢')
,'3',N'٣')
,'4',N'٤')
,'5',N'٥')
,'6',N'٦')
,'7',N'٧')
,'8',N'٨')
,'9',N'٩') as ArabicValue
输出:
+------------+-------------+-------------+
| DateValue | StringValue | ArabicValue |
+------------+-------------+-------------+
| 2017-12-31 | 31/12/2017 | ٣١/١٢/٢٠١٧ |
+------------+-------------+-------------+
在SSRS报告中创建以下函数。 并使用下面的表达式在报告中使用
对于不熟悉阿拉伯语日期格式的用户,您期望的输出/格式是什么?我需要将2017年12月31日显示为٣١/٢٠/٠١٧
Public Function ToArabicNumber(input As String) As String
Dim output As String
output = input.Replace("1","١")
output = output.Replace("2","٢")
output = output.Replace("3","٣")
output = output.Replace("4","٤")
output = output.Replace("5","٥")
output = output.Replace("6","٦")
output = output.Replace("7","٧")
output = output.Replace("8","٨")
output = output.Replace("9","٩")
output = output.Replace("0","٠")
Return output
End Function
=Code.ToArabicNumber(Format(DateTime.Today,"dd/MM/yyyy"))