powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Разница дней
9 сообщений из 9, страница 1 из 1
Разница дней
    #39970214
Tishh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,

Хочу посчитать разницу дней, но дома работает в запросе, а на работе дает ошибку Error . От чего может зависеть?

Код: sql
1.
TTT: IIf(IsNull([gacera]),"",DateDiff("d",Format([date_in],'dd\.mm\.yyyy'),Format([date_out],'dd\.mm\.yyyy')))
...
Рейтинг: 0 / 0
Разница дней
    #39970245
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tishh,
если поля типа дата/время в конструкторе:
Код: vbnet
1.
TTT:  IIf(IsNull([gacera]);"";DateDiff("d";[date_in];[date_out]))

фсе...
...
Рейтинг: 0 / 0
Разница дней
    #39970256
Tishh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku
Tishh,
если поля типа дата/время в конструкторе:
Код: vbnet
1.
TTT:  IIf(IsNull([gacera]);"";DateDiff("d";[date_in];[date_out]))

фсе...


Заработал, огромное спасибо, вот только не ясно, почему с одними и теми же данными пришлось меня формулу.
...
Рейтинг: 0 / 0
Разница дней
    #39970350
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tishh

Код: sql
1.
TTT: IIf(IsNull([gacera]),"",DateDiff("d",Format([date_in],'dd\.mm\.yyyy'),Format([date_out],'dd\.mm\.yyyy')))

Я понял так:это выражение определяет вычисляемое поле в конструкторе запросов где разделитель ";"точка с запятой,а ","запятая применяется в VBA+читайте HELP про формат даты в VBA -должно быть:FORMAT(ctl,"mm\/dd\/yy").
Не используйте синтаксис VBA при написании выражений в конструкторе запрсов
...
Рейтинг: 0 / 0
Разница дней
    #39970356
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще не понимаю как это выражение введено-ни конструктор ни редактор VBA "проглотить" его не должны
...
Рейтинг: 0 / 0
Разница дней
    #39970750
Tishh
вот только не ясно, почему с одними и теми же данными пришлось меня формулу.
DateDiff принимает два значения типа Дата/Время, но допускает и другие типы, которые можно преобразовать в Дата/Время. Например, число или текстовое представление даты, соответствующее системным настройкам. У вас функция Format преобразует дату в текст, который, видимо, на одном из компов не соответствует настройкам.
Выводы:
1. Применение Format не оправдано и вредит;
2. Применение DateDiff для вычисления дней - архитектурное излишество. Достаточно от одной даты отнять другую. Ваше выражение смело можно сократить до такого:
TTT: [date_out] - [date_in]
...
Рейтинг: 0 / 0
Разница дней
    #39971138
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кривцов Анатолий
2. Применение DateDiff для вычисления дней - архитектурное излишество . Достаточно от одной даты отнять другую. Ваше выражение смело можно сократить до такого:
TTT: [date_out] - [date_in]

Уважаемый Анатолий!
Никогда не понимал необходимость использования этой функции((((
Вы нашли наиточнейшее ее определение!!!
...
Рейтинг: 0 / 0
Разница дней
    #39971144
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИВП,
для определения интервала в днях она не является необходимой-а вот для определения интервала в годах,месяцах и т.д (см.значения аргумента interval-дни это частный случай очень универсальной функции и её использование в данном случае личное дело каждого-оба варианта дадут одинаковый результат-разве что придется нажать несколько "лишних" клавиш)
...
Рейтинг: 0 / 0
Разница дней
    #39971169
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku,
Согласен, но тут вроде речь именно о разнице в днях.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Разница дней
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]