|
как убрать время из даты | ☑ | ||
---|---|---|---|---|
0
qazokm
06.02.15
✎
10:49
|
Есть консоль запроса
Вводится параметр 06.02.2015(тип дата) Запрос ВЫБРАТЬ * ИЗ Документ.ХХХ.УУУ ГДЕ ДатаДок =&Дата но поле ДатаДок имеет тип ДатаВремя, поэтому результат запроса пустой В параметрах консоли время подставляется автомат. команда Формат(ДатаДок ,"ДФ=dd.MM.yyyy"), это для вывода... Как убрать время из даты |
|||
1
Любопытная
06.02.15
✎
10:50
|
(0) своди обе даты к началу дня
|
|||
2
patria0muerte
06.02.15
✎
10:51
|
ГДЕ НАЧАЛОПЕРИОДА(ДатаДок) = &Дата
|
|||
3
patria0muerte
06.02.15
✎
10:51
|
*ГДЕ НАЧАЛОПЕРИОДА(ДатаДок, День) = &Дата
|
|||
4
Defender aka LINN
06.02.15
✎
10:51
|
(0) Дата всегда... Нет, не так. Дата _ВСЕГДА_ содержит время
|
|||
5
ktvladimir
06.02.15
✎
10:53
|
(3) не хорошо. Правильнее будет
ГДЕ ДатаДок >= &ДатаН И ДатаДок <= &ДатаК Соотв. в параметрах ДатаН = НачалоДня( ДатаК = КонецДня |
|||
6
qazokm
06.02.15
✎
10:54
|
(5) Спасибо
|
|||
7
patria0muerte
06.02.15
✎
10:56
|
(5) Без разницы... дата (которая как-бы "без времени") всегда имеет вид 06.02.2015 00:00:00 так что лучше приводить все к началу дня и сравнивать, как нам заботливо подсказали еще в (1)
|
|||
8
salvator
06.02.15
✎
10:56
|
(5) Чёйта?
|
|||
9
Жан Пердежон
06.02.15
✎
10:58
|
(7) ответ неправильный, надо делать как в (5)
|
|||
10
ktvladimir
06.02.15
✎
10:59
|
(7) (8) плохо тем что скуль может неоптимально взять индексы, таким образом хоть результат будет и верным, но ресурсов затрачено больше.
|
|||
11
Мыш
06.02.15
✎
11:02
|
(10) МЕЖДУ в запросе лаконичнее. А по ресурсам как?
|
|||
12
ktvladimir
06.02.15
✎
11:04
|
(11) нормально. скуль не может правильно оценить функцию, если между ставить явные даты то разницы нет, можно и меньше
|
|||
13
Жан Пердежон
06.02.15
✎
11:04
|
(8) таким запросом ты как бы говоришь СУБД, что индекс по дате пожно выкинуть нафиг и нужно перебирать ВСЮ таблицу документов
|
|||
14
ktvladimir
06.02.15
✎
11:05
|
(12) сколько ошибок... когда мозг занят другим ))) Можно использовать и МЕЖДУ тут как Вам нравится, главное чтоб были явные даты
|
|||
15
patria0muerte
06.02.15
✎
11:05
|
(13) Вона оно чего... ну ок, буду знать..
|
|||
16
Мыш
06.02.15
✎
11:08
|
(12), (14) спасибо
|
|||
17
qazokm
06.02.15
✎
11:21
|
Выходит синтаксическая ошибка, в консоли запроса я не могу ввести параметр ДатаН = НачалоДня(, а когда подставляю функцию в запрос, то ошибка...
ГДЕ ДатаДок >= НачалоДня(&Дата) |
|||
18
salvator
06.02.15
✎
11:23
|
(17) Пиши в консоли дату вручную.
|
|||
19
qazokm
06.02.15
✎
11:24
|
Да я и 06.02.2015 , в которой консоль подставляет время подставляет
|
|||
20
qazokm
06.02.15
✎
11:24
|
(19) Пишу 06.02.2015
|
|||
21
1Сергей
06.02.15
✎
11:25
|
опять ты путаешь значение данных от их представления
|
|||
22
Любопытная
06.02.15
✎
11:26
|
(17) в запросе пишется НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ), если хочешь получить начало дня.
|
|||
23
Любопытная
06.02.15
✎
11:27
|
(20) у тебя из параметра и так начало дня приходит, т.к. время нулевое)
|
|||
24
ktvladimir
06.02.15
✎
11:29
|
когда писалось НачалоДня имелось в виду
Запрос.УстановитьПараметр("ДатаН", НачалоДня(ТребуемаяДата)) |
|||
25
qazokm
06.02.15
✎
11:30
|
(23) Да время из параметра нулевое, но если ставить знак сравнения >=, то надо как-то ограничить и сверху
|
|||
26
qazokm
06.02.15
✎
11:31
|
У меня пока консоль, и поэтому конструкцией Запрос.УстановитьПараметр, я воспользоваться не могу
|
|||
27
ktvladimir
06.02.15
✎
11:32
|
В моем примере у тебя 2!!! параметра ДатаН - начало
ДатаК - Конец |
|||
28
Любопытная
06.02.15
✎
11:32
|
(25) с какого верху?
ГДЕ ДатаДок >= НачалоПериода(&Дата, День) и ДатаДок<= КонецПериода(&Дата,День) И будет тебе счастье |
|||
29
1Сергей
06.02.15
✎
11:33
|
(28) это только сверху и снизу. А ему ещё сбоку может понадобиться...
|
|||
30
vhl
06.02.15
✎
11:35
|
(25) тебе же сказали "ГДЕ ДатаДок МЕЖДУ &ДатаНач И &ДатаКон"
ДатаНач = 06.02.2015: 00-00-00 ДатаКон = 06.02.2015: 23-59-59 |
|||
31
vhl
06.02.15
✎
11:36
|
(28) Не надо в запросе рассчитывать параметры. Передавайте уже рассчитанные
|
|||
32
qazokm
06.02.15
✎
11:36
|
(30) Да у меня КОНСОЛЬ, поэтому не могу так ввести..., спасибо (28) , попробую по её методу...
|
|||
33
1Сергей
06.02.15
✎
11:37
|
(32) какая-то консоль у тебя неправильная. я всё могу в своей
|
|||
34
Мыш
06.02.15
✎
11:39
|
(33) У него неуправляемая консоль. Секретная. Не всем дают такую в пользование )
|
|||
35
Любопытная
06.02.15
✎
11:39
|
(31) ну пусть так напишет в консоли, если она у него выражения в параметрах не воспринимает. А в коде уже два параметра нарисует.
|
|||
36
qazokm
06.02.15
✎
11:40
|
(33) какая есть.... кинь ссылку чтоб бесплатно да и в любой версии 8.0-8.3...:-)
|
|||
37
salvator
06.02.15
✎
11:40
|
(32) Возможно, состав даты указано только "Дата", а не "Дата+Время".
Может конечно и по-другому. Поставить галочку в колонке "В" и написать Дата("20150206000000") и Дата("20150206235959") |
|||
38
Любопытная
06.02.15
✎
11:40
|
(34) у моей консоли тоже нет возможности вычисляемые выражения в параметры пихать, ну и что?
|
|||
39
qazokm
06.02.15
✎
11:41
|
(35) Все результат получил, спасибо
|
|||
40
Мыш
06.02.15
✎
11:41
|
(38) Ой, всё )))
|
|||
41
Любопытная
06.02.15
✎
11:42
|
(40) Обделался?
|
|||
42
Быдло замкадное
06.02.15
✎
11:44
|
(41) при чем тут параметр. Начало НАЧАЛОПЕРИОДА в тексте запроса пишется. А не в параметре.
|
|||
43
Мыш
06.02.15
✎
11:44
|
(41) У вас какое-то нездоровое любопытство )
|
|||
44
Любопытная
06.02.15
✎
11:45
|
(43) Извините, данная фраза, тем более сказанная мужчиной, вызывает у меня только такие ассоциации.
(42) А разговор был про НачалоДня() в параметре |
|||
45
ktvladimir
06.02.15
✎
11:48
|
вообще конечно забавно почему в консоли нельзя для параметра указать дату со временем ) какая то хитрая консоль видимо, задуманная чтоб пользователь помучался)
(44) у тс возникло стойкое нежеланием пользоваться двумя параметра для даты начала и даты конца. ) |
|||
46
Мыш
06.02.15
✎
11:50
|
(44) Сочувствую )
(45) Да можно всё там. Просто тс чуть притормозил, видимо. Бывает. |
|||
47
qazokm
06.02.15
✎
11:51
|
(45) Указать дату со временем указать в консоли можно, но выбирать надо без учета времени, только дата
|
|||
48
Мыш
06.02.15
✎
11:57
|
(47) Есть такое. Время ручками вбивать. На край можно через табло. В табло ставишь функцию, результат копируешь, в параметр консоли вставляешь. Экономии по времени никакой )
|
|||
49
ktvladimir
06.02.15
✎
12:02
|
(47) в общем тебе было влом вбить циферки 235959 для определения конца даты но не влом было написать кучу буковок чтоб написать как обойтись без этого ))
|
|||
50
qazokm
06.02.15
✎
12:05
|
мне один.сэргей написал, что я не понимаю представление и значения объектов, по правде говоря, вбив кучу буковок, я так и не понял у каких объектов есть значение, а у каких представление
|
|||
51
1Сергей
06.02.15
✎
12:09
|
учи матчасть
|
|||
52
PR
06.02.15
✎
12:12
|
(50) Не взрывай нам мозг. Читай книжки. У всех объектов есть значение и почти у всех представление.
|
|||
53
Vladal
10.02.15
✎
13:59
|
(0) в запросе приводи к началу периода "день", а при выводе форматируй. Как тебе удобно.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |