Форма. Обработка даты из поля 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

В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Нужна бесплатная консультация?
Планируете делать веб-проект?
Сайт использует Cookie. Правила конфиденциальности OK