Имя: Пароль:
1C
 
Ошибка при использовании функции РАЗНОСТЬДАТ в запросе.
0 Nyarlathotep
 
19.07.18
17:00
Всем привет!

Делаю вот так в условиях запроса:

ВЫБОР
            КОГДА Остатки.Серия.ГоденДо <> ДАТАВРЕМЯ(1, 1, 1)
                ТОГДА РАЗНОСТЬДАТ(&ДатаОтчета, Остатки.Серия.ГоденДо, СЕКУНДА) <= 2764800
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

При выполнении запроса пишет мне такую ошибку:

"Функция datediff вызвала переполнение. Слишком большое количество частей даты, разделяющих 2 экземпляра даты-времени."

Почему так? Что с этим делать?
1 olegves
 
19.07.18
17:02
(0) выведи в запрос Остатки.Серия.ГоденДо и ТипЗначения(Остатки.Серия.ГоденДо) и посмотри, что там
2 Said_We
 
19.07.18
17:08
(0) Разность дат в секундах между текущей датой и пустой датой приведет к переполнению и ошибке SQL.
3 Ненавижу 1С
 
гуру
19.07.18
17:08
вам принципиально считать это в секундах?
нельзя в днях/месяцах?
4 Said_We
 
19.07.18
17:09
(0) Собственно в ошибке об этом и написано. Слишком большая разница между датами.
5 Said_We
 
19.07.18
17:13
В консоле запросов набери:
Выбрать РазностьДат(ДатаВремя(2018,07,19), ДатаВремя(1,1,1), Секунда) как поле1

будет такая же ошибка.

А вот так уже не будет
Выбрать РазностьДат(ДатаВремя(2018,07,19), ДатаВремя(1,1,1), МИНУТА) как поле1
6 SeriyP
 
19.07.18
17:15
(0) в продолжение закрытой темы? Берите РазностьДат например от 2010,1,1 в днях - и дальше сравнивайте.