Форма. Обработка даты из поля datetime-local

Для преобразования используем 2 функции: 

select FORMAT(getdate(), 'yyyy-MM-ddTHH:mm:ss')   -- из даты в строку (в GetItem)

select try_cast('2022-02-16T10:16:00' as datetime )  -- обратно из строки в дату (в SaveItems)

Примечание: в некоторых случаях элемент ввода отрезает секунды от даты и обычный try_cast дает null. В этом случае дописываем секунды к дате ":00" следующим образом в SaveItem:

select @pfromDate = try_cast(iif(len(value2)< 17, Value2+':00', Value2)  as datetime) from @parameters where [key]='fromDate'
	

Примечание 2: Иногда могут быть проблемы с локальными установками браузера (и ОС), когда дата приходит в разных форматах. Для этого можем использовать следующий код: 

declare @dtt nvarchar=(select value from @parameters where [key]='dt'), @dt date
set @dt=try_convert(date,@dtt,126)
if isnull(year(@dt),1900)<1901 set @dt=try_convert(date,@dtt,104)
if isnull(year(@dt),1900)<1901 set @dt=null
if @dt is null begin
    	select 0 Result, 'Неправильная дата' Msg
        return
end

Дополнительно: https://stackoverflow.com/questions/7372038/is-there-any-way-to-change-input-type-date-format

Falcon Space - функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Насколько полезной была статья?

Google поиск по нашей документации

Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки и узкого стека разработки. Про снижение стоимости владения продуктом

Это быстрое внесение изменений

по ходу эксплуатации программы. Как создается функционал на платформе

Это простой удобный интерфейс

адаптация под мобильные устройства. Про юзабилити платформы

Нужна бесплатная консультация?
Получить оценку проекта
Создайте концепцию проекта на основе нашего шаблона и получите оценку проекта в виде КП.
Демо-сайт решений
Базисные решения, которые можно гибко адаптировать под себя: менять внешний вид, бизнес-логику и даже структуру базы данных.
Сайт использует Cookie. Правила конфиденциальности OK