|
Даты в запросе |
☑ |
0
sintez1234
10.09.14
✎
14:39
|
Что-то я зачастил на форум, хорошо просто тут :)
Надо либо в запросе, либо в СКД вычислить на сколько дней отличаются 2 даты. Предпочел бы в запросе. Т.е. дано 01.09.2013 и 07.09.2013, надо получить сколько дней между ними разница, т.е. число 6.
Обе даты передают параметрами аля &НачДата и &КонДата
ы... как?
Я пробовал так и сяк:
Так:
ВЫРАЗИТЬ(&НачДата - &СравнениеНачДата КАК Число(15, 0)) КАК КолвоДней
Сяк:
&НачДата - &СравнениеНачДата КАК КолвоДней
Так и сяк говорят мне что надо на мисту идти :)
|
|
1
antoneus
10.09.14
✎
14:40
|
РазностьДат
|
|
2
sintez1234
10.09.14
✎
14:40
|
(1) большой СПС, пошел пробовать, доложу :)
|
|
3
busy1
10.09.14
✎
14:40
|
(1) РазностьДат в запросе работает?
|
|
4
Wobland
10.09.14
✎
14:41
|
(3) а есть другие предположения?
|
|
5
Ненавижу 1С
гуру
10.09.14
✎
14:43
|
(3) а где, если не в запросе?
|
|
6
busy1
10.09.14
✎
14:43
|
Работает, просто уточнил. )))))
|
|
7
DrZombi
гуру
10.09.14
✎
14:44
|
РАЗНОСТЬДАТ(ВнутреннийЗапрос.ДатаРаботаНач, ВнутреннийЗапрос.ДатаНачалаРаботы, МИНУТА)
|
|
8
kumena
10.09.14
✎
14:54
|
>> а есть другие предположения?
насколько я понимаю есть еще выражения СКД, которые сходны с языком запросов.
|
|
9
Fragster
гуру
10.09.14
✎
14:56
|
кстати, разностьДат() для всего, кроме секунды показывает отнюдь не разность ПОЛНЫХ минут, часов, дней, месяцев и т.д.
|
|
10
sintez1234
10.09.14
✎
15:17
|
(1) Помогло :) Вопрос снят
|
|
11
sintez1234
10.09.14
✎
15:18
|
(7) да. Так и сделал :)
|
|
12
sintez1234
10.09.14
✎
15:18
|
(8) да. Я тоже думал может туда. Но можно и в запрос. В запрос как-то понятнее что-ли :) удобнее
|
|
13
Wobland
10.09.14
✎
15:20
|
(10) можешь не благодарить
|
|
14
Chameleon1980
10.09.14
✎
17:01
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос=Новый Запрос;
ТекстЗапроса="ВЫБРАТЬ
| &ДатаНачала,
| &ДатаКонца,
| РАЗНОСТЬДАТ(&ДатаНачала, &ДатаКонца, ДЕНЬ) КАК Разность";
Запрос.Текст=ТекстЗапроса;
Запрос.УстановитьПараметр("ДатаНачала",ДатаНачала);
Запрос.УстановитьПараметр("ДатаКонца",ДатаКонца);
Результат=Запрос.Выполнить();
Выборка=Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить("Дата начала: "+Выборка.ДатаНачала);
Сообщить("Дата конца: "+Выборка.ДатаКонца);
Сообщить("Разность: "+Выборка.Разность);
КонецЦикла;
КонецПроцедуры
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой