|
Как определить в запросе вхождения параметра в интервал времени | ☑ | ||
---|---|---|---|---|
0
Max1986
13.06.12
✎
16:25
|
Что то жутко туплю, подскажите плиз как это сделать.
Имеем некую дату: 20.05.12 12:35:16 Есть запрос к справочнику смен, на выходе которого таблица ВЫБРАТЬ Смены.Ссылка, Смены.ВремяНачала, Смены.ВремяОкончания ИЗ Справочник.Смены.ПериодыСмены КАК Смены Типа Смена1 10:00:00 15:00:00 Смена2 15:00:01 22:00:00 Как мне отобрать те сметы, которые удовлетворяют дате, которую я передам в запрос. Грубо говоря - как мне привести передаваемую дату к значению Время, что бы задать интервал в запросе - МЕЖДУ |
|||
1
andrewks
13.06.12
✎
16:27
|
чо, время строкой задано?
|
|||
2
hohol
13.06.12
✎
16:29
|
датавремя = '20.05.12 12:35:16'
|
|||
3
ILM
гуру
13.06.12
✎
16:30
|
(0) Вам нужен номер смены?
В языке запросов 1С есть функции "РазностьДат" и "НачалоПериода", Есть оператор МЕЖДУ. Чуть-чуть начинаем думать и комбинировать функции и оператор. У вас есть ВремяНачала и ВремяОкончания. А так как 1С хранит время как ДатаВремя значит..... (тут думаем) |
|||
4
Buster007
13.06.12
✎
16:30
|
Дата("00010101" + Формат(Период, "ЧЧммсс"));
|
|||
5
Buster007
13.06.12
✎
16:31
|
+(4) ну это если ты устанавливаешь параметр )
|
|||
6
Max1986
13.06.12
✎
16:32
|
(4)нет! надо в запросе преобразовать ко времени!
Т.е. я в запрос передаю дату 21.05.2012 12:10:16 а надо 12:10:16 - только время |
|||
7
hohol
13.06.12
✎
16:34
|
(6) ты гонишь.
|
|||
8
hohol
13.06.12
✎
16:35
|
нет даты, нет времени. Есть датавремя '201206131633' - сегодня, сейчас
|
|||
9
andrewks
13.06.12
✎
16:36
|
в языке запросов есть замечательные функции Час, Минута, Секунда
|
|||
10
Maxus43
13.06.12
✎
16:36
|
(9) секунды нет же
|
|||
11
andrewks
13.06.12
✎
16:37
|
(10) есть
|
|||
12
Maxus43
13.06.12
✎
16:37
|
(11) а, в НачалоПериода нет секунды, минимум минута
|
|||
13
andrewks
13.06.12
✎
16:39
|
или ДобавитьКДате
|
|||
14
ILM
гуру
13.06.12
✎
16:47
|
Если от ТекущегоДатыВремени отнять НачалоПериода (ТекущийПериод, День), то получится время. А его уже можно сравнить с другим временем. Или добавьте ко времени текущую дату, получите время смены в текущий день.
|
|||
15
Max1986
13.06.12
✎
16:51
|
спасибо всем. забил я - привел входной параметр ко времени вида 01.01.0001 8:25:16 - и дальше пошло
|
|||
16
ILM
гуру
13.06.12
✎
16:52
|
Отнял значит )))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |