#sql-server #date #reporting-services
#sql-сервер #Дата #службы отчетов
Вопрос:
Хорошо, я немного сбит с толку, у меня есть выражение, которое преобразует дату в формат Великобритании, и, если убрать 3 года, выражение будет:
=cdate(формат(DateAdd(DateInterval.Год, -3, сейчас), «дд / ММ /гггг»))
Это работает успешно при предварительном просмотре отчета SSRS в VS2015, однако, когда я запускаю его на сервере развертывания, я получаю это сообщение:
Выражение defaultValue для параметра отчета ‘StartDate’ содержит ошибку: преобразование из строки «20/10/2013» в тип ‘Дата’ недопустимо. (rsRuntimeErrorInExpression)
Что не так с выражением, вызывающим эту ошибку? и, конечно же, та же ошибка должна появиться в предварительном просмотре, чтобы?
Спасибо
Комментарии:
1. Что-то может быть с CultureInfo. Инвариантная культура. Я не уверен, как это реализовать в SSRS.
Ответ №1:
Это может быть связано с различиями в регионализации между вашей средой разработки и вашим сервером. Один из них будет dd/MM/yyyy
, а другой MM/dd/yyyy
. По возможности передавайте date
типы или однозначные строковые форматы, такие как yyyy/MM/dd
.