Форматирование дат с помощью сервера отчетов SQL
Я пытаюсь отформатировать текущую дату в соответствии с общим форматом «2012-09-04 10:20:12 AM», но почему-то часть «AM» всегда отсутствует.
Я использую выражение "..." & Format(CDate(Now), "yyyy-MM-dd hh:mm:ss tt")
чтобы отформатировать дату и добавить ее в некоторый текст. Это испускает предупреждение, воспроизводимое ниже, но правильно печатает дату (за исключением указателя AM / PM).
[rsRuntimeErrorInExpression] Выражение Value для textrun 'EmissionDate.Paragraphs [0] .TextRuns [0]' содержит ошибку: строка ввода был не в правильном формате.
Что я здесь делаю неправильно?
- Получение часа с даты?
- Как сопоставить java.util.Date с sys.datetime
- SQL Проверять ограничение значения datetime при создании таблицы
- Не группировка по дате?
- «Строка не была признана действительной DateTime» только на сервере, но она отлично работает в моей локальной системе
Примечание. Я знаю об этих решениях с поддержкой SO и SQL Server, но я хотел бы как можно больше использовать встроенные функции.
- Проблема с простым запросом выбора для поиска дат в SQL Server
- Вставить DateTime с миллисекундами в SQL Server
- Копирование данных с разными датами в SQL Server
- Имя datetime не разрешено SQL Server
- Получить значение даты и времени из таблицы SQL Server с помощью C # Sql Reader
- Укажите количество раз в течение диапазона дат
- Как преобразовать строку в DateTime в java
- Weird ошибка при вставке DateTime в SQL Server 2008
Я нашел эту статью и, возможно, она может решить вашу проблему. Я знаю, что вы уже используете Format(CDate)
но поскольку вы используете (Now)
, ведьма – это переменная datetime, возможно, вы должны использовать FormatDateTime()
вместо Format()
.
Попробуйте это: Вместо: Format(CDate(Now), "yyyy-MM-dd hh:mm:ss tt")
Использование: Format(CDate(Now), "yyyy-MM-dd hh:mm:ss am/pm")
Ссылка: работа с датами в службах Reporting Services
В соответствии с моим предыдущим комментарием свойство Language
отчета ссылалось на культуру, для которой не было определено обозначение AM / PM. Изменение его в en-US
показало обозначение AM / PM, как ожидалось.