Проблемы с поддержанием формата даты при экспорте из ssrs в Excel - PullRequest
0 голосов
/ 01 мая 2019

Я использую SSRS для извлечения данных из Oracle - это включает поле даты и времени, называемое «создан» - когда я генерирую файл Excel из ssrs, я хочу, чтобы поле даты отображалось в Excel как пользовательское dd-mmm-yy - однако оно в настоящее время отображается как general (в Excel щелкните правой кнопкой мыши поле, свойства поля)

Я уже пробовал в построителе отчетов:

Изменение формата номера на 'N'

=CInt(Fields!FieldValue.Value)

Изменение формата номера на dd-MMM-yy

В конструкторе отчетов SSRS я создал поле «создал» в своем запросе SQL следующим образом:

upper r(to_char(UNI72LIVE.PR_BLPU.CREATED_D,'dd-mon-yy')) as Created

Это правильно отображается в построителе отчетов, но проблема возникает при просмотре поля в Excel

Ответы [ 2 ]

0 голосов
/ 02 мая 2019

Вам необходимо применить формат даты в выражении текстового поля,

=Format(CDate(Fields!FieldValue.Value), "dd-MM-yyyy")

И вам нужно перейти к этим свойствам текстового поля: Свойства текстового поля> Число> Дата и выбрать в качестве формата Дата .

И, конечно, ваш язык должен быть установлен в значение. Таким образом, он должен работать при экспорте в Excel.

0 голосов
/ 02 мая 2019

Если вы преобразуете поле даты в символьную строку, используя to_char, тогда Excel будет иметь текст в этой ячейке, а не дату, и не сможет рассматривать его как дату для сортировки и вычислений.Просто укажите поле даты как простое поле в вашем операторе SQL, чтобы оно оставалось датой.

В вашей ячейке установите для свойства Value только значение поля (без форматирования):

=Fields!CREATED_D.Value

Установите для свойства Format значение dd-MMM-yy, и дата будетотображается в формате, который вы хотите.

Теперь поле даты будет экспортировано в Excel в качестве фактического значения даты (а не текста), и формат даты будет установлен правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...