SSRS日期参数-外语问题

时间:2018-10-16 15:42:33

标签: date reporting-services parameter-passing ssas

我在德国有一个使用SSRS报告的客户,并且date参数显示“ OKT”,相反,我们需要在10月将其设置为“ OCT”

是否有设置可以确保GETDATE()已经转换,或者转换功能可以工作?

这是我的错误:

  

library!ReportServer_0-45!1554!10/15 / 2018-10:23:17 :: i INFO:   RenderForNewSession('/ Finance / MC Dashboard')   处理!ReportServer_0-45!10bc!10/15 / 2018-10:23:17 :: e错误:   投掷   Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:   ,   Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:   数据集“ JournalEntries”的查询执行失败。 ->   Microsoft.AnalysisServices.AdomdClient.AdomdErrorResponseException:   查询(5,39)无法将文本类型的值'Okt 14,2018'转换为文本   日期。在   Microsoft.AnalysisServices.AdomdClient.AdomdConnection.XmlaClientProvider.Microsoft.AnalysisServices.AdomdClient.IExecuteProvider.ExecuteTabular(CommandBehavior   行为,ICommandContentProvider contentProvider,   AdomdPropertyCollection命令属性,IDataParameterCollection   参数)

2 个答案:

答案 0 :(得分:0)

由于GetDate是从服务器以德语传递的,因此SQL CONVERT函数还应该使用德语将其转换为日期。

CONVERT(DATETIME, GETDATE(), 106)

如果确实出现错误,则可能需要先设置语言(SET Language德语;)-尽管这很奇怪,一个SQL函数可以用德语工作,而另一个SQL函数不能。

答案 1 :(得分:0)

只需先在文本框中捕获数据,然后检查其格式即可。根据外观,您可能更糟的情况是将此接收输入参数转换为内部varchar,然后仅取出日期部分。即

declare @internal_param as varchar(15);
set @internal_param = @Input_dateParam --your variable name here
--select logic here