我在德国有一个使用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 参数)
答案 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