|
Некорректно отрабатывает РАЗНОСТЬДАТ с пустой датой
| ☑ |
0
Пол Ньюман
21.10.13
✎
14:56
|
В запросе поле считается как РАЗНОСТЬДАТ(Дата1, Дата2, ДЕНЬ)
Когда обе даты заполнены рассчитывается корректно, когда же Дата1 пустая, а дата2 заполнена(например 15.08.2014) то вместо положенных 735460 дней запрос выдает 95555.
При этом если в поле написать прямо РАЗНОСТЬДАТ(ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0), ДАТАВРЕМЯ(2014, 8, 15, 0, 0, 0), ДЕНЬ) то разница выдается верная.
Сталкивался ли кто с подобным?
|
|
1
Armando
21.10.13
✎
15:00
|
>> когда же Дата1 пустая
какое конкретно значение в этом поле?
|
|
2
Нуф-Нуф
21.10.13
✎
15:00
|
что в Дата1?
|
|
3
Пол Ньюман
21.10.13
✎
15:01
|
(1)(2) Проверял. Значение поля равно ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
|
|
4
Нуф-Нуф
21.10.13
✎
15:02
|
(3) как так проверял?
|
|
5
Пол Ньюман
21.10.13
✎
15:03
|
(4) Выбор когда Дата1 = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) Тогда Истина ИНАЧЕ ЛОЖЬ КОНЕЦ КАК ПроверкаНулеваяЛи
|
|
6
Пол Ньюман
21.10.13
✎
15:05
|
Предлагаю вам взять любую таблицу с полем типа дата, например любую таблицу документов за одну дату и проверить что выдает поле РАЗНОСТЬДАТ(ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0), Таблица.Дата, ДЕНЬ), и тут же добавить такое же поле где заменить Таблица.Дата на фактическую дату выраженную через ДАТАВРЕМЯ, и сообщить результаты. Если у вас подобного глюка не будет буду очень удивлен.
|
|
7
Пол Ньюман
21.10.13
✎
17:53
|
?
|
|
8
Maxus43
21.10.13
✎
17:57
|
от сдвига дат думаешь не зависит?
Зачем тебе количество дней с начала отсчета вобще?
ЕСли больно надо в запросе то и пиши,
Выбор Когда Дата1 = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) Тогда
РАЗНОСТЬДАТ(ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0), Дата2, ДЕНЬ)
Иначе
РАЗНОСТЬДАТ(Дата1, Дата2, ДЕНЬ)
Конец
|
|
9
Пол Ньюман
21.10.13
✎
18:09
|
(8) Что мне писать в запросе я догадаюсь сам, меня интересует почему так работает система. Это глюк, баг или я что-то не то делаю.
|
|
10
Serginio1
21.10.13
✎
18:35
|
|
|
11
Serginio1
21.10.13
✎
18:36
|
|
|
12
Пол Ньюман
22.10.13
✎
14:33
|
(10) Большое спасибо. Понял.
|
|