Как мне отформатировать дату и время в отчете ssrs?

133

на отчете SSRS мне нужно показать todays date and current time

Я попробовал это, =FormatDateTime(Now,"MM/dd/yyyy hh:mm tt")но это не работает для меня, давая ошибку.

Кто-нибудь, пожалуйста, помогите мне expression?

Я хочу, чтобы вывод отображался как 4/12/2013 12:05 PM

Нео
источник

Ответы:

238
=Format(Now(), "MM/dd/yyyy hh:mm tt")

Вывод:

04/12/2013 05:09 PM
Ян Престон
источник
8
Format()В этой статье описаны возможные строки: строки формата даты и времени ; Я подумал, что упомяну это, потому что это было то, что я искал, когда приехал сюда!
Мэтт Гибсон
18

Если дата и время находятся в отдельной ячейке (также известной как текстовое поле), вам следует рассмотреть возможность применения формата ко всему текстовому полю. Это создаст более чистый экспорт в другие форматы; в частности, значение будет экспортировано как значение даты и времени в Excel вместо строки.

Используйте панель свойств или диалоговое окно, чтобы установить формат для текстового поля «MM / dd / гггг чч: мм тт»

Я бы использовал ответ Яна, только если дата и время объединяются с другой строкой.

Джейми Ф
источник
4
Небольшое дополнение для людей, которые могут найти этот ответ: Вы устанавливаете формат на ="MM/dd/yyyy hh:mm tt". Если вы забудете =, каждая ячейка будет просто иметь "MM/dd/yyyy hh:mm tt"текст.
user1261104
5

Я использую следующие в SSRS 2005

=Format(Globals!ExecutionTime,"MM-dd-yyyy" & " ") 
& CStr(Hour(Globals!ExecutionTime))  & ":"
& CStr(Minute(Globals!ExecutionTime))

Или

=Format(Globals!ExecutionTime,"MM-dd-yyyy" & " ") 
& Right("00" & CStr(Hour(Globals!ExecutionTime)), 2)
& ":"
& Right("00" & CStr(Minute(Globals!ExecutionTime)), 2)

На основании комментария:

=Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy hh:mm.ss") 

ИЛИ

=Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy HH:mm.ss")
LCJ
источник
4
И то, и другое может выглядеть проще: =Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy hh:mm.ss") или =Format(CDate(Globals!ExecutionTime), "MM-dd-yyyy HH:mm.ss")
отчаявшийся мужчина
4

Надеюсь это поможет:

SELECT convert(varchar, getdate(), 100) -- mon dd yyyy hh:mmAM

SELECT convert(varchar, getdate(), 101) -- mm/dd/yyyy – 10/02/2008                  

SELECT convert(varchar, getdate(), 102) -- yyyy.mm.dd – 2008.10.02           

SELECT convert(varchar, getdate(), 103) -- dd/mm/yyyy

SELECT convert(varchar, getdate(), 104) -- dd.mm.yyyy

SELECT convert(varchar, getdate(), 105) -- dd-mm-yyyy

SELECT convert(varchar, getdate(), 106) -- dd mon yyyy

SELECT convert(varchar, getdate(), 107) -- mon dd, yyyy

SELECT convert(varchar, getdate(), 108) -- hh:mm:ss

SELECT convert(varchar, getdate(), 109) -- mon dd yyyy hh:mm:ss:mmmAM (or PM)

SELECT convert(varchar, getdate(), 110) -- mm-dd-yyyy

SELECT convert(varchar, getdate(), 111) -- yyyy/mm/dd

SELECT convert(varchar, getdate(), 112) -- yyyymmdd

SELECT convert(varchar, getdate(), 113) -- dd mon yyyy hh:mm:ss:mmm

SELECT convert(varchar, getdate(), 114) -- hh:mm:ss:mmm(24h)

SELECT convert(varchar, getdate(), 120) -- yyyy-mm-dd hh:mm:ss(24h)

SELECT convert(varchar, getdate(), 121) -- yyyy-mm-dd hh:mm:ss.mmm

SELECT convert(varchar, getdate(), 126) -- yyyy-mm-ddThh:mm:ss.mmm
Шубхам Бхангале
источник
4

В SSRS 2016 есть опция под заголовком свойств «Локализация», называемая « Calendar», если вы щелкнете по ней, она даст вам следующие 2 опции:

  • Григорианский (дд / мм / гггг)
  • Грегорианский английский (ММ / ДД / ГГГГ)

Это прекрасно работает при обращении к данным из таблиц, а также

в качестве альтернативы, если это не работает для вас, укажите один из этих форматов в поле «Число» и в ячейке « Format»:

dd/MM/yyyy или MM/dd/yyyy

Снимок экрана

Crezzer7
источник
1

Если вы щелкнете по пустому месту в отчете вне какой-либо таблицы и затем посмотрите в свойствах, одно из полей «Разное» называется «Язык», которое позволяет вам выбрать язык, который вы хотите установить, который после этого можно поиграть с этим

=FormatDateTime(now,x)

Который xможет быть 1, 2, 3, 4, 5

Тарик Халаф
источник
1

Если вы хотите разделить дату и время, используйте следующие выражения: Выражение даты и времени

Выражение1 для текущей даты: = FormatDateTime (сегодня) его возвращаемая дата = 15.11.2016

Выражение2 для текущего времени: = CDate (сейчас) .ToString ("чч: мм тт") его время возврата = 3:44 вечера

Этот отчет напечатан на Expression1 на Expression2

Вывод будет: Вывод обоих выражений

Этот отчет напечатан 15.11.2016 в 15:44

Лаксман Гайт
источник
1
=Replace(Format(CDate(Now()),"MM.dd.yyyy"), ".", "/")
Ronney
источник
1

Ниже описано, как это сделать с помощью Visual Studio 2017 для RDL, предназначенного для SSRS 2017:

Щелкните правой кнопкой мыши поле в текстовом поле на поверхности конструктора и выберите « Свойства заполнителя» . Выберите панель « Число» и нажмите « Дата» в списке « Категория» , затем выберите нужное форматирование в списке « Тип» .

Дель Ли
источник
1

Сначала перейдите на панель управления, выберите Дата, время и Числовой формат. Теперь выберите английский (Великобритания) из выпадающего списка.

Убедитесь, что поле короткой даты равно «дд / мм / гггг». Нажмите Применить. Теперь перейдите к SSRS и щелкните правой кнопкой мыши отчет в пустом пространстве и выберите свойства.

Если вы используете visual studio, установите свойство Language равным = User! Language.

Если вы используете построитель отчетов, свойство Language появится в разделе Localization.

Гул Саид Хаттак
источник
-1

Я использую это

= Формат (сейчас (), "дд / мм / гггг чч: мм тт")

Милтон Альварадо
источник
7
По сути, это дубликат давно принятого ответа . Вместо повторной публикации с достаточной репутацией, вы можете поставить второй ответ, чтобы указать на его полезность.
OhBeWise
-5

привет друг, пожалуйста, попробуйте это выражение вашего доклада

="Page " + Globals!PageNumber.ToString() + " of " + Globals!OverallTotalPages.ToString() + vbcrlf + "Generated: " + Globals!ExecutionTime.ToString()
venkataramana
источник